1
0
mirror of https://github.com/cc65/cc65.git synced 2024-06-01 13:41:34 +00:00
Commit Graph

3529 Commits

Author SHA1 Message Date
Colin Leroy-Mira
dfe7562f76 Add ntohs, htons, ntohl, htons. 2023-09-07 07:03:34 +02:00
Bob Andrews
870581a4d4
Merge pull request #2174 from colinleroy/conio-65c02-optimisations
Conio: 65c02 optimisations
2023-09-04 18:00:23 +02:00
Bob Andrews
16e90187e8
Merge pull request #2163 from bbbradsmith/init-bss
INIT segment definitions should be consistent, and bss is the appropriate semantic type
2023-09-03 00:30:44 +02:00
Colin Leroy-Mira
8a140e6503 Conio: 65c02 optimisations
cputc: -2 cycles per char, -2 cycles per carriage return
cputs: -5 cycles per char, -3 cycles on cputsxy
vcprintf: -6 cycles per char
2023-09-02 12:44:53 +02:00
Colin Leroy-Mira
a2c115fc3e Build libs with debug symbols 2023-08-26 15:35:28 +02:00
bbbradsmith
2431fb7d85 correct INIT segment semantic is bss, make this consistent across all default cfg 2023-08-19 13:08:46 -04:00
Colin Leroy-Mira
148be69f97 Optimize and fix comments (thanks to Oliver Schmidt) 2023-08-19 14:11:36 +02:00
Colin Leroy-Mira
1f68846116 Avoid using mli.s to initcwd 2023-08-19 14:11:36 +02:00
jede
480600093c fix pla/pha instead of tmp1 2023-05-25 18:09:03 +02:00
jede
1ca9d7e9e7 fix tab 2023-05-23 23:15:23 +02:00
jede
1377ba0d36 fix compute length for read and write for telestrat target 2023-05-23 23:08:56 +02:00
bbbradsmith
76328da682 librsc/Makefile: ../lib directory must be created globally before make lib targets in parallel
prevents conflict of individual targets each trying to create ../lib
enable -j2 in make lib windows action
2023-05-08 20:57:50 -04:00
Bob Andrews
c9857d9962
Merge pull request #2069 from jefftranter/bootstrap-fix
Source listing in bootstrap.s is incorrect.
2023-05-07 13:49:12 +02:00
Bob Andrews
0d0369983a
Merge pull request #2100 from bbbradsmith/split2092-libtest
libtest target alternative to lib
2023-05-06 11:30:05 +02:00
bbbradsmith
df749abbfb libtest target alternative to libs
saves me about 20 minutes if I only want to run tests
2023-05-05 21:56:52 -04:00
Jeff Tranter
17706208e8 Add support for 48x12 video mode on Challenger 1P.
Tested on real C1P hardware.
2023-05-05 18:02:42 -04:00
Jeff Tranter
387d455cb4 Revised patch.
Uses code in source listing. Tested on a real OSI C1P machine.
2023-05-03 11:16:22 -04:00
Jeff Tranter
4d97e30b55 Source listing in bootstrap.s is incorrect.
The OSI C1P alternative boot file format works, but the code in the
source listing does not match the ASCII-coded hex translation (which
is actually used). This is confusing to anyone trying to maintain the
code.

Also, the source code did not assemble when ASM is defined.

Also removed use of branch macros and an unnecessary "<" operator.

With these changes the source file should correctly match what
is used at run time.
2023-05-01 09:49:41 -04:00
Jeff Tranter
3a5fbd34da Add KIM-1 functions to write to the 7-segment LED display and get
keypresses from the keypad.
Includes sample program illustrating how to use them.
Tested on real KIM-1 hardware.
2023-03-29 18:40:10 -04:00
Jeff Tranter
806ffe5675 Fixes and improvements to KIM-1 i/o routines.
Tested on real KIM-1 hardware.

read.s:
- Remove commented out line.
- Remove unused check for bell character.
- Remove echo of newline (hardware always echoes entered characters).
- This fixes gets() and fgets() so they return when CR is entered.

write.s:
- Fix check for adding return after linefeed (failed to work because OUTCHR changes A)
- Remove unused check for bell character.

kim1.inc:
- Add symbol for monitor entry

