1
0
mirror of https://github.com/cc65/cc65.git synced 2024-06-26 05:29:30 +00:00
Commit Graph

223 Commits

Author SHA1 Message Date
Greg King
00ab3c2d34 Fixed the target guards around the usage messages. 2019-12-30 19:53:39 -05:00
Greg King
b56ba8f073 Added real-time clock functions to the cx16 library. 2019-12-27 18:07:37 -05:00
mc78
7bae9038cf Replaced plain 0's and 1's in exit statements with EXIT_SUCCESS or EXIT_FAILURE 2019-11-19 14:08:00 +01:00
Greg King
18afc7c703 Created a target and a library for the Commander X16 prototype computer. 2019-09-27 03:38:51 -04:00
Christian Groessler
34942a2da5 atari5200: testcode/lib/atari5200/hello.c: adapt to changed COLOR_xxx defines 2019-04-12 12:49:38 +02:00
Christian Groessler
d7eecb57f8 atari5200: get rid of conio_colors table
use system color variables instead; improve testcode/lib/atari5200/hello.c
test program
2019-04-12 12:49:38 +02:00
Christian Groessler
be6bba66a9 atari5200: conio now uses just four colors altogether
See discussion in PR #870.
2019-04-12 12:49:38 +02:00
Christian Groessler
ec5e38617a atari5200: implement bgcolor() and textcolor()
Includes some other small fixes/cleanups.
2019-04-12 12:49:38 +02:00
Daniel Serpell
b03ae76b54 Add support for INITAD to the Atari binary format. 2019-02-21 19:00:03 -03:00
Christian Groessler
58484449b4 remove TABs 2019-02-05 23:27:52 +01:00
Daniel Serpell
2190703a57 Adds test code for the Atari (xex) linker file format. 2019-02-03 18:23:11 -03:00
Christian Groessler
055c294ac0 Use Timer2 for mouse polling.
This follows a suggestion by Sijmen Schouten in issue #818.
Platoterm64 now works with mouse at 1200 baud.

Bump MOUSE_API_VERSION in asminc/mouse-kernel.inc.

Fix typo in testcode/lib/mouse-test.c.
2019-01-29 22:00:55 +01:00
Greg King
2acfa5e78f Made div-test.c use doesclrscrafterexit().
It no longer waits for a key tap if it doesn't need to do that.

