mirror of
https://github.com/cc65/cc65.git
synced 2024-12-23 04:30:10 +00:00
commit
82f55a930a
@ -73,7 +73,7 @@ system takes care of actually moving the code into the Language Card.
|
||||
|
||||
The amount of memory available in the Language Card for generated code depends
|
||||
on the <ref id="link-configs" name="linker configuration"> parameters. There are
|
||||
several usefull settings:
|
||||
several useful settings:
|
||||
|
||||
<descrip>
|
||||
|
||||
|
@ -73,7 +73,7 @@ system takes care of actually moving the code into the Language Card.
|
||||
|
||||
The amount of memory available in the Language Card for generated code depends
|
||||
on the <ref id="link-configs" name="linker configuration"> parameters. There are
|
||||
several usefull settings:
|
||||
several useful settings:
|
||||
|
||||
<descrip>
|
||||
|
||||
|
@ -131,7 +131,7 @@ With the default load address of $2400 this gives a usable memory range o
|
||||
[$2400-$CFFF].
|
||||
|
||||
Please note that the first load chunk (which checks the system
|
||||
compatibilty and available memory) will always be loaded at
|
||||
compatibility and available memory) will always be loaded at
|
||||
$2E00, regardless of the specified start address. This address
|
||||
can only be changed by a custom linker config file.
|
||||
|
||||
@ -305,7 +305,7 @@ The names are the usual ones you can find in system reference manuals. Example:
|
||||
...
|
||||
</verb></tscreen>
|
||||
|
||||
Please note that memory location 762/$2FA is called "<tt/char_/" while the orignal name "<tt/char/" conflicts with the C keyword.
|
||||
Please note that memory location 762/$2FA is called "<tt/char_/" while the original name "<tt/char/" conflicts with the C keyword.
|
||||
|
||||
If you like to use the OS names and locations for the original Atari 800 operating system, please "<tt/#define OSA/" before including the
|
||||
<tt/atari.h/ header file.
|
||||
@ -401,7 +401,7 @@ OS.sdlst = &DisplayList;
|
||||
...
|
||||
</verb></tscreen>
|
||||
|
||||
Please inspect the <tt/_antic.h/ header file to detemine the supported
|
||||
Please inspect the <tt/_antic.h/ header file to determine the supported
|
||||
instruction names. Modifiers on instructions can be nested without need
|
||||
for an order:
|
||||
|
||||
@ -410,7 +410,7 @@ for an order:
|
||||
Please mind that ANTIC has memory alignment requirements for "player
|
||||
missile graphics"-data, font data, display lists and screen memory. Creation
|
||||
of a special linker configuration with appropriate aligned segments and
|
||||
switching to that segment in the c-code is usually neccessary. A more memory
|
||||
switching to that segment in the c-code is usually necessary. A more memory
|
||||
hungry solution consists in using the "<tt/posix_memalign()/" function in
|
||||
conjunction with copying your data to the allocated memory.
|
||||
|
||||
@ -1146,8 +1146,8 @@ ld65: Error: Missing memory area assignment for segment 'MAINHDR'
|
||||
</verb></tscreen>
|
||||
|
||||
The old "HEADER" memory description contained six bytes: $FFFF
|
||||
and the first and last memory addess of the program. For the "system
|
||||
check" load chunk this had to be split into two memory assigments. The
|
||||
and the first and last memory address of the program. For the "system
|
||||
check" load chunk this had to be split into two memory assignments The
|
||||
"HEADER" now only contains the $FFFF. The main program's first
|
||||
and last memory address were moved to a new segment, called "MAINHDR",
|
||||
which in the new linker config file goes into its own memory area (also
|
||||
|
@ -237,7 +237,7 @@ The runtime library provides a default game name which is "cc65
|
||||
compiled". To change that, one has to link a file which puts data into
|
||||
the "<tt/CARTNAME/" segment.
|
||||
|
||||
For reference, here's the default version used by the cc65 libary:
|
||||
For reference, here's the default version used by the cc65 library:
|
||||
<tscreen><verb>
|
||||
.export __CART_NAME__: absolute = 1
|
||||
.macpack atari
|
||||
|
@ -301,7 +301,7 @@ Here is a description of all the command line options:
|
||||
compiler, see there for a list.
|
||||
|
||||
Depending on the target, the default CPU type is also set. This can be
|
||||
overriden by using the <tt/<ref id="option--cpu" name="--cpu">/ option.
|
||||
overridden by using the <tt/<ref id="option--cpu" name="--cpu">/ option.
|
||||
|
||||
|
||||
<label id="option-v">
|
||||
|
@ -395,7 +395,7 @@ Here is a description of all the command line options:
|
||||
|
||||
This option is used to set the target system. The target system determines
|
||||
the character set that is used for strings and character constants and the
|
||||
default CPU. The CPU setting can be overriden by use of the <tt/<ref
|
||||
default CPU. The CPU setting can be overridden by use of the <tt/<ref
|
||||
id="option--cpu" name="--cpu">/ option.
|
||||
|
||||
The following target systems are supported:
|
||||
@ -1250,7 +1250,7 @@ parameter with the <tt/#pragma/.
|
||||
|
||||
This pragma is used to display informational messages at compile-time.
|
||||
|
||||
The message intented to be displayed must be a string literal.
|
||||
The message intended to be displayed must be a string literal.
|
||||
|
||||
Example:
|
||||
<tscreen><verb>
|
||||
@ -1369,7 +1369,7 @@ parameter with the <tt/#pragma/.
|
||||
Switch compiler warnings on or off. "name" is the name of a warning (see the
|
||||
<tt/<ref name="-W" id="option-W">/ compiler option for a list). The name is
|
||||
followed either by "pop", which restores the last pushed state, or by "on" or
|
||||
"off", optionally preceeded by "push" to push the current state before
|
||||
"off", optionally preceded by "push" to push the current state before
|
||||
changing it.
|
||||
|
||||
Example:
|
||||
|
@ -57,11 +57,11 @@ Short options:
|
||||
-O Optimize code
|
||||
-Oi Optimize code, inline more code
|
||||
-Or Optimize code, honour the register keyword
|
||||
-Os Optimize code, inline standard funtions
|
||||
-Os Optimize code, inline standard functions
|
||||
-S Compile but don't assemble and link
|
||||
-T Include source as comment
|
||||
-V Print the version number
|
||||
-W name[,...] Supress compiler warnings
|
||||
-W name[,...] Suppress compiler warnings
|
||||
-Wa options Pass options to the assembler
|
||||
-Wc options Pass options to the compiler
|
||||
-Wl options Pass options to the linker
|
||||
|
@ -235,12 +235,12 @@ things to be different from runtime loading:
|
||||
|
||||
<item> Without changing the segment names, all segments take the default
|
||||
names used by the standard linker configurations. This means that the
|
||||
driver code is no longer contingous in memory, instead the code
|
||||
driver code is no longer contiguous in memory, instead the code
|
||||
segment is placed somewhere in between all other code segments, the
|
||||
data segment is placed with all other data segments and so on. If the
|
||||
driver doesn't do strange things this shouldn't be a problem.
|
||||
|
||||
<item> With statically linked code, data and bss segments will get intialized
|
||||
<item> With statically linked code, data and bss segments will get initialized
|
||||
once (when the application is loaded), while a loadable driver will
|
||||
get its initialization each time the driver is loaded into memory
|
||||
(which may be more than once in the lifetime of a program). It depends
|
||||
|
@ -59,7 +59,7 @@ slower than the same code for unsigned types.
|
||||
|
||||
<sect>Use chars instead of ints if possible<p>
|
||||
|
||||
While in arithmetic operations, chars are immidiately promoted to ints, they
|
||||
While in arithmetic operations, chars are immediately promoted to ints, they
|
||||
are passed as chars in parameter lists and are accessed as chars in variables.
|
||||
The code generated is usually not much smaller, but it is faster, since
|
||||
accessing chars is faster. For several operations, the generated code may be
|
||||
|
@ -156,7 +156,7 @@ Here is a description of all the command line options:
|
||||
<tag><tt>-i name, --info name</tt></tag>
|
||||
|
||||
Specify an info file. The info file contains global options that may
|
||||
override or replace command line options plus informations about the code
|
||||
override or replace command line options plus information about the code
|
||||
that has to be disassembled. See the separate section <ref id="infofile"
|
||||
name="Info File Format">.
|
||||
|
||||
|
@ -39,7 +39,7 @@ transfer the program to the real machine until it is done.
|
||||
|
||||
<item>An emulator allows many things that are almost impossible one of the
|
||||
original machines. You may set watchpoints (detect read or write access to
|
||||
arbitary addresses), debug interrupt handlers and even debug routines that run
|
||||
arbitrary addresses), debug interrupt handlers and even debug routines that run
|
||||
inside the 1541 floppy.
|
||||
|
||||
<item>You may use the label file generated by the linker to make much more use
|
||||
@ -117,7 +117,7 @@ these warnings and errors as long as they reference any problems VICE thinks
|
||||
it has with the labels.
|
||||
|
||||
After loading the labels, they are used by VICE in the disassembler listing,
|
||||
and you may use them whereever you need to specify an address. Try
|
||||
and you may use them wherever you need to specify an address. Try
|
||||
|
||||
<tscreen><verb>
|
||||
d ._main
|
||||
@ -138,7 +138,7 @@ load your label file like this:
|
||||
</verb></tscreen>
|
||||
|
||||
After loading the labels, they are used by Oricutron in the disassembler listing,
|
||||
and you may use them whereever you need to specify an address. Try
|
||||
and you may use them wherever you need to specify an address. Try
|
||||
|
||||
<tscreen><verb>
|
||||
d ._main
|
||||
|
@ -207,7 +207,7 @@ see them together in the filling box in GeoPaint.
|
||||
<p>
|
||||
<tt/void GraphicsString (const void *myGString)/
|
||||
<p>
|
||||
One of the more powerfull routines of GEOS. This function calls other graphic functions depending
|
||||
One of the more powerful routines of GEOS. This function calls other graphic functions depending
|
||||
on the given command string. See the structures chapter for a more detailed description.
|
||||
|
||||
<sect2>Rectangle functions
|
||||
@ -652,7 +652,7 @@ For some purposes you might consider using the <tt/dio.h/ interface to disk acce
|
||||
<p>
|
||||
All GEOS disk functions return an error code in the X register. In some cases this is returned by the
|
||||
GEOSLib function (if its type is <tt/char/), but in all cases the last error is saved in the <tt/__oserror/
|
||||
location. If it is nonzero - an error occured. See <tt/gdisk.h/ for the list of possible errorcodes.
|
||||
location. If it is nonzero - an error occurred. See <tt/gdisk.h/ for the list of possible errorcodes.
|
||||
You need to include <tt/errno.h/ to get <tt/__oserror/, together with the standard <tt/errno/. The
|
||||
latter gives less verbose, but still usable information and can be used with <tt/strerror/.
|
||||
Probably you will get more information using <tt/_stroserror/ in a similar way.
|
||||
|
@ -7,7 +7,7 @@
|
||||
<url url="mailto:greg.king5@verizon.net" name="Greg King">
|
||||
|
||||
<abstract>
|
||||
This document describes a compiler that can create GEOS headers and menues for
|
||||
This document describes a compiler that can create GEOS headers and menus for
|
||||
cc65-compiled programs.
|
||||
</abstract>
|
||||
|
||||
@ -24,7 +24,7 @@ Optional resources might be menu definitions, other headers (e.g., for data
|
||||
files of an app.), dialog definitions, etc. Without an application's header,
|
||||
GEOS is unable to load and start it.
|
||||
|
||||
Currently, <bf/grc65/ supports only menues and the required header definition,
|
||||
Currently, <bf/grc65/ supports only menus and the required header definition,
|
||||
along with support for building applications with VLIR-structured overlays.
|
||||
|
||||
<bf/grc65/ generates output in two formats: C header and <bf/ca65/ source (.s).
|
||||
@ -345,7 +345,7 @@ for addresses.
|
||||
<!-- <appendix> -->
|
||||
<sect>Appendix A -- example.grc<label id="example-grc">
|
||||
<p><tscreen><verb>
|
||||
; Note that MENU can define both menues and submenues.
|
||||
; Note that MENU can define both menus and submenus.
|
||||
; If you want to use any C operators (such as "|", "&", etc.), do it WITHOUT
|
||||
; any spaces between the arguments (the parser is simple and weak).
|
||||
|
||||
|
@ -555,7 +555,7 @@ feature on.
|
||||
</quote>
|
||||
|
||||
<quote>
|
||||
In VICE, got to <bf/Settings/ -> <bf/Settings/, then <bf/Peripherial devices/ ->
|
||||
In VICE, got to <bf/Settings/ -> <bf/Settings/, then <bf/Peripheral devices/ ->
|
||||
<bf/Drive/. Then, you must enable the <bf/True drive emulation/ checkbox.
|
||||
</quote>
|
||||
|
||||
|
@ -886,7 +886,7 @@ also for a segment. The value must be an integer between 0 and 255. It is used
|
||||
as the fill value for space reserved by the assembler's <tt/.ALIGN/ and <tt/.RES/
|
||||
commands. It is also used as the fill value for space between sections (part of a
|
||||
segment that comes from one object file) caused by alignment, but not for
|
||||
space that preceeds the first section.
|
||||
space that precedes the first section.
|
||||
|
||||
To suppress the warning, the linker issues if it encounters a segment that is
|
||||
not found in any of the input files, use "<tt/optional=yes/" as an additional
|
||||
|
@ -85,7 +85,7 @@ Please note:
|
||||
<item> The macro '<tt>SMC_StoreValue</tt>' takes care, that the store
|
||||
operation will occur on the value-position of a SMC-instruction. As
|
||||
you will see, other macros influence other instruction part positions.
|
||||
There is no consistency check, if the targeted SMC instruction acually
|
||||
There is no consistency check, if the targeted SMC instruction actually
|
||||
contains a value. Storing a 'value' on an immplied SMC instruction
|
||||
would corrupt the following memory cell!
|
||||
</enum>
|
||||
@ -582,7 +582,7 @@ into a single instruction line. These can be changed of course too.
|
||||
Line 10,11: These lines construct a branch operation for line 8: The
|
||||
X-register will be used to change it from 'inc StoreAccuFirstSection+2'
|
||||
(high-byte operation) to 'beq restoreCode'. Please note: To calculate the
|
||||
relaive branch offset, we introduced a second label
|
||||
relative branch offset, we introduced a second label
|
||||
('RestoreCodeBranchBaseAdr') for to calculate it. Some could also use the
|
||||
internal name of the SMC label, but you should abstain to do so - it may be
|
||||
changed in the future...
|
||||
|
@ -68,10 +68,10 @@ Platforms: Runs on all platforms that support conio, which means:
|
||||
Name: mandelbrot
|
||||
Description: A mandelbrot demo using integer arithmetic. The demo was
|
||||
written by groepaz, and converted to cc65 using TGI graphics
|
||||
by Stephan Haubenthal.
|
||||
by Stefan Haubenthal.
|
||||
Platforms: Runs on all platforms that have TGI support:
|
||||
Apple ][, Atari, C64, C128, Oric Atmos and Telestrat, GEOS,
|
||||
NES, and Lynx.
|
||||
and NES.
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
Name: mousedemo
|
||||
|
Loading…
Reference in New Issue
Block a user