home bbs files messages ]

Forums before death by AOL, social media and spammers... "We can't have nice things"

   comp.sys.apple2      Discussion about Apple II micros      56,720 messages   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]

   Message 55,979 of 56,720   
   Colin Leroy-Mira to All   
   Re: In need of help understanding cc65's   
   22 Dec 22 12:06:52   
   
   From: colin@colino.net   
      
   Hi again Oliver,   
      
   > There's no point in having a target definition (-t apple2) beside a   
   > linker configuration file on a link-only command line.   
   >   
   > In general, there's no need for separate compile and link command   
   > lines when just generating a program from a single source file.   
      
   Thanks a lot for your last reply, it makes things more clear. I'm   
   coming back to this point. I'm having difficulties understanding what   
   I'm doing wrong. I'm trying to make things as simple as possible, so I   
   can compile my example program this way:   
      
   cl65 -t apple2 -I../../lib normal.c ../../lib/extended_conio.c \   
    -o normal.bin   
      
   This works.   
      
   Now, if I want to pass a linker configuration file, I'm using:   
   cl65 -t apple2 -C apple2.cfg -I../../lib \   
    normal.c ../../lib/extended_conio.c  -o normal.bin   
      
   I use both -t and -C because if removing -t apple2, I'm getting errors   
   which makes me think it's trying to compile for c64? :   
      
   /usr/share/cc65/include/apple2.h(41): Error: #error: This module may   
   only be used when compiling for the Apple ][!   
   /usr/share/cc65/include/apple2_filetype.h(40): Error: #error: This   
   module may only be used when compiling for the Apple ][!   
   /usr/share/cc65/include/c64.h(84): Error: Macro redefinition is not   
   identical /usr/share/cc65/include/c64.h(85): Error: Macro redefinition   
   is not identical [...]   
      
   Lastly, if I pass both -t and -C, it seems -C is ignored, which seems   
   kind of logical, because the resulting files are identical:   
      
   $ cl65 -t apple2 -C apple2.cfg -I../../lib \   
    normal.c ../../lib/extended_conio.c -o normal.bin   
      
   $ cl65 -t apple2 -C loader.cfg -I../../lib \   
    normal.c ../../lib/extended_conio.c -o himem.bin   
      
   $ sha1sum *.bin   
    40325c9c9d481cf5510f7bcf07e2612dd03d5fa4  himem.bin   
    40325c9c9d481cf5510f7bcf07e2612dd03d5fa4  normal.bin   
      
   (The differences between apple2.cfg and loader.cfg are:   
   -    __HIMEM__:     type = weak, value = $9600; # Presumed RAM end   
   +    __HIMEM__:     type = weak, value = $BF00; # Presumed RAM end   
      
   Thanks!   
   --   
   Colin Leroy-Mira   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]


(c) 1994,  bbs@darkrealms.ca