Also, normalized the source code formatting.
2018-11-09 17:11:03 -05:00
Christian Groessler
fe7845b5f0 clock-test.c: remove "static" optimization 2018-09-25 21:11:05 +02:00
Christian Groessler
1203e9e0c4 clock-test.c: do doesclrscrafterexit() handling the canonical way. 2018-09-25 21:11:05 +02:00
Christian Groessler
3a2d68fd1f Add testcode/lib/clock-test.c.
A test program for the "clock" functions.
2018-09-25 21:11:05 +02:00
Patrick Pelletier
357d94e834 seek test: Test some additional error cases. 2018-08-20 22:24:48 +02:00
Patrick Pelletier
0a7702626f seek test: remove trailing newline from filename
Looks like no one ever tried this?  fopen was returning EINVAL because
fgets was leaving a trailing newline at the end of the filename.
(Which is what fgets is documented to do.)
2018-08-20 22:24:48 +02:00
Greg King
9fee605e65 Added more source-code improvements to the conio test program.
Also, made the f6/f5 function keys change the border color instead of the background color.
2018-08-20 14:55:39 -04:00
Oliver Schmidt
13790bdbf0 Improved CONIO test in several ways.
- Use more consistent source code style.
- Don't presume that CH_F... constants are present.
- Allow to quit the program via 'Enter'.
2018-08-20 00:30:17 +02:00
AIDA Shinra
fd67284b4d Followed the discussions in the Pull request #682.
* Fixed a misspelling
* Fixed styles
* Added sample codes
2018-06-14 02:02:16 +09:00
Greg King
6d87370881 Fixed strpbrk().
Added its prototype.  Documented it.
2018-05-29 14:29:50 -04:00
Marco van den Heuvel
21e6f25e70 Added missing file. 2018-05-01 14:44:23 -07:00
Marco van den Heuvel
ad7b339c44 Added C64 Turbo Master accelerator code and documentation. 2018-04-30 14:30:35 -07:00
Marco van den Heuvel
11629bcf99 Added C65/C64DX accelerator code and documentation. 2018-04-27 14:22:41 -07:00
Oliver Schmidt
47e4b36180
Merge pull request #631 from blackystardust/master
Added C64 Chameleon accelerator code and documentation.
2018-04-27 20:47:03 +02:00
Greg King
c92a3c5bd5 Improved the accelerator code. Fixed an infinite loop.
Removed the execute permissions from some files.
2018-04-26 05:46:34 -04:00
Marco van den Heuvel
f2e46f0fdf Added C64 Chameleon accelerator code and documentation. 2018-04-25 12:53:29 -07:00
Marco van den Heuvel
cc2bcb8a4d Changed c128 accelerator code and documention to include both C64 and C128 support. 2018-04-23 19:25:11 -07:00
Marco van den Heuvel
3f5683b391 Added C128 in C64 mode accelerator code and documentation. 2018-04-20 12:08:28 -07:00
Marco van den Heuvel
6076316f38 Added c64dtv accelerator code and documentation. 2018-04-14 10:40:13 -07:00
Marco van den Heuvel
e2cf4987cf Added some accelerator test code. 2018-04-10 15:24:15 -07:00
Oliver Schmidt
a7ae8e0a18
Adjusted style. 2018-03-30 00:11:40 +02:00
Oliver Schmidt
e2b38c96f8
Adjusted style. 2018-03-30 00:10:55 +02:00
Oliver Schmidt
a2a4868825 Added HGR and DHGR slide show programs.
The DHGR program is sort of a hack as it first switches to double (aka 80 col) text mode to prepare for double graphics mode. Therefore only one additional soft switch access is necessary after using TGI to generally switch to hires.
2018-03-30 00:08:26 +02:00
mrdudz
85e480db3d style fixes 2018-03-08 04:05:10 +01:00
mrdudz
38fedfd78b also show pressed key, so we can verify keyboard works with the joystick driver 2018-03-07 00:19:14 +01:00
mrdudz
c0d8021fd5 add comment on linking, tweak a bit for easier debugging 2018-03-06 23:36:11 +01:00
Greg King
3a0506ccb3 Changed the PC-Engine's configuration file, so that the command line can build 8K, 16K, and 32K carts.
Adjusted the PCE's document, the start-up code, and the PCE library test makefile.  That makefile shows how to post-process the linker's output file.
2018-02-23 16:06:49 -05:00
Oliver Schmidt
9031320dff Added Makefile for recently added linker config test program. 2018-02-01 21:50:54 +01:00
Oliver Schmidt
855aceaba8 Added Apple II linker configs for programs including a hires screen.
The Apple II hires screen buffer is located at $2000 (and can't be moved). The usual way to get along with this is to load the cc65 program above the hires screen buffer at $4000. However, that means that it becomes difficult to make good use of the memory below the hires screen buffer. The simplest approach is to add that memory to the heap. But there are programs containing just lots of code and not much data. One could think of moving the code to the area below the hires screen after loading (like it is done with the code for the language card). But if the program is really large (and already contains code to be moved to the language card) it won't just fit into memory in the first place.

The alternative is to load the program at the usual $803 and have it "cover" the hires screen buffer. Of course the part of the program that actually "covers" the hires screen buffer mustn't contain anything necessary for the program. The downside of this approach is that the program file on disk contains 8kB that can't be used by the program. But instead of just containing zeros the program can as well contain a hires screen picture that can be displayed right after startup.

Now the user can have code loaded below the hires screen buffer by setting the code-name to LOWCODE. However, he needs to explicitly do so. Otherwise the memory below the hires screen is totally wasted.

Trivia: Allowing to do this hires screen buffer "covering" was the very reason to change tgi_init() to not clear the hires screen anymore.
2018-01-29 17:46:36 +01:00
Oliver Schmidt
040134e775
Fixed typo. 2018-01-02 13:48:30 +01:00
mrdudz
4abe12c729 fix spelling 2018-01-01 14:01:25 +01:00
mrdudz
142ba12634 updated testprog 2017-12-28 01:58:58 +01:00
mrdudz
2957acd133 some tweaks to testprog 2017-12-12 17:05:52 +01:00
mrdudz
4d95e578f4 added missing tests 2017-12-12 03:49:07 +01:00
mrdudz
a54b4bebde PET screen memory is at $8000, not $0800 2017-12-11 21:15:29 +01:00
mrdudz
8902730756 cbm stuff from greggs pull request 2017-12-11 19:52:11 +01:00
Oliver Schmidt
7f52a770d9 Removed joy_masks array.
So far the joy_masks array allowed several joystick drivers for a single target to each have different joy_read return values. However this meant that every call to joy_read implied an additional joy_masks lookup to post-process the return value.

Given that almost all targets only come with a single joystick driver this seems an inappropriate overhead. Therefore now the target header files contain constants matching the return value of the joy_read of the joystick driver(s) on that target.

If there indeed are several joystick drivers for a single target they must agree on a common return value for joy_read. In some cases this was alredy the case as there's a "natural" return value for joy_read. However a few joystick drivers need to be adjusted. This may cause some overhead inside the driver. But that is for sure smaller than the overhead introduced by the joy_masks lookup before.

!!! ToDo !!!

The following three joystick drivers become broken with this commit and need to be adjusted:
- atrmj8.s
- c64-numpad.s
- vic20-stdjoy.s
2017-08-19 19:11:28 +02:00
Oliver Schmidt
6002e59c28 Merge pull request #453 from mrdudz/waitvsync
waitvblank for cbm targets
2017-07-18 15:38:27 +02:00