1
0
mirror of https://github.com/cc65/cc65.git synced 2024-12-24 11:31:31 +00:00
Commit Graph

45 Commits

Author SHA1 Message Date
Christian Groessler
f091d0b3cd Merge branch 'master' of https://github.com/oliverschmidt/cc65 into cassette 2014-01-17 23:06:29 +01:00
Christian Groessler
40e49074a4 add support for 16K cartridges 2014-01-17 20:10:28 +01:00
Christian Groessler
5a404b6786 fix last change 2014-01-16 23:56:32 +01:00
Christian Groessler
94df0e8ef4 made more segments optional so that the config file can be used for assembler programs, too 2014-01-16 23:56:32 +01:00
Christian Groessler
b237bb9d9a Add support to create cartridges. 2014-01-14 22:53:49 +01:00
Christian Groessler
057884ffa9 Atari: initial support to create cassette bootable programs -- unfinished 2014-01-02 19:28:22 +01:00
Oliver Schmidt
0a8efc9fc3 Revert "Added basic frame for new target 'creativision'."
This reverts commit 8e6b8dd0af.
2013-12-05 21:45:20 +01:00
Oliver Schmidt
8e6b8dd0af Added basic frame for new target 'creativision'.
Kym Greenshields <kym.greenshields@gmail.com> has expressed interest
in contributing and maintaining support for the VTech CreatiVision system.
2013-11-25 22:52:04 +01:00
Christian Groessler
478a7679a2 Force inclusion of 'shadow RAM preparation' load chunk in crt0.s and
not in the linker config file.
2013-10-18 22:08:26 +02:00
Christian Groessler
9f44d00d17 Put EXE header and main chunk load header into a single file --
it makes no sense to be able to include/exclude them separately.
2013-10-18 14:54:22 +02:00
Christian Groessler
b153ec8896 atari-asm.cfg linker config file 2013-10-18 03:08:26 +02:00
Christian Groessler
bf3a23c34c Rename 'syschk' symbol in the linker config file, which forces inclusion
of the 'system check' load chunki, to '__SYSTEM_CHECK__'.
2013-10-18 03:08:15 +02:00
Christian Groessler
90bac9d38c rename LOWDATA segment to LOWBSS 2013-10-16 18:20:57 +02:00
Christian Groessler
1077a2876e Lower the default Atari start adress from $2E00 to $2000. With
the startup memory check of the "system check" load chunk this
should be fine
2013-10-04 01:04:06 +02:00
Christian Groessler
700fd4f187 Enable "system check" load chunk for non-XL Atari target. 2013-10-04 00:54:24 +02:00
Christian Groessler
73d38b0ff2 Fix typo in last change. 2013-10-03 14:15:39 +02:00
Christian Groessler
417110d341 Use all available memory below the ROM. 2013-10-03 14:13:13 +02:00
Christian Groessler
7fb0cf4bb2 Some formatting and style fixes. 2013-10-01 11:36:37 +02:00
Christian Groessler
39a98f250b untabify 2013-09-27 22:01:54 +02:00
Christian Groessler
c88e0818b4 Leave the character generator at $E000 like atarixl.cfg does. 2013-09-27 21:50:17 +02:00
Christian Groessler
722dbaa1aa Add comment describing the need to have the runtime library compiled
with CHARGEN_RELOC enabled.
2013-09-20 18:09:16 +02:00
Christian Groessler
b713706304 Get rid of SAVEAREA segment: fold it into LOWDATA. 2013-09-18 00:48:01 +02:00
Christian Groessler
d0c41ecee9 Default atatixl.cfg file now leaves the character generator at $E000.
This reduces the potential to flicker, but creates two separate
memory areas in the high memory.
For applications which require a large continuous memory space in
high memory, atarixl-largehimem.cfg is provided. With high IRQ
activity or DL interrupt there might be flicker.
2013-09-18 00:38:29 +02:00
Christian Groessler
42835d91b8 remove __RESERVED_MEMORY__: not supported on atarixl 2013-09-18 00:28:48 +02:00
Christian Groessler
de639fdf6a introduce SHADOW_RAM2 2013-09-18 00:27:45 +02:00
Christian Groessler
3df94fba92 introduce SHADOW_RAM2 2013-09-18 00:17:45 +02:00
Christian Groessler
85170998ad more atarixl linker cfg file cleanups; adapt atarixl-overlay.cfg 2013-09-13 21:47:39 +02:00
Christian Groessler
5caf6c8854 atarixl linker cfg file cleanups; set default load address to 400 for atarixl 2013-09-13 20:29:24 +02:00
Christian Groessler
237bb9850c Remove obsolete ZPSAVE segment. 2013-09-13 16:00:56 +02:00
Christian Groessler
8bc4b4c636 add code to add free shadow memory to heap (currently disabled) 2013-09-11 22:43:35 +02:00
Christian Groessler
21e6654524 adjust size of SRPREP to account for 1K aligned character generator
(not page aligned as I thought before)
2013-09-04 22:25:29 +02:00
Christian Groessler
405a5df431 Merge remote-tracking branch 'upstream/master' 2013-08-21 16:38:13 +02:00
Oliver Schmidt
1dab0103f1 Made EXTZP segment optional on GEOS as it is used only by CONIO. 2013-08-20 07:43:47 +02:00
Christian Groessler
d3d7499faa Remove saving and restoring of zeropage variables.
Merge remote-tracking branch 'upstream/master'

