Discussion:
new ProDOS ports
Add Reply
qkumba
2015-07-14 20:55:21 UTC
Reply
Permalink
Raw Message
New life for old games.

Conan (also fits on one side of a floppy now)
Jungle Hunt
Karateka
Swashbuckler
Mr. Do (in Asimov incoming, the currently available version is not compatible with all hardware)

For Virtual ][ users, remove the clock card first from slot 7.
For Sweet16 users, the issue with Karateka is still unsolved.
sicklittlemonkey
2015-07-16 11:33:45 UTC
Reply
Permalink
Raw Message
Post by qkumba
New life for old games.
Cool!

Did you do these in a generic way - like the RWTS replacement Oliver and I were discussing over in c.e.a2?

Cheers,
Nick.
qkumba
2015-07-17 00:02:45 UTC
Reply
Permalink
Raw Message
Post by sicklittlemonkey
Did you do these in a generic way - like the RWTS replacement Oliver and I were discussing over in c.e.a2?
No, they are customised specifically for each game.
I captured all of the data that are read, consolidated as much as I could, saved the blocks into files, and then replaced the RWTS calls with ProDOS-specific ones, where necessary. For something like Joust or Moon Patrol, I even managed to convert a multi-load game into a single-load one, without loss of fidelity.
The result is a collection of small files, not one monolithic one in each case.
I find this to be more elegant, though it takes a lot more work. In some cases, it's also the only way, because ProDOS can't always remain resident alongside the game (e.g. Mr Do).
Steve Nickolas
2015-07-17 01:01:59 UTC
Reply
Permalink
Raw Message
Post by qkumba
Post by sicklittlemonkey
Did you do these in a generic way - like the RWTS replacement Oliver and I were discussing over in c.e.a2?
No, they are customised specifically for each game.
I captured all of the data that are read, consolidated as much as I
could, saved the blocks into files, and then replaced the RWTS calls
with ProDOS-specific ones, where necessary. For something like Joust or
Moon Patrol, I even managed to convert a multi-load game into a
single-load one, without loss of fidelity.
The result is a collection of small files, not one monolithic one in each case.
I find this to be more elegant, though it takes a lot more work. In
some cases, it's also the only way, because ProDOS can't always remain
resident alongside the game (e.g. Mr Do).
I use basically the same approach. The main differences between qkumba's
ProDOS ports and mine are that I integrate the first stage of the loader
into the SYSTEM file rather than simply use a generic SYSTEM file that
will load anything (though I do have such a file, and it works just as
well with qkumba's cracks as his own loader), plus I usually use the file
type $F1 instead of BIN for my overlays. (My code is pretty dreadful,
btw.)

-uso.
qkumba
2015-07-17 15:48:25 UTC
Reply
Permalink
Raw Message
Post by Steve Nickolas
I use basically the same approach. The main differences between qkumba's
ProDOS ports and mine are that I integrate the first stage of the loader
into the SYSTEM file rather than simply use a generic SYSTEM file that
will load anything (though I do have such a file, and it works just as
well with qkumba's cracks as his own loader), plus I usually use the file
type $F1 instead of BIN for my overlays. (My code is pretty dreadful,
btw.)
I use BIN because the files are coming from DOS disks, so I don't change anything.
The SYSTEM file exists for the same reason - just a way to boot the BIN, so I don't have to change anything.
Steve Nickolas
2015-07-17 18:21:26 UTC
Reply
Permalink
Raw Message
Post by qkumba
Post by Steve Nickolas
I use basically the same approach. The main differences between qkumba's
ProDOS ports and mine are that I integrate the first stage of the loader
into the SYSTEM file rather than simply use a generic SYSTEM file that
will load anything (though I do have such a file, and it works just as
well with qkumba's cracks as his own loader), plus I usually use the file
type $F1 instead of BIN for my overlays. (My code is pretty dreadful,
btw.)
I use BIN because the files are coming from DOS disks, so I don't change anything.
The SYSTEM file exists for the same reason - just a way to boot the BIN, so I don't have to change anything.
Makes sense. I on the other hand pull them in from outside using
Ciderpress, and DOS 3.3 isn't involved in the process. So I usually give
the first file type $FF and the others $F1, and it's as easy for me to do
that as to give them all $06.

The wrapper I use with Exomizer produces type BAS, corresponding to how
Exomizer itself outputs for the C64 - and for me that's usually easier
since I use RDOS for some compressed game disks (since it's faster and has
less overhead) and while you can BLOAD stuff with RDOS, you can't BRUN it.

-uso.
Antoine Vignau
2015-07-17 21:24:59 UTC
Reply
Permalink
Raw Message
I'd vote for the std: bin
av
b***@gmail.com
2015-07-18 02:30:22 UTC
Reply
Permalink
Raw Message
Post by qkumba
Post by sicklittlemonkey
Did you do these in a generic way - like the RWTS replacement Oliver and I were discussing over in c.e.a2?
No, they are customised specifically for each game.
I captured all of the data that are read, consolidated as much as I could, saved the blocks into files, and then replaced the RWTS calls with ProDOS-specific ones, where necessary. For something like Joust or Moon Patrol, I even managed to convert a multi-load game into a single-load one, without loss of fidelity.
The result is a collection of small files, not one monolithic one in each case.
I find this to be more elegant, though it takes a lot more work. In some cases, it's also the only way, because ProDOS can't always remain resident alongside the game (e.g. Mr Do).
I'm greatly impressed by your work

Will you kindly consider making uncompressed, single-load versions of your Moon Patrol and Joust ports which can be used with Beautiful Boot or Compatiboot available? Is Mr. Do! also possible to make into a single-load binary? I seem to recall a three-level demo was cracked into a ~140 sector Binary file.

Do you also use Exomizer or some generic LZMA compression scheme to compress the single-load games? All the single load ports seem to be compressed.

Will your multi-file Prodos ports also work in regular DOS 3.3?
Steve Nickolas
2015-07-18 02:48:16 UTC
Reply
Permalink
Raw Message
Post by b***@gmail.com
Will you kindly consider making uncompressed, single-load versions of
your Moon Patrol and Joust ports which can be used with Beautiful Boot
or Compatiboot available? Is Mr. Do! also possible to make into a
single-load binary? I seem to recall a three-level demo was cracked into
a ~140 sector Binary file.
I'm not sure that's possible, apart from adding some sort of mini-DOS
(such as FASTLOADER binaries have) to the initial BIN file.
Post by b***@gmail.com
Will your multi-file Prodos ports also work in regular DOS 3.3?
I know he has a DOS 3.3 port of Conan...

-uso.
qkumba
2015-07-18 07:18:34 UTC
Reply
Permalink
Raw Message
Post by b***@gmail.com
I'm greatly impressed by your work
Thanks. It's nice to know when people enjoy the results.
Post by b***@gmail.com
Will you kindly consider making uncompressed, single-load versions of your Moon Patrol and Joust ports which can be used with Beautiful Boot or Compatiboot available?
Hmm, I think that both of them are too big to load uncompressed alongside any OS, which is why I compressed them in the first place. However, the fact that they are compressed should not interfere with their ability to be used in Beautiful Boot or similar. Just drop them into the right place on the disk - they carry the unpacker so they can run directly. They don't have any ProDOS dependencies.
Post by b***@gmail.com
Is Mr. Do! also possible to make into a single-load binary? I seem to recall a three-level demo was cracked into a ~140 sector Binary file.
Ah, I believe that the "demo" was intended to be the full version, and someone overlooked that the cutscenes are loaded from disk, so it crashes as a result.
If the machine has 128kb, then my port *is* a single-loader (unlike the original). It's just not a single file.
It could be made into a single file, ~120 sectors, but the experience wouldn't be "authentic" (the screen would be visibly filled with garbage during the load).
Post by b***@gmail.com
Do you also use Exomizer or some generic LZMA compression scheme to compress the single-load games? All the single load ports seem to be compressed.
I use aPLib to compress, and my own unpacker (see http://pferrie.host22.com/misc/aplibunp.zip)
All of the multi-load ports are compressed, too, except for the Aquatron high score file.
Post by b***@gmail.com
Will your multi-file Prodos ports also work in regular DOS 3.3?
No, you'd need a DOS version of the port. I have a DOS port for Conan on Asimov, but my more recent titles (Karateka, Mr Do, Jungle Hunt, Plasmania, Swashbuckler, Aquatron) are only for ProDOS. They're intended to be run from a hard-disk. There's no point in a DOS port for them, because you could use the full disk image instead.
qkumba
2015-07-18 07:21:36 UTC
Reply
Permalink
Raw Message
Regarding Aquatron, it's in Asimov incoming right now.
This is the only file-based version with the "dissolve" effect on the title screen, and the high-score file. If the aquatron.1 file is not locked, then it will save the high scores. I reset the table because the version that I have was used previously by impossibly good players whose scores I could never hope to beat. ;-)
b***@gmail.com
2015-07-21 03:22:10 UTC
Reply
Permalink
Raw Message
Post by qkumba
Ah, I believe that the "demo" was intended to be the full version, and someone overlooked that the cutscenes are loaded from disk, so it crashes as a result.
If the machine has 128kb, then my port *is* a single-loader (unlike the original). It's just not a single file.
It could be made into a single file, ~120 sectors, but the experience wouldn't be "authentic" (the screen would be visibly filled with garbage during the load).
I see. Well, it would be *very* interesting and much appreciated if you could post a single file, compressed version of Mr. Do! which will run in 128k. I'd very much like to test this with Beautiful Boot on a 128k real Apple, without a hard drive. That's the reason for my asking if your compressed ports will run from Beautiful Boot. I've still got my trusty //e with Duodisk drives.
Post by qkumba
Post by b***@gmail.com
Will your multi-file Prodos ports also work in regular DOS 3.3?
No, you'd need a DOS version of the port. I have a DOS port for Conan on Asimov, but my more recent titles (Karateka, Mr Do, Jungle Hunt, Plasmania, Swashbuckler, Aquatron) are only for ProDOS. They're intended to be run from a hard-disk. There's no point in a DOS port for them, because you could use the full disk image instead.
There's still a point in making DOS 3.3 ports for those who have the real hardware and still use good 'old 140k floppies, as ProDOS takes additional time to load, and consumes some ~68 sectors of additional disk space, and imposes memory limitations, etc. DOS 3.3 ports just seem more 'clean' to me. Go figure.

Glad to see you're giving new life into the old games by making single-file and more optimized versions of the old cracks we've had for 30+ years.
qkumba
2015-07-21 23:09:53 UTC
Reply
Permalink
Raw Message
Post by b***@gmail.com
Post by qkumba
It could be made into a single file, ~120 sectors, but the experience wouldn't be "authentic" (the screen would be visibly filled with garbage during the load).
I see. Well, it would be *very* interesting and much appreciated if you could post a single file, compressed version of Mr. Do! which will run in 128k. I'd very much like to test this with Beautiful Boot on a 128k real Apple, without a hard drive. That's the reason for my asking if your compressed ports will run from Beautiful Boot. I've still got my trusty //e with Duodisk drives.
I see. I've never tried to add files to a Beautiful Boot disk. I'll see what can be done.
Post by b***@gmail.com
There's still a point in making DOS 3.3 ports for those who have the real hardware and still use good 'old 140k floppies, as ProDOS takes additional time to load, and consumes some ~68 sectors of additional disk space, and imposes memory limitations, etc. DOS 3.3 ports just seem more 'clean' to me. Go figure.
Fair enough. I'll investigate making DOS versions alongside the ProDOS versions.
Post by b***@gmail.com
Glad to see you're giving new life into the old games by making single-file and more optimized versions of the old cracks we've had for 30+ years.
I'm glad that you'll be able to enjoy them.
qkumba
2015-07-21 23:11:29 UTC
Reply
Permalink
Raw Message
Goonies (ProDOS) is now in Asimov incoming.
I've added a character selection feature, too.
Details are in the release notes in the same place.
qkumba
2015-07-22 03:46:16 UTC
Reply
Permalink
Raw Message
Post by qkumba
I see. I've never tried to add files to a Beautiful Boot disk. I'll see what can be done.
I checked - Moon Patrol and Joust can be added directly to Beautiful Boot (you can use Copy ][+ 7 or later to copy the files from the ProDOS disks to a DOS disk, and then run Beautiful Boot to convert the DOS disk). All of my single-file titles (Alien Rain, Apple Panic, Choplifter, Drelbs, Galaxian, Shamus, Spy Hunter, Wavy Navy) should work similarly. The multi-file titles will require some minor surgery to replace the ProDOS support with DOS support instead.
Unfortunately, Beautiful Boot places data in the text screen, which is visible when Moon Patrol loads. It's ugly, but the game runs.

If you want a really slim OS, perhaps you should consider my Compact Disk OS. It's boring (just text menu), but only 4 sectors total.
The source code is available from my website (http://pferrie.host22.com/misc/appleii.htm), but adding titles currently requires a sector editor.
b***@gmail.com
2015-07-22 08:53:42 UTC
Reply
Permalink
Raw Message
Post by qkumba
Post by qkumba
I see. I've never tried to add files to a Beautiful Boot disk. I'll see what can be done.
I checked - Moon Patrol and Joust can be added directly to Beautiful Boot (you can use Copy ][+ 7 or later to copy the files from the ProDOS disks to a DOS disk, and then run Beautiful Boot to convert the DOS disk). All of my single-file titles (Alien Rain, Apple Panic, Choplifter, Drelbs, Galaxian, Shamus, Spy Hunter, Wavy Navy) should work similarly. The multi-file titles will require some minor surgery to replace the ProDOS support with DOS support instead.
Unfortunately, Beautiful Boot places data in the text screen, which is visible when Moon Patrol loads. It's ugly, but the game runs.
If the game loads and runs, no harm, no foul. It's streamlined and very convenient to have a single file compressed binary! Would love to see Mr. DO! singlefile if you can swing it!
Post by qkumba
If you want a really slim OS, perhaps you should consider my Compact Disk OS. It's boring (just text menu), but only 4 sectors total.
The source code is available from my website (http://pferrie.host22.com/misc/appleii.htm), but adding titles currently requires a sector editor.
Thanks for considering the DOS ports, it is much appreciated. I've tested all your single file compressed files, and they load with Beautiful Boot perfectly. Alas, your Compact Disk OS seems *wonderful*, utilitarian, but requires the 65c02. I still have my trusty old 128k unenhanced IIe. I never got around to enhancing it back in the day.

Your slim OS seems to work perfectly on various emulators which I've tried. Getting a basic RWTS down to 4 sectors is mighty impressive.
w***@gmail.com
2015-07-22 13:04:15 UTC
Reply
Permalink
Raw Message
Post by b***@gmail.com
Post by qkumba
Post by qkumba
I see. I've never tried to add files to a Beautiful Boot disk. I'll see what can be done.
I checked - Moon Patrol and Joust can be added directly to Beautiful Boot (you can use Copy ][+ 7 or later to copy the files from the ProDOS disks to a DOS disk, and then run Beautiful Boot to convert the DOS disk). All of my single-file titles (Alien Rain, Apple Panic, Choplifter, Drelbs, Galaxian, Shamus, Spy Hunter, Wavy Navy) should work similarly. The multi-file titles will require some minor surgery to replace the ProDOS support with DOS support instead.
Unfortunately, Beautiful Boot places data in the text screen, which is visible when Moon Patrol loads. It's ugly, but the game runs.
If the game loads and runs, no harm, no foul. It's streamlined and very convenient to have a single file compressed binary! Would love to see Mr. DO! singlefile if you can swing it!
Post by qkumba
If you want a really slim OS, perhaps you should consider my Compact Disk OS. It's boring (just text menu), but only 4 sectors total.
The source code is available from my website (http://pferrie.host22.com/misc/appleii.htm), but adding titles currently requires a sector editor.
Thanks for considering the DOS ports, it is much appreciated. I've tested all your single file compressed files, and they load with Beautiful Boot perfectly. Alas, your Compact Disk OS seems *wonderful*, utilitarian, but requires the 65c02. I still have my trusty old 128k unenhanced IIe. I never got around to enhancing it back in the day.
Your slim OS seems to work perfectly on various emulators which I've tried. Getting a basic RWTS down to 4 sectors is mighty impressive.
Unless you have a particular need for an unenhanced IIe, the enhancement kit is definitely worth it. I recommend it strongly.

Of course, keep your old chips so you can "unenhance" if you ever need (or want) to.
qkumba
2015-07-22 15:47:58 UTC
Reply
Permalink
Raw Message
Post by b***@gmail.com
Post by qkumba
Unfortunately, Beautiful Boot places data in the text screen, which is visible when Moon Patrol loads. It's ugly, but the game runs.
If the game loads and runs, no harm, no foul. It's streamlined and very convenient to have a single file compressed binary!
Yes, but I'm trying to preserve the look-and-feel of the original, where possible, including the in-memory delays (not the disk access ones, obviously) and blank screens. I have a policy of not requiring more memory than the original did (so Plasmania accesses the disk for the sound, even though I could store it in 64kb). I also have a policy of not requiring more sides than the original had (so Prince of Persia and Toy Shop were compressed very heavily - the technical details are on my site, in case you are interested), again to preserve the original behaviour.
I'm going to have to break that rule for some titles, because it's simply impossible to convert them otherwise. That makes me sad, but I have to accept it.
Post by b***@gmail.com
Would love to see Mr. DO! singlefile if you can swing it!
It won't need to be single-file - I can drop in a DOS filesystem parser and use that. I just have to actually do it.
Post by b***@gmail.com
Post by qkumba
If you want a really slim OS, perhaps you should consider my Compact Disk OS. It's boring (just text menu), but only 4 sectors total.
The source code is available from my website (http://pferrie.host22.com/misc/appleii.htm), but adding titles currently requires a sector editor.
Thanks for considering the DOS ports, it is much appreciated. I've tested all your single file compressed files, and they load with Beautiful Boot perfectly. Alas, your Compact Disk OS seems *wonderful*, utilitarian, but requires the 65c02. I still have my trusty old 128k unenhanced IIe. I never got around to enhancing it back in the day.
If the Beautiful Boot titles are actually running, then you have a 65C02, because the decompressor requires a 65C02.
Post by b***@gmail.com
Your slim OS seems to work perfectly on various emulators which I've tried. Getting a basic RWTS down to 4 sectors is mighty impressive.
Thanks, that one required some tricks and careful cycle counting.
sicklittlemonkey
2015-08-13 02:34:10 UTC
Reply
Permalink
Raw Message
Post by qkumba
Moon Patrol
I see a problem with Moon Patrol. Double mountain ranges at start of game.

Will try to email you a pic.

Cheers,
Nick.
qkumba
2015-08-13 17:15:29 UTC
Reply
Permalink
Raw Message
Post by sicklittlemonkey
Post by qkumba
Moon Patrol
I see a problem with Moon Patrol. Double mountain ranges at start of game.
Will try to email you a pic.
Ah, I believe that the issue is in AppleWin.
Shamus has an issue with AppleWin, too - random resets.
Both work in other emulators.
qkumba
2015-08-14 03:55:14 UTC
Reply
Permalink
Raw Message
Post by qkumba
Post by sicklittlemonkey
Post by qkumba
Moon Patrol
I see a problem with Moon Patrol. Double mountain ranges at start of game.
Will try to email you a pic.
Ah, I believe that the issue is in AppleWin.
Shamus has an issue with AppleWin, too - random resets.
Both work in other emulators.
I've fixed the double-mountain issue - I had to preserve address $41 across the disk access. I've fixed the unplayable ProDOS issue in AppleWin - I had to turn off the drive, because I can't require that authentic disk speed is in use.
Thanks for reporting those.
qkumba
2015-08-14 04:36:59 UTC
Reply
Permalink
Raw Message
There's still an issue with Shamus, though - when using the numeric keypad in place of a real joystick, the keypad presses are occasionally registering as keyboard keypresses. That causes the game to either pause or restart.
sicklittlemonkey
2015-08-16 02:51:33 UTC
Reply
Permalink
Raw Message
Post by qkumba
There's still an issue with Shamus, though - when using the numeric keypad in place of a real joystick, the keypad presses are occasionally registering as keyboard keypresses. That causes the game to either pause or restart.
Yes, I see it too. Will look into it.

Cheers,
Nick.
sicklittlemonkey
2015-08-16 06:51:56 UTC
Reply
Permalink
Raw Message
Post by qkumba
There's still an issue with Shamus, though - when using the numeric keypad in place of a real joystick, the keypad presses are occasionally registering as keyboard keypresses. That causes the game to either pause or restart.
Ahaha, ah hah, ah. It's alt-numpad codes causing that problem - Windows is sending them via WM_CHAR, and AppleWin is handling them just fine. ; - )

Fixing it would require redesigning AppleWin's keyboard handling. Well, I will log a bug.

Cheers,
Nick.
qkumba
2015-08-17 01:44:46 UTC
Reply
Permalink
Raw Message
Post by sicklittlemonkey
Post by qkumba
There's still an issue with Shamus, though - when using the numeric keypad in place of a real joystick, the keypad presses are occasionally registering as keyboard keypresses. That causes the game to either pause or restart.
Ahaha, ah hah, ah. It's alt-numpad codes causing that problem - Windows is sending them via WM_CHAR, and AppleWin is handling them just fine. ; - )
Yes, I realised it shortly afterwards. The reason why it's "occasional" is because it requires several presses to complete the sequence.
Post by sicklittlemonkey
Fixing it would require redesigning AppleWin's keyboard handling. Well, I will log a bug.
Thanks. :-)
Steve Nickolas
2015-08-14 05:03:47 UTC
Reply
Permalink
Raw Message
Post by qkumba
Post by qkumba
Post by sicklittlemonkey
Post by qkumba
Moon Patrol
I see a problem with Moon Patrol. Double mountain ranges at start of game.
Will try to email you a pic.
Ah, I believe that the issue is in AppleWin.
Shamus has an issue with AppleWin, too - random resets.
Both work in other emulators.
I've fixed the double-mountain issue - I had to preserve address $41 across the disk access. I've fixed the unplayable ProDOS issue in AppleWin - I had to turn off the drive, because I can't require that authentic disk speed is in use.
Thanks for reporting those.
Remind me to make the same fix. ;)

-uso.
Alex Lee
2015-08-15 07:53:57 UTC
Reply
Permalink
Raw Message
Post by qkumba
New life for old games.
Conan (also fits on one side of a floppy now)
Jungle Hunt
Karateka
Swashbuckler
Mr. Do (in Asimov incoming, the currently available version is not
compatible with all hardware)
For Virtual ][ users, remove the clock card first from slot 7.
For Sweet16 users, the issue with Karateka is still unsolved.
Thanks for your continued efforts qkumba!

I finally got round to testing the Goonies and Mr Do! on my real IIGS
and they both come up with a screen full of '2's, repeated horizontally
and vertically across the entire display.

Everything else works fine on the real hardware however.

- Alex
qkumba
2015-08-15 21:35:32 UTC
Reply
Permalink
Raw Message
Post by Alex Lee
Thanks for your continued efforts qkumba!
I finally got round to testing the Goonies and Mr Do! on my real IIGS
and they both come up with a screen full of '2's, repeated horizontally
and vertically across the entire display.
Everything else works fine on the real hardware however.
Yes, this is a known issue. Both of them try to display text page 2 for the joystick calibration. I don't know how to make it display properly. Both MAME and KEGS behave similarly.
After a second or so after that screen shows, hold the joystick to the far right, press the button, far left, press button, far top, press button, far bottom, press button. Both games should start and be fully playable.
sicklittlemonkey
2015-08-16 01:13:05 UTC
Reply
Permalink
Raw Message
Post by qkumba
Yes, this is a known issue. Both of them try to display text page 2 for the joystick calibration. I don't know how to make it display properly. Both MAME and KEGS behave similarly.
https://en.wikipedia.org/wiki/Apple_II_graphics#.22Alternate_Display_Mode.22_on_the_Apple_IIGS

Should be OK on ROM 3.

Cheers,
Nick.
qkumba
2015-08-17 01:46:49 UTC
Reply
Permalink
Raw Message
Post by sicklittlemonkey
Post by qkumba
Yes, this is a known issue. Both of them try to display text page 2 for the joystick calibration. I don't know how to make it display properly. Both MAME and KEGS behave similarly.
https://en.wikipedia.org/wiki/Apple_II_graphics#.22Alternate_Display_Mode.22_on_the_Apple_IIGS
Should be OK on ROM 3.
Perhaps should be, but either MAME doesn't support it (I'm running with a ROM 3 ROM), or the detection is failing.
I might try to add support for it in the future.
qkumba
2015-08-20 04:55:18 UTC
Reply
Permalink
Raw Message
Lady Tut with ending sequence is now available.
m***@libero.it
2015-08-20 09:55:33 UTC
Reply
Permalink
Raw Message
Post by qkumba
Lady Tut with ending sequence is now available.
Using the ProDOS version with AppleWin. A disturbing but harmless hard disk red light remains lighted. In your opinion is this an emulator bug or is the game "touching" some softswith?

Marco
qkumba
2015-08-20 15:34:01 UTC
Reply
Permalink
Raw Message
Post by m***@libero.it
Post by qkumba
Lady Tut with ending sequence is now available.
Using the ProDOS version with AppleWin. A disturbing but harmless hard disk red light remains lighted. In your opinion is this an emulator bug or is the game "touching" some softswith?
More likely my mistake, because of juggling work and play (you decide which is which, and see "goonies PRODOS (san inc pack).txt" for example ;-) ).
I'll take a look.
m***@libero.it
2015-08-20 16:36:00 UTC
Reply
Permalink
Raw Message
Post by qkumba
Post by m***@libero.it
Post by qkumba
Lady Tut with ending sequence is now available.
Using the ProDOS version with AppleWin. A disturbing but harmless hard disk red light remains lighted. In your opinion is this an emulator bug or is the game "touching" some softswith?
More likely my mistake, because of juggling work and play (you decide which is which, and see "goonies PRODOS (san inc pack).txt" for example ;-) ).
I'll take a look.
OK. At last this is not the case: boot-this-floppy-and-destroy-your-HD
If I don't get wrong you are a virus expert.

Just joking...

Marco
qkumba
2015-08-20 17:27:43 UTC
Reply
Permalink
Raw Message
Post by m***@libero.it
Post by qkumba
Post by m***@libero.it
Using the ProDOS version with AppleWin. A disturbing but harmless hard disk red light remains lighted. In your opinion is this an emulator bug or is the game "touching" some softswith?
More likely my mistake, because of juggling work and play (you decide which is which, and see "goonies PRODOS (san inc pack).txt" for example ;-) ).
I'll take a look.
OK. At last this is not the case: boot-this-floppy-and-destroy-your-HD
If I don't get wrong you are a virus expert.
Just joking...
:-) It's Lady Tut touching PHASE1OFF on all slots. If you have the hard-disk support enabled in AppleWin, then that access selects the hard disk.
It's harmless.
sicklittlemonkey
2015-08-20 23:41:38 UTC
Reply
Permalink
Raw Message
Post by qkumba
:-) It's Lady Tut touching PHASE1OFF on all slots. If you have the hard-disk support enabled in AppleWin, then that access selects the hard disk.
It's harmless.
Interesting. I did a visual check when I saw Marco's post, but I didn't have the HD enabled so couldn't reproduce it.

