Results 1 to 5 of 5

Thread: Retrogame #1 -- Paku Paku

  1. #1

    Paku Paku - Version 1.6 -- 9 November 2011

    *** UPDATE *** version 1.6 released

    Adding early stages of general MIDI and MT-32 support. (still very WIP, but cool none-the-less)

    Official Site Page:
    http://www.deathshadow.com/pakuPaku

    Version History
    http://www.deathshadow.com/pakuPaku_Revisions
    (massive changes in 1.6)

    Direct Download links:
    http://www.deathshadow.com/downloads/paku_1_6.rar (59k)
    http://www.deathshadow.com/downloads/paku_1_6.zip (67k)

    Preview image:

    Click for Larger (1024x768 - 17.1k)


    Play it Live with jDOSBox (requires java)
    http://www.deathshadow.com/pakuPakuLive

    I've begun working on a number of retrogames -- old school DOS games written using Turbo Pascal 7 and assembly, leveraging many modern tools and using DosBox as the testing environment...

    But here's the catch... the target minimum system? a 128K 4.77mhz CGA equpped 8088... as in the real deal, genuine hardware. Basically I want these games to work on everything from a modern octa-core monster inside DosBox right down to the original IBM 5150 circa 1982.

    The first part was how to handle the graphics -- let's face it, 4 color CGA SUCKS -- but there is the 'undocumented' 160x100 16 color mode. Problem with that is EGA/VGA support, but after investigating I found one solution that was OK... so I expanded it with a big of my EGA knowledge to work almost perfectly on newer cards. The unit I created to handle that ended up being my entry into the 2011 Retrochallenge "winter warmup"

    I took that unit and ran with it to make a pac-man ripoff... which in the past five days has gone from 1.0 to 1.3 as various bits got swapped around and optimized (lowering the system requirements from a 8mhz AT back down to my original target).

    Includes the full TP7 source code, a readme file in HTML, etc, etc...

    Here's some screencaps of it in it's 160x100 16 color glory.

    changes from 1.2 to 1.3:

    1. Added Joystick Support
    2. Tracking of five most recent high scores
    3. Saving of high scores to disk
    4. New font renderer uses less memory and sped up menu.
    5. Fixed bug with MCGA detecting as VGA
    6. Fixed audio 'buzz' on PS/2 speakers
    7. Fixed PC Jr. blink/intensity not being set right (maybe)
    8. Memory footprint down to 67k

    System Requirements
    4.77mhz or faster 8088
    128k of RAM (67,584 bytes free in DOS)
    CGA,Tandy/PcJr, EGA or VGA video

    System Recommendations
    Tandy/PcJr, C/MS Game Blaster
    or Adlib sound

    Enjoy.

    Some screenshots:

    Joystick Calibration

    Click for larger View (800x500)


    New Main Menu

    Click for larger View (800x500)


    Gameplay

    Click for larger View (800x500)


    Of course I feel like a right stupid twit -- been promoting the game on various sites for days, and who do I forget to even mention it on? A PASCAL GAME FORUM that I've been a member of for years... DOH!

    Had several people comment on how hard it must be to work in such a low resolution -- which is funny because for me 160x100 is high resolution compared to the 128x48 of the Trash-80 Model 1 or the 128x96 of the TRS-80 Coco. (sure the coco could do 128x192, but it was too slow for anything with more than two or three sprites). Hey, if 160x96 was good enough for the Intellivision to be entertaining, why not?

    Oh, and if anyone has suggestions -- particularly spots where I could speed up the code I'd love to hear it... or if anything just go over my adlib support, which is pretty dodgy. (while my Tandy/Jr Sound and C/MS support is spot-on)
    Last edited by deathshadow; 09-11-2011 at 07:11 AM. Reason: New version update
    The accessibility of a website from time to time must be refreshed with the blood of designers and owners. It is its natural manure

  2. #2
    Wow! That looks absolutely filled with juicy, retro-filled goodness! I'm going to have to try it

    Keep up the excellent work mate

    cheers,
    Paul

  3. #3
    PGDCE Developer de_jean_7777's Avatar
    Join Date
    Nov 2006
    Location
    Bosnia and Herzegovina (Herzegovina)
    Posts
    287
    Man, this reminds me of my TP days. Awesome stuff.
    Existence is pain

  4. #4
    The only words is wow and awesome... Keep it going.
    Theory is - when you know everything but nothing works.
    Practice is - when all works, but you don't know why.
    We combine theory and practice - nothing works and nobody knows why

  5. #5
    As the edit to the first post says, version 1.6 released, this time adding MT-32 and other GM device support. The MIDI sound is still a bit rough, and if the synth you send to doesn't support a 24 semitone pitch-bender range it's outright disastrous, but still shows a lot of promise.

    Keeping the executable size under control proved interesting, I never realized Turbo Pascal's WRITE/WRITELN commands were so wasteful on memory... but I'm probably one of the few people trying to keep a 128k machine with DOS 3.2 as a viable minimum target.

    Biggest under-the-hood change came from my having various lists now run as pointers to objects instead.

    Lazy Game Reviews put out a youtube video about it last week too... where he mentions the CMS/Game Blaster support not working on his blaster 1.5 -- I think I tracked down that bug to my using word-width writes to handle register/data pairings, and not sending the 'enable chip' bit set after each note out... worked on a 1.0, but not a 1.5 and not on 286/higher. I think the narrower bus on the 8088 is what was making the word-width port outputs function properly. (since high/+1 goes first).
    The accessibility of a website from time to time must be refreshed with the blood of designers and owners. It is its natural manure

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •