Jump to content
IGNORED

38 Years in the Making ... the Digger Dan Trilogy is now Complete!


simonh

Recommended Posts

1 minute ago, Wrathchild said:

I've trapped the entry address and dumped the memory to a file and then run it through exomizer.


exomizer sfx $2B01 -n -t 168 -Di_table_addr=$500 -Di_load_addr=$2800 -o Fungi.xex fungi.mem@$600

Here's the resulting binary:

ReturnOfTheFungi_SingleLoad.xex 16.29 kB · 1 download

 

Works here, did take longer to run than the original, but it does work...Here's hoping for the others.. Nice one Wrathchild..

Link to comment
Share on other sites

13 minutes ago, Mclaneinc said:

did take longer to run than the original

Yep, some saving on load time as now 17K instead of 37K (though on modern devices that saving is small) offset by having to decompress the data.

EXE: Loading program 0006-411E to 2800-6918
EXE: Loading program 4123-4124 to 02E0-02E1
EXE: Launching at 2800


 

  • Like 1
Link to comment
Share on other sites

32 minutes ago, tmp said:

EXE: Loading program 0006-0405 to 0800-0BFF
EXE: Loading program 040A-048E to 0600-0684

 

this might overwrite some xex loaders while they're loading the game (on real hw)

 

Correct, A8 programs using $0700-09FF are very difficult to load on real hardware, since almost no DOS, gamedos or bootloader can load them.

 

 

 

Link to comment
Share on other sites

6 minutes ago, CharlieChaplin said:

 

Correct, A8 programs using $0700-09FF are very difficult to load on real hardware, since almost no DOS, gamedos or bootloader can load them.

 

I get that but why does it work on some real machines and it gets a mixed work or not on Altirra. Surely those locations are the same no matter what machine / upgrade?

 

I understand it's down to the loader used but I thought it would be an across the board one or the other?

 

Sorry, just wanting to learn..

 

PS, or maybe it is just down to the loader and what it does and where..

Edited by Mclaneinc
Link to comment
Share on other sites

2 minutes ago, Wrathchild said:

Don't we normally conclude its the device sat at the keyboard that's erroring :D 

Indeed.... I still remember the early days of computing where the usual excuse was "the computer made a mistake", lol... That's after deducting 800 from your bank account. As we all know, it's only as good as the human fed info and programming.

Link to comment
Share on other sites

34 minutes ago, Mclaneinc said:

I get that but why does it work on some real machines and it gets a mixed work or not on Altirra. Surely those locations are the same no matter what machine / upgrade?

 

I understand it's down to the loader used but I thought it would be an across the board one or the other?

 

Sorry, just wanting to learn..

 

PS, or maybe it is just down to the loader and what it does and where..

 

Yep, you have to find a loader (DOS/GameDOS/Bootloader/...) on real hardware that does not use the memory $0700-09FF, but out of 100 you may find 5, so it is not easy. Afaik, DOS2XL by Thor has a memlo of $0794 so it could load ROTF with a starting adress of $0800 (but DOS2XL uses RAM under the OS!), it would also fail on a program that starts at $0700 however.

 

Therefore it is much easier to pack the program and use higher load and run adresses, like Wrathchild did. Some XEX loaders of our modern devices might also be able to load such a ML file, while ATR image loaders require a little more memory (or boot with the DOS/Gamedos/Bootloader on the ATR) and then may also fail loading them.

 

(My advice to programmers: Avoid using $0700-09FF with your program or use that memory area only, after the program has been fully loaded and initialized or depacked; e.g. use $B000-B2FF and after initialization or depacking move that code to $0700-09FF.)

 

Link to comment
Share on other sites

Another method that worked for me is "relocating" one segment of the ROTF file, the segment $0800-0DB2 that causes the loading problem. Lucky for us, the next segment starts at $2600, so we have some free space between those two segments.

 