Fairly presumptuous of LT to access registers without checking the device.

Cheers,
Nick.
Don Bruder
2015-08-21 01:21:33 UTC
Reply
Permalink
Raw Message
Post by sicklittlemonkey
Post by qkumba
:-) It's Lady Tut touching PHASE1OFF on all slots. If you have the
:hard-disk support enabled in AppleWin, then that access selects the hard
:disk.
It's harmless.
Interesting. I did a visual check when I saw Marco's post, but I didn't have
the HD enabled so couldn't reproduce it.
Fairly presumptuous of LT to access registers without checking the device.
So it's presumptuous to assume that a device exists, since, unless it
did, there would be no way (at the time the game was "current", anyway)
to have the code that was making the assumption in RAM to begin with?
--
Security provided by Mssrs Smith and/or Wesson. Brought to you by the letter Q
sicklittlemonkey
2015-08-21 02:06:32 UTC
Reply
Permalink
Raw Message
Post by Don Bruder
So it's presumptuous to assume that a device exists, since, unless it
did, there would be no way (at the time the game was "current", anyway)
to have the code that was making the assumption in RAM to begin with?
But it's writing to slots it didn't load from and hasn't checked the device ID's of.

Cheers,
Nick.
Michael J. Mahon
2015-08-21 06:41:51 UTC
Reply
Permalink
Raw Message
Post by sicklittlemonkey
Post by Don Bruder
So it's presumptuous to assume that a device exists, since, unless it
did, there would be no way (at the time the game was "current", anyway)
to have the code that was making the assumption in RAM to begin with?
But it's writing to slots it didn't load from and hasn't checked the device ID's of.
Cheers,
Nick.
I presumed that it was *reading* from device space initially, not writing.

