Re: [cc65] Atari DIO

Date view Thread view Subject view

From: Shawn Jefferson (sjefferson_at_sd62.bc.ca)
Date: 2002-10-29 00:26:59


>>Couldn't I just write into the sectsizetab * 4 * drive number?  That
>>would be easy enough.  Is there some way to reference the sectsizetab
>>from my source code?
>
>This would be what my "small assembler function" would have done. You
>cannot do it since the sectsizetab variable is invisible to C (no
>starting '_').

Ok.  Maybe I should take a crack at coding it myself.  It would be good practice.  Thanks for the tip!

>>I still think it would be nice to not have to build a separate
>>library for supporting system with more than 4 drives.  It would be
>>nice if there was some way to assign the memory for this dynamically.
>>Is there some reason that you couldn't alloc memory in dio_open for
>>each handle, and then free it in dio_close?  I guess that would
>>equate to less memory, but a little more overhead.
>
>I think the code needed to access the sectsizetab indirectly would
>increase (and complicate) the code quite a bit. So I like to stay with
>the compile time define.
>One year ago an empty Atari program was already the biggest of all
>ports. (Maybe some other port catched up in the meantime?) So I set it
>to 4 drives.

Ok.  I see that this would increase the code size by quite a lot.  Does this statically assigned table even get put in your program if you are not using the DIO routines?

>Is recompiling really such a problem?

Not for me on this project, I just picked drive numbers less than 4.  It isn't that big of a deal, just wondering if there might be a more flexible way.  The dio routines aren't a C standard library are they?  I imagine that you (cc65 conductors) are trying to maintain a platform independent api for them though?

>If yes, what do you Atari users on the list think is a good default
>value? I think 16 is the maximum possible SIO-wise, it would consume
>64 bytes :-(

The only DOS that allows 16 drives is SpartaDOS X as far as I know.  SpartaDOS 3.x allows 9 drives I think.

>How is your hard disk connected? I don't have a hd on my Atari
>(yet?).

My application (well two applications really) is meant for Bob Woolley's SmartIDE hardware.  I haven't actually built the circuit yet, but have mounted the hard drive inside my 800XL, and have a PCB layout generated.  I thought it would be nice to have the software pretty much done first.  The SmartIDE mod really is lacking a good partition manager.  Hopefully I've built one.  :)

There is an interesting project called MyIDE that looks pretty simple to build and very verstatile since you can build it in a cartridge. However I've heard that because the OS needs to be switched to RAM and then patched it will not work with SpartaDOS.  That rules it out for me, since I like Sparta.  Besides, the SmartIDE is much more than just an IDE interface, it is also a battery backed multiple RAM OS upgrade.  I'm sure you've heard of it before.



----------------------------------------------------------------------
To unsubscribe from the list send mail to majordomo_at_musoftware.de with
the string "unsubscribe cc65" in the body(!) of the mail.


Date view Thread view Subject view

This archive was generated by hypermail 2.1.3 : 2002-10-29 00:27:29 CET