crt0.s:
- Jump to KIM-1 monitor by address rather than using BRK (which relies on vector being set in RAM)
2023-03-27 17:56:25 -04:00
jede
c8c6fc6a40 add xfseek 2023-03-17 23:10:15 +01:00
Bob Andrews
c226e58a3c
Merge pull request #2007 from groessler/something_to_pull
fix for issue #1973 (printf("%c", '\0') doesn't _write '\0' to fd 0)
2023-03-04 13:30:18 +01:00
mrdudz
ffa83c32a4 clean-up of driver return codes 2023-02-26 20:03:41 +01:00
Christian Groessler
fedfc3443d fix for issue #1973 (printf("%c", '\0') doesn't _write '\0' to fd 0) 2023-02-24 02:12:19 +01:00
mrdudz
8ac5e2f7b6 fix devicestr call, so related posix function work on cbm targets 2023-01-28 15:08:14 +01:00
Christian Groessler
60f56c43c7 some documentation fixes 2023-01-18 11:55:52 +01:00
Christian Groessler
67564d83c8 libsrc/atari/sound.s: fix indentation 2023-01-16 18:01:11 +01:00
Mariano Dominguez
40656ffb6e more style 2023-01-15 17:05:24 -08:00
Mariano Dominguez
6236e82850 change storage to pager zero
fix bug that kills keyboard.
2023-01-15 17:00:05 -08:00
Mariano Dominguez
27ecb555ea
Rename sound to _sound.
remove extra comments.
2023-01-10 11:16:36 -08:00
Mariano Dominguez
196962adac remove lasy pesky space 2023-01-06 10:54:16 -08:00
Mariano Dominguez
c3e1ae3478 last trailing space 2023-01-05 21:36:44 -08:00
Mariano Dominguez
8c97b54f5d more trailing spaces :( 2023-01-05 21:34:43 -08:00
Mariano Dominguez
658c1ad711 only missing space 2023-01-05 21:33:40 -08:00
Mariano Dominguez
85f657b35e missing space 2023-01-05 21:30:31 -08:00
Mariano Dominguez
4e8b18c035 missing tab 2023-01-05 21:29:33 -08:00
Mariano Dominguez
29a80065cc fix tab indentation 2023-01-05 21:27:54 -08:00
Mariano Dominguez
30df733c31 remove dangling spaces 2023-01-05 21:20:16 -08:00
Mariano Dominguez
fa05294054 add newline for style 2023-01-05 21:16:58 -08:00
Mariano Dominguez
f9024d132a add sound command
this behives the same as BASIC

sound(voice, pitch, distortion, volume)
2023-01-05 21:12:58 -08:00
Rutger van Bergen
ae23e47eb5
Merge branch 'cc65:master' into master 2022-12-26 13:57:10 +01:00
Oliver Schmidt
1daa445310 Fixed recently introduced addressing mode bug. 2022-12-22 22:09:23 +01:00
Oliver Schmidt
d90c7e9853 Introduced the notion of a standard serial driver.
There's no target with more than one serial driver (and I don't see that change anytime soon) so it's a no-brainer to apply the standard driver concept to serial drivers.
2022-12-22 18:13:24 +01:00
mrdudz
d6c37a757d Merge branch 'master' into underscores 2022-11-19 17:11:11 +01:00
Rutger van Bergen
2b07204952
Merge branch 'cc65:master' into kim1 2022-09-19 20:03:23 +02:00
Rutger van Bergen
cb8cb876ec Add documentation, make capitalization uniform 2022-09-19 19:56:57 +02:00
Oliver Schmidt
5493c9e7c2
Don't empty the Receive Data Register on filling the Transmit Data Register
The Receive Data Register and the Transmit Data Register share share a single address. Accessing that address with STA abs,X in order to fill the Transmit Data Register causes a 6502 false read which causes the Receive Data Register to be emptied.