Of course, reading can change device state, too, but it's hard to see how
to do a slot scan without reading!
--
-michael - NadaNet 3.1 and AppleCrate II: http://home.comcast.net/~mjmahon
qkumba
2015-08-21 06:59:22 UTC
Reply
Permalink
Raw Message
Post by Michael J. Mahon
I presumed that it was *reading* from device space initially, not writing.
Of course, reading can change device state, too, but it's hard to see how
to do a slot scan without reading!
It's STA $C082, Y.
Then incrementing Y by 16 for each of 7 more iterations.
Michael J. Mahon
2015-08-22 15:56:54 UTC
Reply
Permalink
Raw Message
Post by qkumba
Post by Michael J. Mahon
I presumed that it was *reading* from device space initially, not writing.
Of course, reading can change device state, too, but it's hard to see how
to do a slot scan without reading!
It's STA $C082, Y.
Then incrementing Y by 16 for each of 7 more iterations.
Hmmm, cheeky!
--
-michael - NadaNet 3.1 and AppleCrate II: http://home.comcast.net/~mjmahon
qkumba
2015-11-02 21:12:35 UTC
Reply
Permalink
Raw Message
Bolo - single file, with title screen, is now available for the first time, and awaiting approval in Asimov /incoming. I always loved that game.
sicklittlemonkey
2015-11-03 01:17:03 UTC
Reply
Permalink
Raw Message
Post by qkumba
Bolo - single file, with title screen, is now available for the first time, and awaiting approval in Asimov /incoming. I always loved that game.
Cool! Yes, a lovely game that you don't often hear in top X lists.

