simonparzer ([info]simonparzer) wrote in [info]doukutsu,
@ 2007-10-03 20:59:00
Previous Entry  Add to memories!  Tell a Friend  Next Entry
Current mood: sleepy

Linux Doukutsu 1.01

Welcome to a new version of Linux Doukutsu. In this 1.01 build a few things have been improved. It should be more compatible with different distros, and it should have better fullscreen support.

I also added a guide to the Config.dat file format (doc/configfileformat.txt), so if anyone is willing to write a native config tool, would be an easy task now.

Tell me if it works for you.

Download: Doukutsu Linux Build v1.01




(22 comments) - (Post a new comment)


[info]opus_
2007-10-04 04:51 am UTC (link)
Thank you so much! \^o^/

(Reply to this)


[info]gjj
2007-10-04 05:05 am UTC (link)
It still segfaults here when running in anything else than 320x240 windowed =(. Same backtrace as before, somewhere within SDL_SoftStretch.

(Reply to this) (Thread)


[info]gjj
2007-10-04 06:15 am UTC (link)
I made a wrapper for SDL_SoftStretch to give some more information .. The crash happens when using SDL_SoftStretch to blit a 64x8 8-bit surface to a 128x16 8-bit surface. The source surface has a palette with two colours, #000000 and #00e2ff. The destination surface has a different palette with 256 colours, but all of those are black (unset?). The crash still happens if I fix the palette of the destination or use SDL_DisplayFormat on both surfaces though (though of course I had to do this conversion inline in the wrapper, which might screw things up anyway..). If I do a call to SDL_BlitSurface (SDL_UpperBlit) in the SDL_SoftStretch wrapper in stead, the game works, but with blank boxes in place of all the gfx (except some text which worked for some reason). Don't know if this is helpful or not, hope it is though.

Anyway, SDL_SoftStretch seems pretty unstable. Perhaps it'd be better to just write your own scaler?

(Reply to this) (Parent)(Thread)


[info]gjj
2007-10-04 06:21 am UTC (link)
Erm, setting the palette of the dest surface to be equal to the src surface AND replacing the call to SDL_SoftStretch with SDL_UpperBlit made gfx appear, so the inline conversion I did of that seems to have worked. Obviously completely wrong gfx alignment though since the results aren't stretched when just using blit.

(Reply to this) (Parent)(Thread)


[info]tadashi_ooshima
2007-10-04 02:36 pm UTC (link)
Well, I don't know C/C++ well enough, but couldn't you render the whole thing in 320x240 and simply scale the whole surface?
It did work well for me when I did try to make an engine with Ruby and ruby-sdl. The failed collision detection put the thing on ice, though.

(Reply to this) (Parent)(Thread)


[info]simonparzer
2007-10-04 04:30 pm UTC (link)
320x240 -> 640x480 every frame is not a good idea performance-wise.
The current solution scales the bitmaps while loading them and keeps the scaled stuff in memory. Therefore, it is faster and should be just as compatible.

(Reply to this) (Parent)(Thread)

Segfault fix!
[info]gjj
2007-10-04 11:01 pm UTC (link)
I've fixed the crash! The problem was in SDL itself. It generates some assembly code to do the stretching, but the generated code wasn't marked to be executable, so when the code was called, it segfaulted (apparently just on some machines, but the potential is there for all).

I've posted a patch to the SDL list. In the mean time, here's a fixed library I compiled for you: http://delirare.com/temp/doukutsu-fix/libSDL-1.2.so.0 (md5sum e233330fb2f068b935312131b66fae3a).

Replacing doukutsu's libSDL-1.2.so.0 with that version, both 640x480 windowed and the fullscreen modes work fine! =D

(Reply to this) (Parent)(Thread)

Re: Segfault fix!
[info]tadashi_ooshima
2007-10-06 08:50 am UTC (link)
Yay! Thanks, it works here as well :)

(Reply to this) (Parent)


[info]ceceil_felias
2007-10-04 06:21 am UTC (link)
Now that my server box's Linux distro is accessible again, I should go ahead and play with it and see how it runs.

(Reply to this)


[info]jleedev
2007-10-04 04:39 pm UTC (link)
Are the gamepad buttons documented correctly? You've listed them as:

1: Jump
2: Attack
3: Weapon +
4: Weapon -
5: Item
6: Map

But DoConfig.exe, according to my tests, is writing them as:

1: Jump
2: Attack
3: Weapon +
6: Weapon -
4: Item
5: Map

(Reply to this) (Thread)


