[Coladam] ADAMEm/SDL progress

geoff at oltmansfamily.org geoff at oltmansfamily.org
Tue Feb 9 17:08:11 CET 2010

I figured out my earlier problem with ADAMEm. I was having some problems
with the function keys working properly in third-party programs. This was
especially maddening since I have been trying to get Powermate IDE hard
disk emulation working, and the EOS utility program was unusable. I also
modded the program to emulate some basic enough functionality of MidiMite
so that SEQuel would run. I ended up modding the Z80 emulation to stop when
the EOS read keyboard routine was called, and then dissecting the ADAM
program one instruction at a time to find out what keyboard scan codes it
was expecting. Voila! I had put the shifted-F-key scancodes in instead of
the normal ones. Apparently Smartwriter et al ignores the shift key when it
compares the key press whereas the third party code expects a specific
keycode. Unfortunately, I've still got some work to do on the IDE
emulation... partitioning works, I can init the directories in the EOS
utility, but I can't install software onto the disk image. Bummer. It would
be nice if I could get an image from an already partitioned working drive,
but I haven't been able to get my PM IDE card working with any drives I've
got on my real ADAM. I am happy to report that SEQuel appears to work where
it didn't before (i.e. you can load mid files where you couldn't before).

So, that's fixed. Also fixed an issue with writing to disk images. There
was a longstanding bug in the ADAMEm source when not using Zlib that would
append writes to the end of the disk image rather than modifying the
appropriate chunks of the image. Outstanding issues I know of:

o Full screen doesn't work properly when running in Windows. I haven't
verified this in Linux yet either, but it does work in Mac OS 10.5/10.6.

o Sound emulation doesn't work 100%. It is VERY close though, the only
things I've had trouble with are speech in games like Squish 'em Sam

o Haven't tested all alternative forms of game input (roller controller
emulation, super action controller emulation). You can use a standard USB
joystick for one player. For some reason SDL won't allow use of a second
controller, at least the Mac OS X library.

Hopefully I'll get a new release of the code ready to send out to whoever
is interested shortly. I need to set up a web page for people to download
this. I have webspace, just haven't created a webpage for my ADAM stuff
yet. :)

More information about the Coladam mailing list