Great controls, a maze game, a scanner, nice scrolling, that nice animation when your shots hit something, and what a friend and I used to call "toe-nail" collision detection. ; - ) (Probably EOR.)

I also like how auto-repeating the fire key is suicidal.

Cheers,
Nick.
qkumba
2015-11-18 18:10:13 UTC
Reply
Permalink
Raw Message
H.E.R.O. as a clean 12k file is in Asimov /incoming.
Steve Nickolas
2015-11-18 20:04:43 UTC
Reply
Permalink
Raw Message
Post by qkumba
H.E.R.O. as a clean 12k file is in Asimov /incoming.
It's funny that Exomizer spit out a file just 25 bytes shy of being
*exactly* 12K. (I haven't uploaded that - yet, at least - but I did upload
to my own servers a ProDOS port in 3 files.)

-uso.
Delfs
2015-11-19 11:18:41 UTC
Reply
Permalink
Raw Message
Just... Wow! And Thank you!
qkumba
2015-11-19 17:45:18 UTC
Reply
Permalink
Raw Message
Pitfall 2 14k file in Asimov /incoming.
qkumba
2015-12-13 15:57:52 UTC
Reply
Permalink
Raw Message
Outpost 11k file in Asimov /incoming. I can't get past level 7. :-(
qkumba
2016-01-01 16:48:29 UTC
Reply
Permalink
Raw Message
Burgertime 21k single file in Asimov /incoming. What a monster.
Steve Nickolas
2016-01-01 18:47:06 UTC
Reply
Permalink
Raw Message
Post by qkumba
Burgertime 21k single file in Asimov /incoming. What a monster.
Tell me about it, given that I did a 3-file ProDOS version that was a
nightmare to put together.

-uso.
qkumba
2016-01-01 23:07:12 UTC
Reply
Permalink
Raw Message
Post by Steve Nickolas
Post by qkumba
Burgertime 21k single file in Asimov /incoming. What a monster.
Tell me about it, given that I did a 3-file ProDOS version that was a
nightmare to put together.
Yes, it would have been easier for me to let it expand into 64kb, especially for the DOS version, but it runs in 48kb after all.
BLuRry
2016-01-04 04:29:45 UTC
Reply
Permalink
Raw Message
Post by qkumba
Post by Steve Nickolas
Post by qkumba
Burgertime 21k single file in Asimov /incoming. What a monster.
Tell me about it, given that I did a 3-file ProDOS version that was a
nightmare to put together.
Yes, it would have been easier for me to let it expand into 64kb, especially for the DOS version, but it runs in 48kb after all.
It was a blast with these on my //e today. Thanks for the prodos conversions guys, they work FANTASTIC over VSDrive as well. :D Has anyone considered doing a file-crack of Airheart or Rad Warrior? Those games both act like single-load (albeit really huge)

-B
Steve Nickolas
2016-01-04 08:13:15 UTC
Reply
Permalink
Raw Message
Post by BLuRry
Post by qkumba
Post by Steve Nickolas
Post by qkumba
Burgertime 21k single file in Asimov /incoming. What a monster.
Tell me about it, given that I did a 3-file ProDOS version that was a
nightmare to put together.
Yes, it would have been easier for me to let it expand into 64kb, especially for the DOS version, but it runs in 48kb after all.
It was a blast with these on my //e today. Thanks for the prodos conversions guys, they work FANTASTIC over VSDrive as well. :D Has anyone considered doing a file-crack of Airheart or Rad Warrior? Those games both act like single-load (albeit really huge)
-B
I haven't played them to see if that's possible. Who knows, I converted
Qix, which is a 128K game, so it might be possible. Maybe one of the real
gurus like LoGo or qkumba is reading and will pull it off successfully. ;)

