mirror of
https://github.com/cc65/cc65.git
synced 2025-02-12 21:31:10 +00:00
Added libray to none target
This commit is contained in:
parent
fc5bf3f5e8
commit
b08839cac4
@ -302,23 +302,20 @@ also forcing a BRK instruction into the CPU.
|
|||||||
<sect>Custom Run-Time Library Creation<p>
|
<sect>Custom Run-Time Library Creation<p>
|
||||||
|
|
||||||
The next step in customizing the cc65 toolset is creating a run-time
|
The next step in customizing the cc65 toolset is creating a run-time
|
||||||
library for the targeted hardware. The easiest way to do this is to
|
library for the targeted hardware. The recommended way to do this is to
|
||||||
modify a standard library from the cc65 distribution. In this example,
|
modify the platform-independent standard library of the cc65 distribution.
|
||||||
there is no console I/O, mouse, joystick, etc. in the system, so it is
|
It is named "none.lib" in the lib directory of the distribution.
|
||||||
most appropriate to use the simplest library as the base, which is for
|
|
||||||
the Watara Supervision and is named "supervision.lib" in the
|
|
||||||
lib directory of the distribution.
|
|
||||||
|
|
||||||
The only modification required is to replace the <tt>crt0</tt> module in
|
When using "none.lib" we need to supply our own <tt>crt0<tt>
|
||||||
the supervision.lib library with custom startup code. This is simply
|
module with custom startup code. This is simply done by first copying the
|
||||||
done by first copying the library and giving it a new name, compiling
|
the library and giving it a new name, compiling the startup code with ca65,
|
||||||
the startup code with ca65, and finally using the ar65 archiver to
|
and finally using the ar65 archiver to add the module to the new library.
|
||||||
replace the module in the new library. The steps are shown below:
|
The steps are shown below:
|
||||||
|
|
||||||
<tscreen><verb>
|
<tscreen><verb>
|
||||||
$ copy "C:\Program Files\cc65\lib\supervision.lib" sbc.lib
|
cp /usr/local/share/cc65/lib/none.lib sbc.lib
|
||||||
$ ca65 crt0.s
|
ca65 crt0.s
|
||||||
$ ar65 a sbc.lib crt0.o
|
ar65 a sbc.lib crt0.o
|
||||||
</verb></tscreen>
|
</verb></tscreen>
|
||||||
|
|
||||||
<sect>Interrupt Service Routine Definition<p>
|
<sect>Interrupt Service Routine Definition<p>
|
||||||
@ -706,14 +703,14 @@ that can be used as the initialization data for the Xilinx Block RAM
|
|||||||
used for code storage:
|
used for code storage:
|
||||||
|
|
||||||
<tscreen><verb>
|
<tscreen><verb>
|
||||||
$ cc65 -t none -O --cpu 65sc02 main.c
|
cc65 -t none -O --cpu 65sc02 main.c
|
||||||
$ ca65 --cpu 65sc02 main.s
|
ca65 --cpu 65sc02 main.s
|
||||||
$ ca65 --cpu 65sc02 rs232_tx.s
|
ca65 --cpu 65sc02 rs232_tx.s
|
||||||
$ ca65 --cpu 65sc02 interrupt.s
|
ca65 --cpu 65sc02 interrupt.s
|
||||||
$ ca65 --cpu 65sc02 vectors.s
|
ca65 --cpu 65sc02 vectors.s
|
||||||
$ ca65 --cpu 65sc02 wait.s
|
ca65 --cpu 65sc02 wait.s
|
||||||
$ ld65 -C sbc.cfg -m main.map interrupt.o vectors.o wait.o rs232_tx.o
|
ld65 -C sbc.cfg -m main.map interrupt.o vectors.o wait.o
|
||||||
main.o sbc.lib
|
rs232_tx.o main.o sbc.lib
|
||||||
</verb></tscreen>
|
</verb></tscreen>
|
||||||
|
|
||||||
During the C-level code compilation phase (<tt>cc65</tt>), assumptions
|
During the C-level code compilation phase (<tt>cc65</tt>), assumptions
|
||||||
|
@ -32,7 +32,8 @@ TARGETS = apple2 \
|
|||||||
sim6502 \
|
sim6502 \
|
||||||
sim65c02 \
|
sim65c02 \
|
||||||
supervision \
|
supervision \
|
||||||
telestrat
|
telestrat \
|
||||||
|
none
|
||||||
|
|
||||||
DRVTYPES = emd \
|
DRVTYPES = emd \
|
||||||
joy \
|
joy \
|
||||||
|
Loading…
x
Reference in New Issue
Block a user