[info]simonparzer
2007-10-04 06:40 pm UTC (link)
You're right, my fault. Stupid typo..

(Reply to this) (Parent)


[info]visudo
2007-10-04 05:22 pm UTC (link)
[info]simonparzer, you are my holy totem. I had no idea that anyone was porting CS to Linux, but I've been wishing for it for years, to the point that I almost started doing it myself. This is so completely cool that I don't really know what to say. You can't tell, but there is a single manly tear of wish-fulfillment ecstasy rolling down my cheek right now. Do you accept donations?

The only problem I've noticed is some lag/slowdown at what seem like spontaneous intervals. The game will completely freeze and the music will lag, then everything will jump back into place and the music will fast-forward to the right place again. CS ran fine when I had Windows on this laptop, so I'm not sure what the problem could be.

(Reply to this) (Thread)


[info]simonparzer
2007-10-04 06:44 pm UTC (link)
No problem. Also don't forget aaiiee who did a great deal of the porting work.

About the freezing problem: can't reproduce it on my machine. Maybe it's a problem with your distro. Do you experience something like that with other Linux games, too? Is the problem completely random or does it happen at certain parts of the game?

(Reply to this) (Parent)(Thread)


[info]visudo
2007-10-04 07:32 pm UTC (link)
I don't play a lot of games on Linux, but I've tried Neverball and SuperTux (didn't like 'em) and they didn't have this problem. I'm on Kubuntu 7.04 Feisty, by the way. I've only tested CS on my machine in fullscreen mode; I'll see if I get the same effect in other modes. For now, though, it just seems completely spontaneous--I can't connect it to any particular in game event. It's not because of processor strain--it happens even in empty Save Rooms where there's no music and just a couple of tiles. I doubt it's a hardware issue--I have a 1.6GHz, 768MB RAM AMD processor.

(Reply to this) (Parent)(Thread)


[info]tadashi_ooshima
2007-10-06 08:51 am UTC (link)
Sure there's nothing running in the background?
You could try to run it with a higher priority.

(Reply to this) (Parent)

PowerPC build
[info]nicepics13
2007-12-10 11:41 pm UTC (link)
Could you also do a linux ppc build for us non-x86 users? I know there's a mac ppc port available, but haven't had any luck with mol or sheepshaver =(

(Reply to this) (Thread)

Re: PowerPC build
[info]simonparzer
2007-12-11 12:17 pm UTC (link)
That would be a no, because I have no Mac. Maybe aaiiee can help you?

(Reply to this) (Parent)(Thread)

Re: PowerPC build
[info]nicepics13
2007-12-11 02:20 pm UTC (link)
I don't have a Mac either. For the moment I run linux on a computer with a powerpc cpu, that's all. There is the possibility of hardware emulation of MacOS (7-9 or even X) but haven't had any luck with that yet, quite difficult to set up -- running the cave story mac binary would then be a possibility.
This is my machine: http://www.genesippc.com/efika.php

(Reply to this) (Parent)

Re: PowerPC build
[info]nicepics13
2007-12-13 02:51 pm UTC (link)
As I understand it.. the only compiling I do is to build mplayer svn every now and then.. As long as you don't have anything x86 specific in the source code it should build to powerpc architecture by simply adding the command line option --arch=powerpc ?
When source code is made available there's no problem for us slackintoshers to try new software, but linux binaries tend to be x86 only. I can think of RAR and a couple of freeware emulators that have ppc binaries up for download.

(Reply to this) (Parent)

Not found
[info]cgibbard
2008-05-03 08:51 pm UTC (link)
The download link appears to be a 404 for me.

Scibotic on the Linux Game Tome claims to have found the file from another unknown source via Google and has mirrored it here.

(Reply to this) (Thread)

Re: Not found
[info]simonparzer
2008-05-04 09:05 pm UTC (link)
Ok, the "unknown source" could've been my second webspace where I mirrored it for myself. The first link is definitely down, forever, because it was a freehoster who out of the blue decided to wipe all accounts and start over new.

(Reply to this) (Parent)

Re: Not found
[info]scibotic
2008-12-02 07:17 am UTC (link)
Unfortunately I had to take the file off my web host but it's available here, http://www.archive.org/download/CavestorydoukutsuForLinuxV1.01/linuxdoukutsu-1.01.tar.bz2

(Reply to this) (Parent)


(22 comments) - (Post a new comment)

Create an Account
Forgot your login or password?
Login w/ OpenID
English • Español • Deutsch • Русский…