I've said it before: Floppies will fail, and new ones cease to be
manufactured, and our Unidisks will burn out, but the Apple ][s themselves
will keep working, and with the help of flash media and remote servers, we
will be able to keep using them for many years hence - and ProDOS is
device-agnostic enough to work with those, while classic RWTS needs
something that looks like a Disk ][. So in days long to come, it will be
file cracks and ProDOS ports that keep running on metal, and the disk
copies will be relegated to emulation.

-uso.
qkumba
2016-01-04 14:59:31 UTC
Reply
Permalink
Raw Message
Post by BLuRry
It was a blast with these on my //e today. Thanks for the prodos conversions guys, they work FANTASTIC over VSDrive as well. :D Has anyone considered doing a file-crack of Airheart or Rad Warrior? Those games both act like single-load (albeit really huge)
You're welcome. :-) I have Airheart on my list, but as far as I remember, it would require 256kb to run as files because it's not a single-loader - requires write support, at least - so we'd need to stash ProDOS somewhere.
I'm not familiar with Rad Warrior. I'll take a look.
BLuRry
2016-01-04 16:00:20 UTC
Reply
Permalink
Raw Message
Post by qkumba
Post by BLuRry
It was a blast with these on my //e today. Thanks for the prodos conversions guys, they work FANTASTIC over VSDrive as well. :D Has anyone considered doing a file-crack of Airheart or Rad Warrior? Those games both act like single-load (albeit really huge)
You're welcome. :-) I have Airheart on my list, but as far as I remember, it would require 256kb to run as files because it's not a single-loader - requires write support, at least - so we'd need to stash ProDOS somewhere.
I'm not familiar with Rad Warrior. I'll take a look.
The European name for RadWarrior was Antirad, if that helps. :) As for Airheart, I can help you identify the memory usage if needed. Alternatively it might be possible to shove the game into slinky ram and replace the disk routines with much-smaller ram transfer routines. Of course bank-switched AUX such as RamWorks is also a possibility but I have a RamFactor so my bias is blatant and obvious. ;)

Happy new year and thanks for the great crack(s)!! :D
-Brendan
qkumba
2016-01-04 17:21:09 UTC
Reply
Permalink
Raw Message
Post by BLuRry
The European name for RadWarrior was Antirad, if that helps. :)
4am just gave me a present, so I have it now.
Post by BLuRry
As for Airheart, I can help you identify the memory usage if needed. Alternatively it might be possible to shove the game into slinky ram and replace the disk routines with much-smaller ram transfer routines. Of course bank-switched AUX such as RamWorks is also a possibility but I have a RamFactor so my bias is blatant and obvious. ;)
I said 256k as a neat multiple. As I showed in my write-up, the disk is really full, and all of it is read. 128k for game+16k for ProDOS writing is probably more accurate.
Post by BLuRry
Happy new year and thanks for the great crack(s)!! :D
Happy New Year to you, too.
BLuRry
2016-01-05 04:12:23 UTC
Reply
Permalink
Raw Message
Post by qkumba
Post by BLuRry
The European name for RadWarrior was Antirad, if that helps. :)
4am just gave me a present, so I have it now.
As I say to my kids: Sharing is caring. :D
Post by qkumba
Post by BLuRry
As for Airheart, I can help you identify the memory usage if needed. Alternatively it might be possible to shove the game into slinky ram and replace the disk routines with much-smaller ram transfer routines. Of course bank-switched AUX such as RamWorks is also a possibility but I have a RamFactor so my bias is blatant and obvious. ;)
I said 256k as a neat multiple. As I showed in my write-up, the disk is really full, and all of it is read. 128k for game+16k for ProDOS writing is probably more accurate.
I'm willing to bet that it doesn't use compression, so there's probably a good chance at improving on that quite a bit. Not that you have PKZip as an option but it goes down to 84k from 140k with that algorithm. Exomizer or the LZ5 packer that Martin Haye uses might be good avenues.

There's always a way, especially when everyone else says there isn't. ;)

-B
D Finnigan
2016-01-05 21:12:39 UTC
Reply
Permalink
Raw Message
Post by BLuRry
Post by qkumba
Post by BLuRry
The European name for RadWarrior was Antirad, if that helps. :)
4am just gave me a present, so I have it now.
As I say to my kids: Sharing is caring. :D
Which makes the comp.sys.apple2 of the 2010's the most careful Apple II
community! :-)
--
]DF$
The Marina IP stack for Apple II--
http://marina.a2hq.com/
qkumba
2016-01-06 04:37:02 UTC
Reply
Permalink
Raw Message
Post by BLuRry
Post by qkumba
Post by BLuRry
The European name for RadWarrior was Antirad, if that helps. :)
4am just gave me a present, so I have it now.
As I say to my kids: Sharing is caring. :D
Radwarrior in two files is in Asimov /incoming.
Post by BLuRry
Post by qkumba
Post by BLuRry
As for Airheart, I can help you identify the memory usage if needed. Alternatively it might be possible to shove the game into slinky ram and replace the disk routines with much-smaller ram transfer routines. Of course bank-switched AUX such as RamWorks is also a possibility but I have a RamFactor so my bias is blatant and obvious. ;)
I said 256k as a neat multiple. As I showed in my write-up, the disk is really full, and all of it is read. 128k for game+16k for ProDOS writing is probably more accurate.
I'm willing to bet that it doesn't use compression, so there's probably a good chance at improving on that quite a bit. Not that you have PKZip as an option but it goes down to 84k from 140k with that algorithm. Exomizer or the LZ5 packer that Martin Haye uses might be good avenues.
The problem is to decompress the data somewhere in a non-destructive way (i.e. the compressed data can't be overwritten because it must be needed again later).
Post by BLuRry
There's always a way, especially when everyone else says there isn't. ;)
Yes, but it would require ripping apart the game to see what's used when.
Reclaiming 16kb is a big ask, and all that just to save the high scores.
mdj
2016-01-06 05:00:52 UTC
Reply
Permalink
Raw Message
Post by qkumba
Post by BLuRry
There's always a way, especially when everyone else says there isn't. ;)
Yes, but it would require ripping apart the game to see what's used when.
Reclaiming 16kb is a big ask, and all that just to save the high scores.
I'm not sure what aesthetic rules you're following, but if you can't 'quit' the game and need to reboot to exit, whether or not ProDOS is resident after load seems irrelevant.

