Re: [cc65] cl65 -t apple2 works, but cl65 -C apple2.cfg doesn't

From: Oliver Schmidt <ol.sc1web.de>
Date: 2007-09-09 16:16:50
Hi Scott,

> Unresolved external `__RAM_SIZE__' referenced in:
>  crt0.s(13)
> Unresolved external `__RAM_START__' referenced in:
>  crt0.s(13)
> ld65: Error: 2 unresolved external(s) found - cannot create output file

As Uz already pointed out some version mismatch.

> it works, and the binary produced works as long as I skip the first four 
> bytes
> (which the docs call a "DOS 3.3 header," but I don't recall such a header 
> ever
> being necessary way back when I was still using DOS 3.3,

Fortunately this fact doesn't depend on your memory ;-)

> and I suspect most
> people coding for the Apple II today are targeting ProDOS).

Maybe, maybe not. However there are two reasons for the header:

1. ProDOS binary files have no "inband" load address attribute. So one would 
need to remember it when transfering the file to ProDOS and set it correctly 
in the ProDOS directory manually - quite cumbersome.

2. There are way more Apple2 disk image tools for DOS 3.3 than for ProDOS. 
Therefore it is popular to first import the binary into a DOS 3.3 image 
(including the header) and then transfer it into a ProDOS image using some 
suitable apple2 program (which all know about the header, strip it and set 
the load address in ProDOS directory automatically) inside an emulator.

As you see the DOS 3.3 header is quite reasoned, even if the primary 
environment is ProDOS.

Best, Oliver 

----------------------------------------------------------------------
To unsubscribe from the list send mail to majordomo@musoftware.de with
the string "unsubscribe cc65" in the body(!) of the mail.
Received on Sun Sep 9 16:17:43 2007

This archive was generated by hypermail 2.1.8 : 2007-09-09 16:17:46 CEST