Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.sys.apple2 > #26138

Re: new DOS ports

Newsgroups comp.sys.apple2
Date 2015-11-04 00:05 -0800
References (13 earlier) <ed4ba36a-cbd7-4dd3-85c9-34515f65a506@googlegroups.com> <84167619-1bba-47f1-b39a-ed3e8db9b4bb@googlegroups.com> <58c1e595-bda5-40f9-aef0-47bd60de3abf@googlegroups.com> <47e82294-9ec0-4445-9d5c-bdc60c517ca8@googlegroups.com> <e3e060e9-3aa2-4448-bb57-ddb4e413fda1@googlegroups.com>
Message-ID <96a5e78f-85c3-4d99-ac4c-e5d9dae05b15@googlegroups.com> (permalink)
Subject Re: new DOS ports
From John Brooks <jbrooks@blueshiftinc.com>

Show all headers | View raw


On Tuesday, November 3, 2015 at 8:38:50 PM UTC-8, qkumba wrote:
> > Wow, that's impressive! I'm curious what methods you used to got a 140k disk to fit in a 32k file if you don't mind sharing.
> 
> All of my file versions follow the same procedure - isolate the loaded regions and save them as files, compress the files with aPLib (hybrid LZ+RLE packer on the PC with good ratio - Bolo's title screen went from 8kb to ~900 bytes), and then write a wrapper that reads from the regular file system and unpacks the files on demand.  My aPLib unpacker and DOS filesystem parser are freely available from my website.
> 
> Depending on how much memory is available for the wrapper usually determines which OSes I can support - DOS needs around 5 pages, ProDOS needs around 3 pages, unless I get very creative about how consecutive the pages have to be.  So, Karateka will probably only ever be a ProDOS version; Goonies might get a DOS version eventually.  If there's a need for write support (e.g. Swashbuckler, Aquatron), then ProDOS is the way to go, because it doesn't need more pages, but DOS would require another 3.
> 
> In the case of Mr. Do, my original file version used 7 individual files.  For the single-file version, I just appended them and changed the wrapper to put them directly into aux memory.  Start-up is really slow now because it's loading so much before it displays anything, but after that it runs fairly well.  There is a very unattractive transition between the demo and the title which I don't have space to fix, but otherwise it plays like the original.
> 
> I don't keep the wrapper sources around, since they are specific to one game each, and once I think that I'm done, I discard them.  The difficulty arises when I get a special request after that point, as in this case, which requires me to reverse-engineer my own stuff. :-)
> 
> I have detailed descriptions of some other conversions (The Toy Shop, Prince of Persia, and Conan) on my website (see the Apple II section), which might be of interest to you.

Very nice!

If you are interested in making smaller files or faster decompression than aPLib, you might look at a nibble-based system. Instead of aPLib's bit-encoding and fixed bit allocation for literal len vs RLE/match len vs match offset, allow the bit allocation of literals vs runs/matches to vary based on the frequency characteristics of the data being encoded. Discussion here:

http://cbloomrants.blogspot.com/2012/09/09-13-12-lznib.html

I liked your writeup on Conan. I remember playing it quite a bit growing up, but I don't think I got as far in the game as you did. Conan, Bruce Lee, and Dig Dug were the Apple ][ games which influenced me to join Datasoft's engineering team in 1987. Oh and the ray-cast texture mapping they were doing for Alternate Reality.  :)

>  Start-up is really slow now because it's loading so much before it displays anything, but after that it runs fairly well.

But with a small 32k file, doesn't that only take a couple seconds to load? I'd expect your single-file version to load faster than the original since you've drastically reduced the amount of slow disk I/O.

-JB

Back to comp.sys.apple2 | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