Conflicts:
	cfg/atarixl.cfg
	libsrc/atari/crt0.s
2013-07-03 11:38:28 +02:00
Christian Groessler
7ebaec1802 Don't save and restore the zero page locations used.
Saves 19 bytes code (in the exe file) and reduces memory footprint
of the program by 45 bytes (code & bss).
2013-07-02 19:55:00 +02:00
Christian Groessler
1e9823306a Merge remote-tracking branch 'upstream/master' 2013-06-28 00:49:12 +02:00
Oliver Schmidt
5edcd639e0 Made EXTZP segment option for modules.
This allows to remove the "add empty EXTZP segement to avoid warnings"
approach.
2013-06-28 00:30:24 +02:00
Christian Groessler
85dc09fd9f add LOWBUFS segment 2013-06-12 13:26:26 +02:00
Christian Groessler
164fb56580 move ZPSAVE into area already saved by 2nd load chunk 2013-05-31 01:35:19 +02:00
Christian Groessler
34cf7657e8 Add two load chunks:
- First chunk checks system (if it's XL and memory is ok).
 - Second chunk contains the contents for the shadow memory beneath the
   ROM and copies the contents to their destination address.
   It also moves the screen memory to low memory in front of the program.
2013-05-30 02:26:15 +02:00
Oliver Schmidt
7572834ebf Use cbm_load() to load overlays on CBMs. 2013-05-29 01:12:24 +02:00
Oliver Schmidt
98c47d1877 Introduced target 'atarixl'.
The target 'atarixl' is to be used for Atari XL (and better) machines.
It will disable the OS ROM and enable the Shadow RAM available on
those machine.

Note: This commit is only the inital step towards for this goal that just
replicates the target 'atari' as a starting point!
2013-05-28 21:56:37 +02:00
Oliver Schmidt
55f9e6ac25 Added 'sim6502' and 'sim65C02' targets.
The targets allow to run cc65 programs in the sim65 exection
einvironment. As there are no "real" i/o facilities there's no
need for header files. Paravirtualized entry points are mapped
to $FFF0 ff. There's a large cc65 progam area from $0200-$FFEF.

The binary format includes a one-byte header indicating the required
execution environment: The value 0 means 6502 and the value 1
means 65C02. The load adress for the binary is fixed to $0200.

Note: Running sim65C02 programs currently doesn't work bcause
sim65 doesn't actually implement 65C02 opcodes.
2013-05-20 20:35:42 +02:00
Oliver Schmidt
da255245ad Adjusted comment. 2013-04-09 23:10:35 +02:00
Oliver Schmidt
37c492b544 Replaced builtin linker configs with ordinary .cfg files.
The benefits are:
- Independency of ld65 build from perl
- More transparent behaviour
2013-04-09 23:09:46 +02:00