Re: [cc65] CBM C-Library Features and Usecases

From: Groepaz <>
Date: 2013-02-22 17:38:12
On Friday 22 February 2013, you wrote:
> > 1. DIO [...]
> arent there cbm_ functions for this? probably thats why noone misses dio ?
> Hm, I'm missing them badly, so your statement is per definition wrong ;-))

> 1. If there are cbm_ functions for sector-level access then it should be
> pretty easy to implement DIO based on them allowing for uniform
> cross-target programming.

well no, its not that trivial.... you have to use cbm_open/write/read/close 
for sending the respective dos commands and recieving the data.

> 2. If there are cbm_ functions for sector-level access I presume they have
> track and sector as parameter. Given that the number for sectors per track
> is variable on CBM drives/DOS/<whatever is the right term here> it's not
> trivial to convert that from/to the linear sector stream in .D64 files.
> That's exactly the type of "business logic" I'd like to see encapsulated in
> the C library instead of having to deal with it as an application
> programmer.

thing is, in a typical c64 copy program for example you want to know what 
physical track/sector you are going to read/write ... if only for 
visualisation or error messages. an abstract linear layer would not only not 
be useful, but even be counterproductive at this point. not even thinking 
about how different drives have different physical layouts and how you'd have 
to support a good portion of them. that seems to be the biggest problem in the 
current approach.... there should be a way to provide a mapping for the 
application. else it must not only support detecting the drive type, but also 
deal with like 10 disc formats (counting all CBM targets and all related 


A 'hacker' is any person who derives joy from discovering ways to circumvent 
<Robert Bickford>

To unsubscribe from the list send mail to with
the string "unsubscribe cc65" in the body(!) of the mail.
Received on Fri Feb 22 17:38:15 2013

This archive was generated by hypermail 2.1.8 : 2013-02-22 17:38:18 CET