Re: new DOS ports qkumba <peter.ferrie@gmail.com> - 2015-08-21 19:23 -0700
  Re: new DOS ports Steve Nickolas <usotsuki@buric.co> - 2015-08-22 05:08 +0200
    Re: new DOS ports Jorma Honkanen <jormahonkanen@gmail.com> - 2015-08-21 22:26 -0700
      Re: new DOS ports Antoine Vignau <antoine.vignau@laposte.net> - 2015-08-21 23:51 -0700
      Re: new DOS ports qkumba <peter.ferrie@gmail.com> - 2015-08-29 21:19 -0700
        Re: new DOS ports Jorma Honkanen <jormahonkanen@gmail.com> - 2015-08-30 00:22 -0700
          Re: new DOS ports qkumba <peter.ferrie@gmail.com> - 2015-08-30 06:41 -0700
            Re: new DOS ports Jorma Honkanen <jormahonkanen@gmail.com> - 2015-08-30 09:31 -0700
              Re: new DOS ports qkumba <peter.ferrie@gmail.com> - 2015-08-31 14:58 -0700
                Re: new DOS ports qkumba <peter.ferrie@gmail.com> - 2015-11-02 13:11 -0800
                Re: new DOS ports Steve Nickolas <usotsuki@buric.co> - 2015-11-02 23:01 +0100
                Re: new DOS ports Steve Nickolas <usotsuki@buric.co> - 2015-11-03 10:03 +0100
                Re: new DOS ports qkumba <peter.ferrie@gmail.com> - 2015-11-03 16:20 -0800
                Re: new DOS ports bpiltz@gmail.com - 2015-11-02 15:16 -0800
                Re: new DOS ports qkumba <peter.ferrie@gmail.com> - 2015-11-03 16:23 -0800
                Re: new DOS ports John Brooks <jbrooks@blueshiftinc.com> - 2015-11-03 16:40 -0800
                Re: new DOS ports qkumba <peter.ferrie@gmail.com> - 2015-11-03 16:59 -0800
                Re: new DOS ports John Brooks <jbrooks@blueshiftinc.com> - 2015-11-03 18:15 -0800
                Re: new DOS ports qkumba <peter.ferrie@gmail.com> - 2015-11-03 20:38 -0800
                Re: new DOS ports John Brooks <jbrooks@blueshiftinc.com> - 2015-11-04 00:05 -0800
                Re: new DOS ports qkumba <peter.ferrie@gmail.com> - 2015-11-04 08:29 -0800
                Re: new DOS ports sicklittlemonkey <nick.westgate@gmail.com> - 2015-11-04 13:31 -0800
                Re: new DOS ports Steve Nickolas <usotsuki@buric.co> - 2015-11-05 03:14 +0100
                Re: new DOS ports gids.rs@sasktel.net - 2015-11-05 16:55 -0800
                Re: new DOS ports Steve Nickolas <usotsuki@buric.co> - 2015-11-06 02:00 +0100
                Re: new DOS ports gids.rs@sasktel.net - 2015-11-06 14:34 -0800
                Re: new DOS ports Steve Nickolas <usotsuki@buric.co> - 2015-11-07 02:19 +0100
                Re: new DOS ports Jorma Honkanen <jormahonkanen@gmail.com> - 2015-11-10 21:24 -0800
                Re: new DOS ports Jorma Honkanen <jormahonkanen@gmail.com> - 2015-11-18 01:34 -0800
                Re: new DOS ports qkumba <peter.ferrie@gmail.com> - 2015-11-18 08:22 -0800
                Re: new DOS ports qkumba <peter.ferrie@gmail.com> - 2015-11-18 10:08 -0800
                Re: new DOS ports J. Random Hacker <jrh@fake.com> - 2015-11-18 12:34 -0700
                Re: new DOS ports qkumba <peter.ferrie@gmail.com> - 2015-11-18 22:49 -0800
                Re: new DOS ports qkumba <peter.ferrie@gmail.com> - 2015-11-19 09:45 -0800
                Re: new DOS ports Jorma Honkanen <jormahonkanen@gmail.com> - 2015-11-20 02:12 -0800
                Re: new DOS ports qkumba <peter.ferrie@gmail.com> - 2015-12-13 07:57 -0800
                Re: new DOS ports qkumba <peter.ferrie@gmail.com> - 2016-01-01 08:49 -0800
                Re: new DOS ports qkumba <peter.ferrie@gmail.com> - 2016-01-05 20:29 -0800
                Re: new DOS ports BLuRry <brendan.robert@gmail.com> - 2016-01-06 07:15 -0800
                Re: new DOS ports "Michael 'AppleWin Debugger Dev'" <michael.pohoreski@gmail.com> - 2016-01-07 15:39 -0800
                Re: new DOS ports qkumba <peter.ferrie@gmail.com> - 2016-01-08 08:29 -0800
                Re: new DOS ports bpiltz@gmail.com - 2015-11-03 18:04 -0800

csiph-web