Jump to content
IGNORED

Altirra Question


TGB1718

Recommended Posts

There is a possibility that they are not SpartaDOS, I used to 'tinker' with most DOS's to see if they could operate at high speed too,

I did manage this with SmartDos and possibly others, so it may be my boot code is fouling things up.

 

Unfortunately I have lost most of the code I wrote due to a lot of my floppys degrading so badly they are unreadable.

 

I'll try your reccomendation and use a 'real' ROM

we have become very good at reading the unreadable disks, please allow one of us to recover your data, preferably with a Super card pro owner or Kryoflux owner, the next choice would be someone who has modified drives or double headed drives (like the xf) to pull the data with the typical gentle disk clean up and of course clean polished drive heads.

 

There are several threads full of tips on how and what to do also

Edited by _The Doctor__
Link to comment
Share on other sites

So... I wonder what old version of SIO2PC software created these bad ATR's then?

 

Would be ironic if Nick Kennedy's own software strayed from the spec, but then again, reading this page about the early developments, double density support was added incrementally, and he was still figuring out how to do UltraSpeed.. ( circa 1992-1995)

http://pages.suddenlink.net/wa5bdu/readme.txt

Link to comment
Share on other sites

I've just added support for this aberrant DD ATR in the U1MB/Incognito PBI BIOS, which previously only supported no padding and a correct paragraph count, or 384 bytes of padding directly after the boot sectors. It now supports those two, plus the unusual type under discussion, and DD ATRs where each boot sector is followed by 128 bytes of padding. I think that should cover it. :)

 

The sector count was also off by one for (fortunately fairly uncommon) DD ATRs with the 394 bytes of padding. I've fixed that as well.

  • Like 2
Link to comment
Share on other sites

I wrote a small Python script to scan all of the double-density ATR images in the AtariOnline.pl collection, and the result is interesting:

  199x     183952      718.5 111111 f:\a8\arch\0-9\64 Figury\64 Figury (2011)(Blue Kitten Software)(PL)(PD).atr
   17x     184336      720.0 000000 f:\a8\utils\C. Emulatory\Apple II emulator\Apple II disc (s1).atr
   15x     183952      718.5 000111 f:\a8\arch\A\AtariBlast!\AtariBlast! (2016-09-10)(Lay, Paul - Kong Tin, Harvey - Szpilowski, Michał)(US)(Side B)[1088k].atr
    9x     184336      720.0 111000 f:\a8\arch\inne\Lords Of Time;Dungeon Adenture;Return to Eden;Colossal Adventure;Adventure Quest.atr
    8x     368272     1438.5 111111 f:\a8\arch\B\Booby Jackpot\Booby Jackpot (2015-09-21)(Animkomials)(PL)(en).atr
    3x     183952      718.5 100111 f:\a8\arch\A\Archers, The\Archers, The (1986)(Mosaic Publishing)(GB)(Part 1, Part 2).atr
    3x     409232     1598.5 111111 f:\a8\arch\D\Duszpasterz Jan Rzygoń\Duszpasterz Jan Rzygoń (2016-01-02)(Mgr. Inz. Rafal)(PL).atr
    2x     654992     2558.5 100101 f:\a8\arch\C\CoreWars\CoreWars v1.0 (-)(-)(-).atr
    2x     736912     2878.5 111111 f:\a8\utils\2. Grafika\TIP Animator anims for extended memory\buzzed_576k.atr
    2x     183952      718.5 111101 f:\a8\utils\4. Programowanie\Action!\Action! Demos (s1).atr
    2x     368272     1438.5 110000 f:\a8\utils\4. Programowanie\Turbo Basic XL\Turbo Basic XL 2.0 (v3).atr
    1x     368272     1438.5 100111 f:\a8\arch\A\AtariBlast!\AtariBlast! (2016-09-10)(Lay, Paul - Kong Tin, Harvey - Szpilowski, Michał)(US)[1088k].atr
    1x     183954      718.5 111111 f:\a8\arch\B\Beata\Beata (-)(-)(-)(Side A)[preview].atr
    1x     184336      720.0 111010 f:\a8\arch\L\Lords of Time\Lords of Time (1983)(Level 9 Computing)(GB)[a].atr
    1x     265872     1038.5 111111 f:\a8\arch\P\Pang (TeBe - Vidol - Ooz - Rocky - stRing)\Pang v4.5 (2016-12-15)(TeBe - Vidol - Ooz - Rocky - stRing)(PL)(en)[Req 256k][stereo].atr
    1x     183952      718.5 111000 f:\a8\arch\T\TLC\TLC (2010)(Samar Productions)(PL)(en)[128k].atr
    1x     183952      718.5 110101 f:\a8\utils\1. Biuro\ASCII ATASCII Converter\ASCII ATASCII Converter v1.2 (2015-08-13)(fujidude)(-)[Req SpartaDOS X].atr
    1x     511632     1998.5 111111 f:\a8\utils\2. Grafika\GR Finder\GR Finder 0.75.atr
    1x     183952      718.5 000000 f:\a8\utils\B. Rozne\blank disc 180 kB.atr

Columns are: count, file size in bytes, paragraph size converted to 256-byte sector count, bitmap contents of the first six 128 byte slots, and the first file encountered with that signature.

 

The first thing we can conclude is that the packed, non-padded case of just 3 x 128 bytes for the boot sectors and a half-sector sized file is the most common case. These have a mask starting with 111 and a sector count with an extra half (N+0.5).

 

Second, the weird form of 3 x 128b boot sectors + 3 x 128b padding, and a whole sector sized file, is not as common but present in non-trivial quantities. These have a mask of 111000 and a whole-integer sector count.

 

Then... we have the interesting entry #2, the disk images from the awesome hack called the Apple II emulator. These are converted Apple II disks with 256 byte sectors. The sectors are aligned to 16+256*N in the file, so this must interpret the first three sectors as full 256 byte. So here's the third interpretation. These have a whole-integer sector count with any possible mask.

 

In Altirra's source code, these three forms are given the designations of default, really screwed up, and fubar. Atari800 uses the slightly more descriptive terms logical, SIO2PC, and physical.

 

Now, in the case of the Apple II converted disks, the first 6 x 128 bytes are all zero (bitmap mask of 000000), so either of the last two interpretations will work as there is no difference. But then, there is another gem hiding in this list, the Lords of Time disk with the bitmap 111010. As it turns out, the correct interpretation of the boot sectors on this disk image is 3 x 256b, it will not boot with either 3 x 128b form. That makes this essentially the counter-case of the image that started this thread, and one that is probably the hardest to distinguish. Same file size (184336 bytes), same sector size (256 bytes), same paragraph count ($2D00), and zeroes in the last few sectors of the file. So here's a case where a hide-the-zeroes heuristic fails, this image has non-zero data in an area that is not visible as readable sector data.

 

 

atrscan.zip

  • Like 5
Link to comment
Share on other sites

Candle in 2011: I guess we make a proprietary image format for the PBI BIOS and a conversion tool, since ATRs are so awkward to handle? Unless you think they can be dealt with directly?

FJC: Hold my beer.

 

God... what a mess. :) But what a useful and illuminating tool. Such pragmatic analysis is long overdue.

 

Likely my implementation will fall on its ass in the face of the Apple II variation (I will try it and see), but at least the others are handled (including the 'padding at the back' type).

  • Like 2
Link to comment
Share on other sites

Wow, never thought my little question would involve such detecive work, nice work :-D

At least, it uncovered a major bug in RespeQt when dealing with ATRs.

Edit: Thanks to flashjazzcat for pointing me to it.

Edited by JoSch
  • Like 1
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...