With that in mind, you would be able read the ProDOS directory blocks of the game files, stash the block list, and issue Smartport calls, freeing up ~12k of the language card (assuming you kept the Disk ][ driver resident to allow for 5.25" compatibility)

But I suppose that's cheating ? :-)
qkumba
2016-01-06 06:58:16 UTC
Reply
Permalink
Raw Message
Post by mdj
Post by qkumba
Yes, but it would require ripping apart the game to see what's used when.
Reclaiming 16kb is a big ask, and all that just to save the high scores.
I'm not sure what aesthetic rules you're following, but if you can't 'quit' the game and need to reboot to exit, whether or not ProDOS is resident after load seems irrelevant.
With that in mind, you would be able read the ProDOS directory blocks of the game files, stash the block list, and issue Smartport calls, freeing up ~12k of the language card (assuming you kept the Disk ][ driver resident to allow for 5.25" compatibility)
But I suppose that's cheating ? :-)
The point is that the target isn't a Disk ][ system, but a hard disk, by producing a version contained entirely within individual files, not a disk image. Given that, you'd need quite a lot of ProDOS to be resident in order to be able to write to the file system, in order to save the highscore (hence my reference to the 16kb which admittedly would be a complete ProDOS image, but even a trimmed version will be larger than what seems possible). The game is a single-loader when read, but the ability to save can be required multiple times in a single session (because the game can be restarted without rebooting, and a subsequent game might beat an existing high score).
mdj
2016-01-07 06:54:30 UTC
Reply
Permalink
Raw Message
Post by qkumba
The point is that the target isn't a Disk ][ system, but a hard disk, by producing a version contained entirely within individual files, not a disk image. Given that, you'd need quite a lot of ProDOS to be resident in order to be able to write to the file system, in order to save the highscore (hence my reference to the 16kb which admittedly would be a complete ProDOS image, but even a trimmed version will be larger than what seems possible). The game is a single-loader when read, but the ability to save can be required multiple times in a single session (because the game can be restarted without rebooting, and a subsequent game might beat an existing high score).
How big is the file containing the highscore/save data ? If the file is a fixed size, then writing its contents without ProDOS resident is actually pretty straightforward, assuming you have a loader program that has access to ProDOS beforehand, and you store save data in its own file.

Assuming that, this is how I'd do it:

1. Get the current prefix with a GET_PREFIX call
2. Open the directory file and locate the file entry for the save file.
3. grab the key block pointer from the file entry
4. Use a SmartPort/Block device call to load the key block into memory

The key block contains a sequential list of all the blocks used to store the files data. This assumes of course, that the file is > 512 bytes and < 128k. If it is < 512 bytes, you're in luck, the key block *is* the files data. I seriously doubt any file you'd need to worry about is > 128k. If it was, it's definitely too hard to do without ProDOS.

I expect most game titles don't have much of an operating system at all, and just save their data by dumping a bit of memory to disk sectors/blocks/tracks. Once you have your save files block list, reading/writing the data using SmartPort calls is pretty easy, and you can throw ProDOS away. Your resident read/write routines + the key block should be well under a kilobyte - within spitting distance of the size of RWTS :-)

Obviously it's a few hours work to throw together a loader that can do all this stuff, but it seems to me the technique could throw the door open to just about any single-load title, and with some obvious extensions, a few multi-load ones as well.

Matt
BLuRry
2016-01-07 15:31:14 UTC
Reply
Permalink
Raw Message
Post by mdj
Post by qkumba
The point is that the target isn't a Disk ][ system, but a hard disk, by producing a version contained entirely within individual files, not a disk image. Given that, you'd need quite a lot of ProDOS to be resident in order to be able to write to the file system, in order to save the highscore (hence my reference to the 16kb which admittedly would be a complete ProDOS image, but even a trimmed version will be larger than what seems possible). The game is a single-loader when read, but the ability to save can be required multiple times in a single session (because the game can be restarted without rebooting, and a subsequent game might beat an existing high score).
How big is the file containing the highscore/save data ? If the file is a fixed size, then writing its contents without ProDOS resident is actually pretty straightforward, assuming you have a loader program that has access to ProDOS beforehand, and you store save data in its own file.
1. Get the current prefix with a GET_PREFIX call
2. Open the directory file and locate the file entry for the save file.
3. grab the key block pointer from the file entry
4. Use a SmartPort/Block device call to load the key block into memory
The key block contains a sequential list of all the blocks used to store the files data. This assumes of course, that the file is > 512 bytes and < 128k. If it is < 512 bytes, you're in luck, the key block *is* the files data. I seriously doubt any file you'd need to worry about is > 128k. If it was, it's definitely too hard to do without ProDOS.
I expect most game titles don't have much of an operating system at all, and just save their data by dumping a bit of memory to disk sectors/blocks/tracks. Once you have your save files block list, reading/writing the data using SmartPort calls is pretty easy, and you can throw ProDOS away. Your resident read/write routines + the key block should be well under a kilobyte - within spitting distance of the size of RWTS :-)
Obviously it's a few hours work to throw together a loader that can do all this stuff, but it seems to me the technique could throw the door open to just about any single-load title, and with some obvious extensions, a few multi-load ones as well.
Matt
Also, Martin Haye has figured out how to relocate prodos out of main memory for anyone who needs to do that sort of thing. :)

-B
Michael 'AppleWin Debugger Dev'
2016-01-07 23:45:14 UTC
Reply
Permalink
Raw Message
Post by BLuRry
Also, Martin Haye has figured out how to relocate prodos out of main memory for anyone who needs to do that sort of thing. :)
Oh? Link please! :)
BLuRry
2016-01-08 02:29:49 UTC
Reply
Permalink
Raw Message
Post by Michael 'AppleWin Debugger Dev'
Post by BLuRry
Also, Martin Haye has figured out how to relocate prodos out of main memory for anyone who needs to do that sort of thing. :)
Oh? Link please! :)
Look at the memory manager for Lawless Legends, starting around line 70 or so.
https://github.com/badvision/lawless-legends/blob/master/Platform/Apple/virtual/src/core/mem.s

-B
mdj
2016-01-08 04:19:39 UTC
Reply
Permalink
Raw Message
Post by BLuRry
Look at the memory manager for Lawless Legends, starting around line 70 or so.
https://github.com/badvision/lawless-legends/blob/master/Platform/Apple/virtual/src/core/mem.s
Interesting. What's the value in LL moving ProDOS to Auxiliary memory ? I've looked at doing this in the past, but primarily because I'm a RamWorks nutter, and moving it to Aux space makes a lot more sense when you have many auxilary banks to play with.

Matt
BLuRry
2016-01-08 15:57:39 UTC
Reply
Permalink
Raw Message
Post by mdj
Post by BLuRry
Look at the memory manager for Lawless Legends, starting around line 70 or so.
https://github.com/badvision/lawless-legends/blob/master/Platform/Apple/virtual/src/core/mem.s
Interesting. What's the value in LL moving ProDOS to Auxiliary memory ? I've looked at doing this in the past, but primarily because I'm a RamWorks nutter, and moving it to Aux space makes a lot more sense when you have many auxilary banks to play with.
Matt
The raycaster routine is a gigantic unrolled loop (how else is it so fast? ;) So to make room for it and all the graphics, Martin moves Prodos out of the way. Aux bank is used for all of the Plasma code. Basically the memory allocation scheme can be summarized like this: "I drink your milkshake. I DRINK IT UP." We use every scrap of memory we can get, and eventually will expand it further to take advantage of RamWorks and/or slinky cards.

In most cases, data is allocated and deallocated on the fly, so having large contiguous regions of memory to work with presents many advantages. Our engine reads from disk less often than Ultima V when you walk around the map. :D
g***@sasktel.net
2016-01-08 04:22:31 UTC
Reply
Permalink
Raw Message
Post by BLuRry
Post by Michael 'AppleWin Debugger Dev'
Post by BLuRry
Also, Martin Haye has figured out how to relocate prodos out of main memory for anyone who needs to do that sort of thing. :)
Oh? Link please! :)
Look at the memory manager for Lawless Legends, starting around line 70 or so.
https://github.com/badvision/lawless-legends/blob/master/Platform/Apple/virtual/src/core/mem.s
-B
It is unnecessary to copy Prodos over to Aux LC. The same thing can be done by implementing the same patches in the Prodos Global page, but with the softswitches to enable Main LC instead and keep the Aux LC turned on while the program is running. The Main zero page and stack would have to be copied over to the Aux zero page though.

And calls made to ROM would still work the same way except that now all references to READ/WRITE LC refer to the Aux mems LC which is where the program would be running from.

He does have an interesting way of flipping softswitches that I have not seen before, using INCrement instead of a STA or LDA.
Steve Nickolas
2016-01-08 11:54:09 UTC
Reply
Permalink
Raw Message
Post by g***@sasktel.net
It is unnecessary to copy Prodos over to Aux LC. The same thing can be
done by implementing the same patches in the Prodos Global page, but
with the softswitches to enable Main LC instead and keep the Aux LC
turned on while the program is running. The Main zero page and stack
would have to be copied over to the Aux zero page though.
And calls made to ROM would still work the same way except that now all
references to READ/WRITE LC refer to the Aux mems LC which is where the
program would be running from.
I thought maybe this method could be useful for porting 64K non-DOS MECC
software (Odell Lake, Word Munchers, Number Munchers but NOT Oregon Trail
or Fraction Munchers as the former demands too much of a DOS 3.3
filesystem and the latter needs 128K).

Disable the check for 128K and always assume only 64K - then use the AUX
LC memory for stuff above 48K. Not sure how doable that may be.

-uso.
Michael 'AppleWin Debugger Dev'
2016-01-09 07:30:19 UTC
Reply
Permalink
Raw Message
On Thursday, January 7, 2016 at 6:29:50 PM UTC-8, BLuRry wrote:

Much appreciated Blurry!

That Plasma doc is an enjoyable read!
https://github.com/badvision/lawless-legends/tree/master/Platform/Apple/tools/PLASMA

Great to see byte-code and a threaded interpreter aren't dead !
David Schmenk
2016-01-09 18:37:13 UTC
Reply
Permalink
Raw Message
Post by Michael 'AppleWin Debugger Dev'
Much appreciated Blurry!
That Plasma doc is an enjoyable read!
https://github.com/badvision/lawless-legends/tree/master/Platform/Apple/tools/PLASMA
Great to see byte-code and a threaded interpreter aren't dead !
I've kept the documentation on the main PLASMA site more up-to-date. Hopefully a better read:

https://github.com/dschmenk/PLASMA