The simplest way to work around that issue - which I chose here - is to move the base address for all ACIA accesses from page $C0 to page $BF. However, that adds an additional cycle to all read accesses. An alternative approach would be to only modify the single line `sta ACIA_DATA,x`.
2022-09-08 17:11:30 +02:00
polluks2
446a785f95
Don't hide errors in error handling
You don't want the low byte, see grep _ERR_ libsrc/tgi/*
2022-09-02 11:55:54 +02:00
mrdudz
5bda57de87 add extra underscore to _bzero, add a test for bzero/memset 2022-08-29 23:20:48 +02:00
mrdudz
3b03a96375 add underscores to _poserror and _stroserror 2022-08-29 21:06:48 +02:00
mrdudz
89c08dc6d4 extra underscores for _randomize and _swap 2022-08-29 20:52:35 +02:00
mrdudz
b09024aa32 add extra underscore to heap stuff 2022-08-29 19:55:48 +02:00
mrdudz
df4b6f9d14 remove extra spaces 2022-08-28 22:37:33 +02:00
mrdudz
54aff47513 fix some errno related stuff, "make all" works again 2022-08-28 22:09:44 +02:00
mrdudz
2dabb65ee0 fix errno related underscores in all libsrc/*.s files 2022-08-28 21:52:53 +02:00
mrdudz
6ba3deffa4 use __clocks_per_sec instead of _clocks_per_sec 2022-08-28 20:22:25 +02:00
mrdudz
f70020a2b8 use __sig_ign and __sig_dft instead of _sig_ign and _sig_dft 2022-08-28 20:18:34 +02:00
mrdudz
9246775ebe use __afailed instead of _afailed 2022-08-28 20:08:13 +02:00
mrdudz
8e5f6b822d fix setjmp.h 2022-08-28 20:05:11 +02:00
Bob Andrews
623f047397
Merge pull request #1509 from mrdudz/rremd
C64 Retro Replay EMD driver
2022-08-11 01:11:16 +02:00
ZeroByteOrg
582e43931d import RDTIM symbol instead of hard-wiring it here 2022-08-08 15:21:30 -05:00
ZeroByteOrg
9b3b652fa5 Switched to using tmp1 instead of self-mod to store the jiffies value 2022-08-08 15:17:28 -05:00
ZeroByteOrg
78870219a4 CX16 waitvsync uses Kernal API to retreive jiffies 2022-08-05 17:44:18 -05:00
polluks2
7a93d3c707
Shorter isascii 2022-08-04 00:25:04 +02:00
Bob Andrews
6239fbe18c
Revert "rename '_poserror' to '__poserror'" 2022-07-24 18:14:21 +02:00
Bob Andrews
c642c07ea0
Merge pull request #1808 from acqn/LibFix
[Lib] Removed an extra colon from libsrc/dbg/dbg.c
2022-07-24 17:59:57 +02:00
acqn
8485d59aa6 Removed an extra colon from libsrc/dbg/dbg/c. 2022-07-24 20:58:10 +08:00
mrdudz
8e19d84cb4 detect number of RAM pages 2022-07-24 02:47:02 +02:00
Christian Groessler
758d9466c0 rename '_poserror' to '__poserror'
The old name could be non-conforming to the C standard. The new name
is definitely in the "implementation name space".

See issue #1796.
2022-07-24 00:33:56 +02:00
mrdudz
3cb3d5dad3 cleanup 2022-07-21 03:45:40 +02:00
mrdudz
86091ac6bf some cleanup 2022-07-21 03:43:54 +02:00
mrdudz
a55807f682 cleanup 2022-07-21 03:30:47 +02:00
mrdudz
f614f3b9e2 reserve enough space for the longest string we can expect 2022-07-21 03:24:17 +02:00
Stephan Mühlstrasser
8ec1f76b9c Fix switched meaning of '\n' and '\r'
When conio was implemented for the osic1p target, the cbm
target was used as a blueprint. But it was overlooked that the
cbm target encodes CR as 0x0A and LF as 0x0D, while the
osic1p target uses the ASCII encoding of CR and LF. Therefore
conio output of '\n' moved the active position to the start of the
line and '\r' moved the active position to the next line.

This change implements the correct semantics of '\n' and '\r'
in conio for the osic1p target.

Fixes #1747.
2022-07-21 03:22:52 +02:00
mrdudz
8e787c0c0a remove +x flag 2022-07-21 03:22:52 +02:00
polluks2
133d703964 smarter manufacturer
some kind of promotion
2022-07-21 03:22:52 +02:00
mrdudz
db2dfc9226 must include stdarg.h to use varargs 2022-07-21 03:22:52 +02:00
rofl0r
6eeaf7485c build: allow empty prefix
there was some concern that this will break windows' way of doing
file lookups relatively from the binary, rather than via hardcoded
locations, but so far each occurence adding e.g. "CA65_INC" to
the pathsearch is already shielded with an #ifndef _WIN32.

addressing #1726
2022-07-21 03:22:52 +02:00
jede
e9bf0dd64f fix space 2022-07-21 03:22:52 +02:00
jede
16d896b73f fix mkdir 2022-07-21 03:22:52 +02:00
jede
e1fbb8465b fix spaces 2022-07-21 03:22:52 +02:00
jede
244da9c911 missing fd_management and cleaning 2022-07-21 03:22:52 +02:00
Greg King
55ea831e2d Upgraded the cx16 library to the Commander X16 Kernal ROM's prerelease 39. 2022-07-21 03:22:52 +02:00
jede
84e2fee9a4 fix bss 2022-07-21 03:20:45 +02:00
jede
164acad6cb fix space 2022-07-21 03:20:45 +02:00
jede
ebcf6ec52d FIX space 2022-07-21 03:20:45 +02:00
jede
c38504b06d cgetc export data now 2022-07-21 03:20:45 +02:00
Karri Kaksonen
3922cccafb Speed up the cursor a bit 2022-07-21 03:20:45 +02:00
Karri Kaksonen
249a04dbde Move cursor IRQ processing to when the screen is being drawn 2022-07-21 03:20:45 +02:00
Karri Kaksonen
7684918112 Too much time in irq fix 2022-07-21 03:20:45 +02:00
Karri Kaksonen
4ee3e59f19 Fix race condition 2022-07-21 03:20:45 +02:00
Bob Andrews
7f9909ef81 use jmp instead of jsr/rts 2022-07-21 03:20:45 +02:00
Karri Kaksonen
d8b8368e4e Add documentation 2022-07-21 03:20:45 +02:00
Karri Kaksonen
9ad2eea146 Add color setup 2022-07-21 03:20:45 +02:00
Karri Kaksonen
29b9a9f615 Rename font 2022-07-21 03:20:45 +02:00
Karri Kaksonen
5d0f064edc Not sharing umula0 and fix cursor bug 2022-07-21 03:20:45 +02:00
Karri Kaksonen
627ec17b14 Fix typo 2022-07-21 03:20:45 +02:00
Karri Kaksonen
4f195d46f9 Use consisten line lenght values 2022-07-21 03:20:45 +02:00
Karri Kaksonen
3954e9bccb Fix wrong screen in 2022-07-21 03:20:45 +02:00
Karri Kaksonen
9fab67761f Fix tabs 2022-07-21 03:20:45 +02:00
Karri Kaksonen
2e51b2b17c Fix tabs 2022-07-21 03:20:45 +02:00
Karri Kaksonen
f2f358262e Add mono conio files 2022-07-21 03:20:45 +02:00
Karri Kaksonen
b8c450cb46 Add mono conio files 2022-07-21 03:20:45 +02:00
Karri Kaksonen
bb20af1695 Add info 2022-07-21 03:20:45 +02:00
Karri Kaksonen
2db4592029 Add info 2022-07-21 03:20:45 +02:00
Karri Kaksonen
190911e26f Add x=0 to textcolor 2022-07-21 03:20:45 +02:00
Karri Kaksonen
a2aaeb0d1d Fix tabs 2022-07-21 03:20:45 +02:00
Karri Kaksonen
057fd866da Remove obsolete file and fix tabs 2022-07-21 03:20:45 +02:00
Karri Kaksonen
02fbcad697 Split files 2022-07-21 03:20:45 +02:00
Karri Kaksonen
f0e16514e0 Split files 2022-07-21 03:20:45 +02:00
Karri Kaksonen
e0c7880e34 Split files 2022-07-21 03:20:45 +02:00
Karri Kaksonen
6a6581815d Import conio automatically 2022-07-21 03:20:45 +02:00
Karri Kaksonen
0f404280a1 Change attributes on gotoxy 2022-07-21 03:20:45 +02:00
Karri Kaksonen
141b887d4d Change order of gotox gotoy for correct x after newline 2022-07-21 03:20:45 +02:00
Karri Kaksonen
770b22e14d Remove duplicate code 2022-07-21 03:20:45 +02:00
Karri Kaksonen
7e7f9ffa58 Add blinking cursor 2022-07-21 03:20:45 +02:00
Karri Kaksonen
ff8d2e84bf Fix screen index bug 2022-07-21 03:20:45 +02:00
Karri Kaksonen
1d7bcb9348 Cleanup 2022-07-21 03:20:45 +02:00
Karri Kaksonen
3ba6dd0a4a Use local multiply for cursorzone calculations 2022-07-21 03:20:45 +02:00
Karri Kaksonen
9d4f1a0415 Add local multiply routine 2022-07-21 03:20:45 +02:00
Karri Kaksonen
c6b9a012c8 Allocate own zp pointer for conio implementation 2022-07-21 03:20:45 +02:00
Karri Kaksonen
60fffb289a Allocate own zp pointer for conio implementation 2022-07-21 03:20:45 +02:00
Karri Kaksonen
0eaf3eef6d Align font to 256 bytes 2022-07-21 03:20:45 +02:00
Karri Kaksonen
0f250d06b9 Fix conflicts with some conio routines 2022-07-21 03:20:45 +02:00
Karri Kaksonen
b8dbe0254a Add cputc method 2022-07-21 03:20:45 +02:00
Karri Kaksonen
1a2207ffc9 Add setcursor method 2022-07-21 03:20:45 +02:00
Karri Kaksonen
ebd2e5085a Remove export 2022-07-21 03:20:45 +02:00
Karri Kaksonen
7f1e69f5e0 Add cursor processing 2022-07-21 03:20:45 +02:00
Karri Kaksonen
f576764214 Remove cursor from conio init 2022-07-21 03:20:45 +02:00
Karri Kaksonen
8b06ff18c0 Don't set cursor in clrscr 2022-07-21 03:20:45 +02:00
Karri Kaksonen
fce4bc0c58 Change order to make decoding easier 2022-07-21 03:20:45 +02:00
Karri Kaksonen
9775a71433 Use question mark instead of exclamation mark 2022-07-21 03:20:45 +02:00
Karri Kaksonen
8f86d5533b Remove clrscr from init 2022-07-21 03:20:45 +02:00
Karri Kaksonen
7fc69a34ac Change blue to white 2022-07-21 03:20:45 +02:00
Karri Kaksonen
ce313922d1 Change blue to white 2022-07-21 03:20:45 +02:00
Karri Kaksonen
646997ed43 Add the build tools for the font 2022-07-21 03:20:45 +02:00
Karri Kaksonen
f5c24be572 Fix cursor character 2022-07-21 03:20:45 +02:00
Karri Kaksonen
ff0ddcb52b Add the font160.png 2022-07-21 03:20:45 +02:00
Karri Kaksonen
e4c1bf15da Add basic conio buffer 2022-07-21 03:20:45 +02:00
mrdudz
c6f23eefc8 remove dangling spaces 2022-07-21 03:20:44 +02:00
mrdudz
2cc46e11d3 add comment explaining what the empty file is about 2022-07-21 03:20:44 +02:00
mrdudz
be22b8ad4d add missing newline to a bunch of files 2022-07-21 03:20:44 +02:00
mrdudz
cbbdd3d9cf remove a bunch of TABs 2022-07-21 03:20:44 +02:00
Karri Kaksonen
f92e1f2e3c Change polarity for 2600 buttons 2022-07-21 03:20:44 +02:00
Karri Kaksonen
851c65344c Add comments 2022-07-21 03:20:44 +02:00
Karri Kaksonen
3ceae59857 Add stdjoy driver 2022-07-21 03:20:44 +02:00
Karri Kaksonen
cdf83d2a26 Fixed logic flaw 2022-07-21 03:20:44 +02:00
Karri Kaksonen
14956f3b15 Add atari7800-stdjoy 2022-07-21 03:20:44 +02:00
Fabrizio Caruso
1effa5944b Optimize delete cycles 2022-07-21 03:20:44 +02:00
Fabrizio Caruso
3050e3afcd Use lsr 2022-07-21 03:20:44 +02:00