There is a program named SuperCopy that can "relocate" programs or program segments, so they load fine with DOS or at least a gamedos/bootloader. Supercopy always relocates to $1F00-xxxx (max. program length $8000 or 32kbytes!) and always uses a run adress of $1F3F. So I simply put that one segment onto a disk, loaded Supercopy (load as EXE, save as FCopy, then load as FCopy, save as EXE) and created a new segment which now uses memory $1F00-25D6 and run adress 1F3F, so it just fits under the other segment that starts at $2600. Copied the relocated segment to the original program (removing the original segment) and saved it - and it seems to still load fine.

 

So here you have another version, it is still unpacked (executes faster), but should work with most loaders out there.

 

 

ROTF2.zip SupCopy.zip

  • Thanks 1
Link to comment
Share on other sites

19 hours ago, simonh said:

I am pleased to announce that, after laying dormant in a scrap book for more than three decades, the original idea for my third game in the Digger Dan Trilogy -- Return of the Fungi -- has been dusted off, developed, and has now been released as an Atari 800 48K binary (.xex). You can download the game as part of a Bundle that includes all three games (Diamonds, and Dan Strikes Back being the other two), in addition to full documentation for all three games that you can load into your web browser.

 

The bundle is being hosted by RetroUnite here:  After 35 years, Return of the Fungi finally completes the Digger Dan trilogy

 

fore-rotf-sketch.thumb.png.5dc4b7da4ab9febeebd1f2991ad3cec2.png

Wow - what a great game, huge thanks for completing the trilogy! 

 

I was a huge fan of the first two games "back in the day" - this is a really excellent conclusion!

 

sTeVE

  • Like 2
Link to comment
Share on other sites

On 9/21/2021 at 5:29 AM, CharlieChaplin said:

Another method that worked for me is "relocating" one segment of the ROTF file, the segment $0800-0DB2 that causes the loading problem. Lucky for us, the next segment starts at $2600, so we have some free space between those two segments.

 

@CharlieChaplin -Thanks for making the relocated version. I could not run the original version on my Ultimate Cart. 
 

Bob C

Link to comment
Share on other sites

2 hours ago, darwinmac said:

@CharlieChaplin -Thanks for making the relocated version. I could not run the original version on my Ultimate Cart. 
 

Bob C

I'll have to give it a try too.  Original part 3 ran (but with corrupted graphics) on Altirra, and wouldn't load at all on my 600XL w/64K upgrade and FujiNet.  In the meantime 1 & 3 run great on my 600XL!

Link to comment
Share on other sites

10 hours ago, nadir said:

I'll have to give it a try too.  Original part 3 ran (but with corrupted graphics) on Altirra, and wouldn't load at all on my 600XL w/64K upgrade and FujiNet.  In the meantime 1 & 3 run great on my 600XL!

Make that 1 & 2...  For some reason I can't seem to edit my post to fix that typo...

Link to comment
Share on other sites

Hey all, thanks for all the positivity surrounding this -- it was a real pleasure to play my own small role in all of this happening, even if it was just through making some videos about Atari games I like!

 

Simon will be along a little later to make an "official" announcement but I just wanted to let you know that there's a new official build of the bundle that should fix the issues some of you have been having. Stop by https://retrounite.co.uk/return-of-the-fungi-digger-dan-trilogy-simon-hunt/ and download the new version of the bundle if you've been having problems, and that should hopefully sort you out!

  • Thanks 1
Link to comment
Share on other sites

Hi folks!

 

Thanks for all the detailed detective work that went into root-causing the loading issues that some folks experienced. After reviewing the analyses, I decided to officially modify and re-release the code. I have relocated the custom character set, display lists and interrupt routines to upper memory; the lowest address any segment is now loaded into is 0x2600 -- hopefully this will fix the compatibility woes that were previously experienced.

 

As @pjedavison mentioned, the new bundle (DD3-Bundle-210922.zip) is available at RetroUnite. The corrected ROTF binary is named ReturnOfTheFungi_ii.xex

 

I learned a thing or two this week!

 

Cheers,

~Simon

 

 

Edited by simonh
  • Like 2
  • Thanks 2
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...