Dave...
qkumba
2016-01-14 19:21:56 UTC
Reply
Permalink
Raw Message
Spider Raid - single file with title screen - is on Asimov.
I included the initial orange screen that it displays, but the effect isn't quite right. I should have blitted it instead of unpacking it. I might revisit it.
Jerome Vernet
2016-01-14 21:30:47 UTC
Reply
Permalink
Raw Message
Post by qkumba
Spider Raid - single file with title screen - is on Asimov.
I included the initial orange screen that it displays, but the effect
isn't quite right.
I should have blitted it instead of unpacking it. I might revisit it.
Is there a central place where we can dowload all these PRODOS converted
game (or a list of all AII games that can be installed and launched from
an HD ?)

On Asimov, it's dispatched everywhere... I found one time an url where
some where listed and downloadable, but lost it, there is also some HD
image or whatisthegs have also some 3.5 disk images.


JV
qkumba
2016-01-16 03:52:22 UTC
Reply
Permalink
Raw Message
Post by Jerome Vernet
Is there a central place where we can dowload all these PRODOS converted
game (or a list of all AII games that can be installed and launched from
an HD ?)
On Asimov, it's dispatched everywhere... I found one time an url where
some where listed and downloadable, but lost it, there is also some HD
image or whatisthegs have also some 3.5 disk images.
In my case, searching Asimov's site_index.txt file for the string "PRODOS (san inc" will reveal them.
While they are distributed across various locations on Asimov, at least you'll have the complete paths.
Beyond that, I don't know of any dedicated collections.
qkumba
2016-03-10 00:29:09 UTC
Reply
Permalink
Raw Message
Puck Man 14k file is in Asimov /incoming.
Turn your monitor sideways?
mmphosis
2016-03-11 16:42:10 UTC
Reply
Permalink
Raw Message
Post by qkumba
Puck Man 14k file is in Asimov /incoming.
Turn your monitor sideways?
Yes, turn your monitor sideways.

Loading Image...
qkumba
2016-04-11 16:41:10 UTC
Reply
Permalink
Raw Message
Flight Simulator 1 8k file is in Asimov /incoming.
Antoine Vignau
2016-04-11 22:17:18 UTC
Reply
Permalink
Raw Message
Thank you, qkumba!
qkumba
2016-04-25 22:05:29 UTC
Reply
Permalink
Raw Message
After a looong fight with it, Impossible Mission ProDOS version is now in Asimov /incoming!
Yes, a 64kb multi-file game that runs in 64kb of RAM, and hard-disk installable, too.
This one shows the end sequence (it even talks if you win!), and saves the scores if the disk is write-enabled.

There's an ugly transition between the title screen and the game screen because I ran out of memory. To avoid it would require either more memory or uncompressed files on disk. At least it's short.

Time to revisit Airheart for ProDOS...
Antoine Vignau
2016-04-26 12:02:17 UTC
Reply
Permalink
Raw Message
Congratus <= I ran out of space too ;-)
av
qkumba
2016-04-27 21:34:16 UTC
Reply
Permalink
Raw Message
Hungryboy 10k file is in Asimov /incoming.
qkumba
2016-05-18 18:01:29 UTC
Reply
Permalink
Raw Message
Brainteaser Boulevard 11k file is in Asimov /incoming.
qkumba
2016-06-03 18:49:59 UTC
Reply
Permalink
Raw Message
Spy's Demise 8k file, with support for saving high scores, is in Asimov /incoming.
Antoine Vignau
2016-06-03 19:56:03 UTC
Reply
Permalink
Raw Message
Qkumba is still #1!
qkumba
2016-06-06 18:21:05 UTC
Reply
Permalink
Raw Message
Post by Antoine Vignau
Qkumba is still #1!
:-)
Pooyan 15k file, with the title screen, is in Asimov /incoming.
qkumba
2016-06-15 14:12:01 UTC
Reply
Permalink
Raw Message
Airheart is in Asimov /incoming!
Yes, a fully ProDOS version, running from hard disk, with saving high scores.
Antoine Vignau
2016-06-15 18:42:00 UTC
Reply
Permalink
Raw Message
Post by qkumba
Airheart is in Asimov /incoming!
Yes, a fully ProDOS version, running from hard disk, with saving high scores.
Ouch, what is above #1?
David Schmenk
2016-06-15 23:26:42 UTC
Reply
Permalink
Raw Message
Post by Antoine Vignau
Post by qkumba
Airheart is in Asimov /incoming!
Yes, a fully ProDOS version, running from hard disk, with saving high scores.
Ouch, what is above #1?
#0, of course.
Oliver Schmidt
2016-06-17 19:35:24 UTC
Reply
Permalink
Raw Message
Post by qkumba
Airheart is in Asimov /incoming!
Yes, a fully ProDOS version, running from hard disk, with saving high scores.
Wow !

qkumba
2016-01-07 16:14:53 UTC
Reply
Permalink
Raw Message
Post by mdj
How big is the file containing the highscore/save data ? If the file is a fixed size, then writing its contents without ProDOS resident is actually pretty straightforward, assuming you have a loader program that has access to ProDOS beforehand, and you store save data in its own file.
Yes, I realized afterwards that your idea might be possible, but the game isn't a true single-loader - the highscores are read into memory before being updated and then written out again. Presumably, the overwritten content is also read back again later. Still, it's worth investigating further.
Steve Nickolas
2016-01-06 05:09:18 UTC
Reply
Permalink
Raw Message
Post by qkumba
Post by BLuRry
Post by qkumba
Post by BLuRry
The European name for RadWarrior was Antirad, if that helps. :)
4am just gave me a present, so I have it now.
As I say to my kids: Sharing is caring. :D
Radwarrior in two files is in Asimov /incoming.
Post by BLuRry
Post by qkumba
Post by BLuRry
As for Airheart, I can help you identify the memory usage if needed. Alternatively it might be possible to shove the game into slinky ram and replace the disk routines with much-smaller ram transfer routines. Of course bank-switched AUX such as RamWorks is also a possibility but I have a RamFactor so my bias is blatant and obvious. ;)
I said 256k as a neat multiple. As I showed in my write-up, the disk is really full, and all of it is read. 128k for game+16k for ProDOS writing is probably more accurate.
I'm willing to bet that it doesn't use compression, so there's probably a good chance at improving on that quite a bit. Not that you have PKZip as an option but it goes down to 84k from 140k with that algorithm. Exomizer or the LZ5 packer that Martin Haye uses might be good avenues.
The problem is to decompress the data somewhere in a non-destructive way (i.e. the compressed data can't be overwritten because it must be needed again later).
Post by BLuRry
There's always a way, especially when everyone else says there isn't. ;)
Yes, but it would require ripping apart the game to see what's used when.
Reclaiming 16kb is a big ask, and all that just to save the high scores.
As with my (never 100% completed) 128K Lode Runner, I ditched the ability
to save scores, plus the editor, in order to "ram" the whole game into
memory. ;)

Actually, one thing wracked my brain that, if I could solve it, I bet I
could get Arkanoid to fit into single load (multifile). There's only 33
levels, and they're small, so they should easily fit into the auxiliary
memory, but there's some weird sort of caching system I never quite
figured out.

-uso.
g***@sasktel.net
2016-01-08 00:10:34 UTC
Reply
Permalink
Raw Message
Post by Steve Nickolas
Post by qkumba
Post by BLuRry
Post by qkumba
Post by BLuRry
The European name for RadWarrior was Antirad, if that helps. :)
4am just gave me a present, so I have it now.
As I say to my kids: Sharing is caring. :D
Radwarrior in two files is in Asimov /incoming.
Post by BLuRry
Post by qkumba
Post by BLuRry
As for Airheart, I can help you identify the memory usage if needed. Alternatively it might be possible to shove the game into slinky ram and replace the disk routines with much-smaller ram transfer routines. Of course bank-switched AUX such as RamWorks is also a possibility but I have a RamFactor so my bias is blatant and obvious. ;)
I said 256k as a neat multiple. As I showed in my write-up, the disk is really full, and all of it is read. 128k for game+16k for ProDOS writing is probably more accurate.
I'm willing to bet that it doesn't use compression, so there's probably a good chance at improving on that quite a bit. Not that you have PKZip as an option but it goes down to 84k from 140k with that algorithm. Exomizer or the LZ5 packer that Martin Haye uses might be good avenues.
The problem is to decompress the data somewhere in a non-destructive way (i.e. the compressed data can't be overwritten because it must be needed again later).
Post by BLuRry
There's always a way, especially when everyone else says there isn't. ;)
Yes, but it would require ripping apart the game to see what's used when.
Reclaiming 16kb is a big ask, and all that just to save the high scores.
As with my (never 100% completed) 128K Lode Runner, I ditched the ability
to save scores, plus the editor, in order to "ram" the whole game into
memory. ;)
Actually, one thing wracked my brain that, if I could solve it, I bet I
could get Arkanoid to fit into single load (multifile). There's only 33
levels, and they're small, so they should easily fit into the auxiliary
memory, but there's some weird sort of caching system I never quite
figured out.
-uso.
Have you ever used Aux Language Card for storing data, Steve? As long as the program doesn't need ROM or Prodos, the LC is very easy to switch over to and, read and write, data, without the headache of using the Auxiliary lower 48k.
Steve Nickolas
2016-01-08 01:43:51 UTC
Reply
Permalink
Raw Message
Post by g***@sasktel.net
Have you ever used Aux Language Card for storing data, Steve? As long
as the program doesn't need ROM or Prodos, the LC is very easy to switch
over to and, read and write, data, without the headache of using the
Auxiliary lower 48k.
I try to avoid using that part of memory - if I can, I pretend it doesn't
exist, as well as the extra 4K on the main LC, and tha I only have 108K.

