About my hard disk driver SW

Started by Petari, 30-11-2024, 11:38:08

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Petari

  About my hard disk driver SW:
I work on this for some 17 years. Intention was/is to make easy to use, with some useful extra features, low RAM consuming (ASM code) and very important: compatible driver/partitioner SW. With what good old Atari ST(E) SW works well. As it is mostly for floppies, some changes my be needed in SW, code for hard disk work. More compatible driver - less changes needed. Then, easy data transfer with modern computers is very useful, especially since Internet time. Atari TOS developers went actually on DOS compatible format with floppies and hard disks in filesystem (FAT12 and FAT16). However it is not 100% compatible. Everyone can see it if looks with Hex viewer some disk image - Intel byte order is used, while CPU 68000 is not such (normal byte order by numbers). As I did looot of 'adapting for hard disk' - mostly games, I have really big experience about usual SW, and how hard disk driver needs to work. See lower for more details.
Started with Atari ST hard disks since 1992 - then designed IDE adapter and used it with 40 MB 3.5 inch drive - my first hard disk. As driver I used AHDI driver by Atari . Later used 2.5 inch IDE drives, capacity in range 80-160 MB . And I learned in short time that is worth to make multiple partitions, with size under 32 MB, because then they are DOS compatible, so was able to access them with PC with DOS, Windows. That was good for file transfers . My Atari ST activity lowered, as I used mostly PC for work, playing new games on much faster computer, 3D graphic cards arrived, and Internet too . One of things what I spent more time around 1999-2000 was making images of all my Atari floppies, and save them to hard disk - as images, as files for usage from hard disk. Then learned that it may need some changes in SW to make it work from hard disk. Talking not about copy protected SW. I had (and still have) some original games, but I made them to work from hard disk . For instance Microprose F1 GP - it's on 4 floppies originally. That was good experience, and I even used packing. New interest for Atari ST came by appearance of Flash cards - at around 2003 - I bough 128 MB Sandisk CF card, and Flash card with standard IDE connector (Transcend) - much more practical than those large, noisy and power hungry drives. And could connect it to PC - via USB reader. Also good emulators of Atari ST appeared on then pretty powerful PCs (CPU clock over 1 GHz, so faster than ST at least 100x ) . Steem became my favorite - and it had 2 types of hard disk emulation. And as it is relevant here, details: "Hard drives" - it is in Disk menu section, and I would call it Filesystem emulation. Now some call it GEMdrive and like - misleading , in fact it is not real hard disk emulation, or even drive - just some DIR on host computer assigned as logical drive (partition C-P) on emulated Atari ST(E) .It is based on redirecting file/DIR function calls (read, write, seek, etc) to host filesystem. And includes of course long filename conversion to 8.3 format . And because that way not all hard disk functions work - can not access hard disk specific sectors (area), as no such. And that means that SW what use such calls will not detect hard disk, and will not run properly or at all. Because it is written for regular system - with hard disk with partitions, MBR, partition locations etc. AUTO boot hard disk driver takes care about it - and it is called from TOS FAT16 filesystem handling code . In TOS is even no any code to interpret MBR and set/mount partitions - it is on driver SW . Sure, space in TOS in ROM is limited, plus it gave space for driver SW developers to solve it in diverse ways, to add some new features for better/easier usage ...
  •  

Ronald J. Hall

Thanks for the explanation, appreciated.   :)
Welcome To DarkForce! http://www.darkforce.org "The Fuji Lives.!"
Atari SW/HW based BBS - Telnet:darkforce-bbs.dyndns.org 1040
  •