|
Atari coding BBS
Re: Multiple Drive Check |
Posted by: ggn
|
Oct,27.2012-18:11
|
Oh boy, loading systems! Can I play? :D
If you are totally decided you're going to use GEMDOS for loading files off floppy disks, there are a few things worth considering:
- "Drive %S: is not responding.|Please check the disk drive,|or insert a disk.". Imagine the player spending 1-2 hours in the game, finishing a few levels, and when it's time to load the next one, the screen displays a black box with black letters that displays the above message. And of course the user will be unable to read the text. Or move the mouse (you'll probably have disabled that). Or even press Return to try reading the disk again (you'll probably have redirected the IKBD vector). The game will freeze and there'll be no other option than the user resetting the machine. Oops! Not good!
- "Please insert disk %S|into drive A:.". Same deal as the above more or less, because GEMDOS will report that drive B exists even though none is connected.
- When you create your disks make sure to format them using a disk formatter and not use steem's blank images (for example). For more explanations see http://dhs.nu/bbs-coding/index.php?request=3034
- Force media change detect: See http://dhs.nu/bbs-coding/index.php?request=3044
I suppose the last 2 points are minor and can be worked around with some code (I guess the 2nd point too). But the first one is a bit worrying IMHO. If you care for it, your choices of overcoming this are a bit limited. The first solution is to have the game load from auto folder. GEM is not loaded in this case, so if gemdos reaches a disk error, it'll simply bail out with a negative exit code which you can trap and deal with.
The second solution is to use a DMA file loader. (I'm not sure if you're familiar with this, so to put it into simple words, it's a small piece of code that reads the disk's FAT directly, parses it, finds the file you want to load and loads the clusters, all without using GEMDOS at all. You have the added bonus of not having to be dependent on the O/S at all for disk access and scan both drives for the requested file)
Of course this all applies to floppies. On hard disk you're safe from all those problems (well, unless the hard drive starts having bad sectors!), but I'd like to point out that you have to be really really really really careful to have timer C running at the exact state as you find it. Otherwise really nasty things can occur :).
I guess that's about it - I'll get off my soapbox now and crawl back to my corner :).
|
[All messages in this thread] [Start new thread]
Topic
|
Posted by
|
Date
|
Multiple Drive Check
|
Bod/STAX
|
Oct,26.2012-20:54
|
Re: Multiple Drive Check
|
AdamK
|
Oct,26.2012-21:43
|
Re: Multiple Drive Check
|
defjam
|
Oct,27.2012-08:09
|
Re: Multiple Drive Check
|
Bod/STAX
|
Oct,27.2012-11:03
|
Re: Multiple Drive Check
|
Simon Sunnyboy / Paradize
|
Oct,27.2012-12:06
|
Re: Multiple Drive Check
|
Bod/STAX
|
Oct,27.2012-14:24
|
Re: Multiple Drive Check
|
ggn
|
Oct,27.2012-18:11
|
Re: Multiple Drive Check
|
Bod/STAX
|
Oct,27.2012-20:20
|
Re: Multiple Drive Check
|
ggn
|
Oct,27.2012-21:46
|
Re: Multiple Drive Check
|
evil
|
Oct,27.2012-22:18
|
Re: Multiple Drive Check
|
Bod/STAX
|
Oct,28.2012-15:36
|
What's the anti-troll code? That's your personal code to be able to add comments and messages on the dhs.nu site.
Don't have a code or forgot it? Fix it here.
|