Keeps things simpler in my mind.

-uso.
BLuRry
2016-01-06 07:05:38 UTC
Reply
Permalink
Raw Message
Post by qkumba
Post by BLuRry
Post by qkumba
Post by BLuRry
The European name for RadWarrior was Antirad, if that helps. :)
4am just gave me a present, so I have it now.
As I say to my kids: Sharing is caring. :D
Radwarrior in two files is in Asimov /incoming.
Post by BLuRry
Post by qkumba
Post by BLuRry
As for Airheart, I can help you identify the memory usage if needed. Alternatively it might be possible to shove the game into slinky ram and replace the disk routines with much-smaller ram transfer routines. Of course bank-switched AUX such as RamWorks is also a possibility but I have a RamFactor so my bias is blatant and obvious. ;)
I said 256k as a neat multiple. As I showed in my write-up, the disk is really full, and all of it is read. 128k for game+16k for ProDOS writing is probably more accurate.
I'm willing to bet that it doesn't use compression, so there's probably a good chance at improving on that quite a bit. Not that you have PKZip as an option but it goes down to 84k from 140k with that algorithm. Exomizer or the LZ5 packer that Martin Haye uses might be good avenues.
The problem is to decompress the data somewhere in a non-destructive way (i.e. the compressed data can't be overwritten because it must be needed again later).
Post by BLuRry
There's always a way, especially when everyone else says there isn't. ;)
Yes, but it would require ripping apart the game to see what's used when.
Reclaiming 16kb is a big ask, and all that just to save the high scores.
Would it help to point out that you can watch active memory in Jace? I would need to adapt it for aux vs main memory though. I know that airheart uses EVERYTHING including all LC banks in Main and Aux.
BLuRry
2016-01-06 21:07:00 UTC
Reply
Permalink
Raw Message
Post by qkumba
Post by BLuRry
Post by qkumba
Post by BLuRry
The European name for RadWarrior was Antirad, if that helps. :)
4am just gave me a present, so I have it now.
As I say to my kids: Sharing is caring. :D
Radwarrior in two files is in Asimov /incoming.
Post by BLuRry
Post by qkumba
Post by BLuRry
As for Airheart, I can help you identify the memory usage if needed. Alternatively it might be possible to shove the game into slinky ram and replace the disk routines with much-smaller ram transfer routines. Of course bank-switched AUX such as RamWorks is also a possibility but I have a RamFactor so my bias is blatant and obvious. ;)
I said 256k as a neat multiple. As I showed in my write-up, the disk is really full, and all of it is read. 128k for game+16k for ProDOS writing is probably more accurate.
I'm willing to bet that it doesn't use compression, so there's probably a good chance at improving on that quite a bit. Not that you have PKZip as an option but it goes down to 84k from 140k with that algorithm. Exomizer or the LZ5 packer that Martin Haye uses might be good avenues.
The problem is to decompress the data somewhere in a non-destructive way (i.e. the compressed data can't be overwritten because it must be needed again later).
Post by BLuRry
There's always a way, especially when everyone else says there isn't. ;)
Yes, but it would require ripping apart the game to see what's used when.
Reclaiming 16kb is a big ask, and all that just to save the high scores.
Confirmed that RadWarrior works from a mass-storage volume as well. This is quite a treat for one massive gaming volume that all works over VSDrive:
- All apple crunch single load games (converted back to BIN), all start from super selector
- All prodos conversions working: Bolo, Neuromancer, Donkey Kong, Jungle Hunt, Rad Warrior, Karateka, Ultima 3 (Deckard's prodos conversion), Zork Zero, Mr. Do

Is there any luck you guys have had (or need help with) converting these to Prodos?
-Marble Madness
-Spare Change
-Boulderdash (and or Construction Set)
-Lode Runner
-Summer, Winter, and/or California games
-Blazing Paddles
-Music Construction Kit

In exchange I could probably be easily motivated to add Uthernet-II or real serial port support to Jace. Or pick some other feature you want.
Steve Nickolas
2016-01-06 21:29:42 UTC
Reply
Permalink
Raw Message
Post by BLuRry
Confirmed that RadWarrior works from a mass-storage volume as well.
This is quite a treat for one massive gaming volume that all works over
- All apple crunch single load games (converted back to BIN), all start from super selector
- All prodos conversions working: Bolo, Neuromancer, Donkey Kong, Jungle
Hunt, Rad Warrior, Karateka, Ultima 3 (Deckard's prodos conversion),
Zork Zero, Mr. Do
Didn't Zork Zero *always* run on ProDOS?
Post by BLuRry
Is there any luck you guys have had (or need help with) converting these to Prodos?
-Marble Madness
-Spare Change
-Boulderdash (and or Construction Set)
-Lode Runner
-Summer, Winter, and/or California games
-Blazing Paddles
-Music Construction Kit
I know Lode Runner can be done, though I tried making it single load, and
never got the high scores (as I intended them to be) fully disabled, or
(more ideally) converted to sit in RAM.

Getting Qix (only 128K game I've done) to run on ProDOS was just luck.

-uso.
BLuRry
2016-01-06 22:06:34 UTC
Reply
Permalink
Raw Message
Post by Steve Nickolas
Post by BLuRry
Confirmed that RadWarrior works from a mass-storage volume as well.
This is quite a treat for one massive gaming volume that all works over
- All apple crunch single load games (converted back to BIN), all start
from super selector
- All prodos conversions working: Bolo, Neuromancer, Donkey Kong, Jungle
Hunt, Rad Warrior, Karateka, Ultima 3 (Deckard's prodos conversion),
Zork Zero, Mr. Do
Didn't Zork Zero *always* run on ProDOS?
Post by BLuRry
Is there any luck you guys have had (or need help with) converting these to Prodos?
-Marble Madness
-Spare Change
-Boulderdash (and or Construction Set)
-Lode Runner
-Summer, Winter, and/or California games
-Blazing Paddles
-Music Construction Kit
I know Lode Runner can be done, though I tried making it single load, and
never got the high scores (as I intended them to be) fully disabled, or
(more ideally) converted to sit in RAM.
Getting Qix (only 128K game I've done) to run on ProDOS was just luck.
-uso.
Yes, but the 5.25 version didn't lend itself to hard disk installation AFAIK. Anyway, it also works over vsdrive. :)

I should also note that in the memory viewer of Jace you can see the most recent 5 instructions that accessed or wrote to a given memory location. So for example if you are trying to track down RWTS locations...
m***@libero.it
2015-08-21 07:38:42 UTC
Reply
Permalink
Raw Message
Post by sicklittlemonkey
Post by Don Bruder
So it's presumptuous to assume that a device exists, since, unless it
did, there would be no way (at the time the game was "current", anyway)
to have the code that was making the assumption in RAM to begin with?
But it's writing to slots it didn't load from and hasn't checked the device ID's of.
Cheers,
Nick.
Nick: do you remember the Sky Travel post? That program fiddle with a specific GS softswitch without checking. Who is without sin...

Marco
sicklittlemonkey
2015-08-22 08:14:50 UTC
Reply
Permalink
Raw Message
Post by m***@libero.it
Nick: do you remember the Sky Travel post? That program fiddle with a specific GS softswitch without checking. Who is without sin...
Yeah, but at least that was a motherboard softswitch defined on the IIgs and mapped to the speaker in earlier models. Safe compared to unknown slot I/O registers.

Cheers,
Nick.
fadden
2015-08-16 01:26:40 UTC
Reply
Permalink
Raw Message
Post by qkumba
Yes, this is a known issue. Both of them try to display text page 2 for the joystick calibration. I don't know how to make it display properly. Both MAME and KEGS behave similarly.
Is this https://en.wikipedia.org/wiki/Apple_II_graphics#.22Alternate_Display_Mode.22_on_the_Apple_IIGS ?
Loading...