mrdudz
0e29a0993f
Merge remote-tracking branch 'upstream/master' into pcenginetarget
2015-07-20 18:42:04 +02:00
mrdudz
313d2dd210
added missing chline, cvline
2015-07-19 18:06:16 +02:00
Greg King
a9982de475
Added _directerrno() to the sim6502/sim65c02 libraries.
2015-07-18 18:23:08 -04:00
Greg King
0b6bcb565e
Fixed a hardware-stack leak.
2015-07-17 20:36:56 -04:00
mrdudz
996c7b493e
moved all notes into regular documentation
2015-07-16 21:39:13 +02:00
mrdudz
e77060458a
fixed joypad bits
2015-07-16 20:15:05 +02:00
mrdudz
3119be2a1e
added some cbm-like gfx chars to draw lines and boxes
2015-07-16 17:33:00 +02:00
mrdudz
d229d51be5
make sure clocktick starts at zero
2015-07-16 16:54:40 +02:00
mrdudz
21ef6b8510
fixed screensize, timertick, revers mode
2015-07-16 16:00:32 +02:00
mrdudz
1414411bba
added waitvblank and fixed get_tv
2015-07-15 19:46:26 +02:00
mrdudz
c3d45e4c47
fixed issues found by gregg
2015-07-15 13:18:12 +02:00
mrdudz
ac27ed301a
_tickcount -> tickcount
2015-07-14 19:55:41 +02:00
mrdudz
83391ab67c
some more tweaking, added docs page
2015-07-14 17:22:47 +02:00
mrdudz
515a61a302
added imports for conio init to conio functions, so the constructor will get linked and called automatically
2015-07-13 12:10:09 +02:00
mrdudz
9e1d39a409
more cleanup and fixing
2015-07-12 16:40:52 +02:00
mrdudz
891cb97b2f
more cleanup, joystick works again
2015-07-12 14:27:24 +02:00
mrdudz
21999b081f
simple conio test works again
2015-07-12 10:32:55 +02:00
mrdudz
877fd532c2
Merge remote-tracking branch 'upstream/master' into pcenginetarget
2015-07-11 13:05:26 +02:00
Greg King
146daa1d0a
Made some string output functions reject an invalid NULL buffer pointer.
2015-07-09 14:46:28 -04:00
Greg King
219905c6bc
Fix two string output functions' handling of their buffer-size parameter.
...
That parameter's type is unsigned; but, the functions return an int. If the size is too big for a signed integer, then return an error code.
If the size is zero, then don't write anything into a buffer (the buffer pointer may be NULL). But, do format and count the arguments.
2015-07-09 10:43:45 -04:00
Greg King
08e18c93c5
Added explicit settings of calling conventions in pointer-to-function declarations in system and library headers.
2015-06-22 00:15:48 -04:00
Oliver Schmidt
fe023a1218
Merge pull request #151 from greg-king5/fastcall
...
Make __fastcall__ be the default calling convention.
2015-05-26 22:39:33 +02:00
Oliver Schmidt
0f1c3b0181
Fixed comment.
2015-04-27 09:39:50 +02:00
Oliver Schmidt
1748bb1ab6
Use well-known location BLTU2 for "memmove()".
2015-04-26 14:09:21 +02:00
Oliver Schmidt
3c1cd0d867
Added cmdline support to exec().
...
The starting point is the CALL2051:REM <cmdline> approach. It uses the BASIC input buffer at $200. ProDOS stores the name of the loaded program at $280 (which we want for argv[0]) leaving us with 128 char buffer. If we run the program via exec() we don't need the CALL2051 but only the REM token (which is just one char). So have a maximum cmdline length of 126 (plus a terminating zero).
There's no specification for ProDOS BIN file cmdline parameters so exec() just supports the CALL2051:REM <cmdline> approach. In contrast ProDOS SYS files allow for a 'startup filename'. A ProDOS filename is short than 126 chars so having exec() general cut the cmdline after 126 chars seems reasonable. If the SYS file we exec() allows for less we cut the cmdline further.
Our 'loader.system' SYS file however allows for an unusually 126 char long "startup filename" as it is targeted towards cc65 BIN porgrams with their 126 cmdline length.
2015-04-26 14:09:20 +02:00
Oliver Schmidt
ae4f9336b3
Behave more like BASIC.SYSTEM and allow for argv[0].
2015-04-19 21:59:05 +02:00
Oliver Schmidt
24e902059c
Allow up 127 chars of cmdline for programs started by the loader.
2015-04-19 21:17:46 +02:00
Stephan Mühlstrasser
7fb206e381
Macro-based implementation of screen layout configuration modules.
2015-03-23 19:02:45 +01:00
Stephan Mühlstrasser
8b10534429
Improved fix with suggestions by Greg King.
2015-03-15 00:40:42 +01:00
Stephan Mühlstrasser
4836cf9842
Fix bad tabbing
2015-03-14 00:06:00 +01:00
Stephan Mühlstrasser
72a9e331e3
Fixed uninitialized use of low byte of address "load".
2015-03-14 00:01:12 +01:00
Greg King
38231a5cc6
Made _afailed() and uncompress() be fastcall functions.
2015-03-13 07:35:47 -04:00
Greg King
66d79da3c2
Made cbm_load() be a fastcall function.
2015-03-13 05:46:40 -04:00
Greg King
a798b1d648
Made __fastcall__ be the default calling convention for non-variadic functions.
2015-03-10 05:53:52 -04:00
Greg King
9dbce378fe
Described how to change the boot loader's actions.
2015-03-08 10:06:00 -04:00
Greg King
2d50267bd8
Added a second OSI C1P program file format.
...
Unlike the first format, the new format is already loadable; it doesn't need to be converted.
2015-03-07 16:39:44 -05:00
Stephan Mühlstrasser
981ab10fac
Replaced magic numbers with symbolic constants.
2015-03-01 20:53:57 +01:00
Stephan Mühlstrasser
1d6aa84d9a
Optimization by replacing absolute with relative jump.
2015-02-28 20:29:08 +01:00
Stephan Mühlstrasser
4737ad93d5
Temporarily undo the 25 line change.
...
This is not yet consistent with the first visible character on
the screen.
2015-02-25 23:50:02 +01:00
Stephan Mühlstrasser
52865410d2
Fix wrong expression for top of C stack.
...
Thanks to Greg King for this fix.
2015-02-25 23:48:57 +01:00
Stephan Mühlstrasser
8deeb2c59e
Match screen dimensions as in BASIC.
...
Experiments show that under BASIC by default
25 rows by 24 columns are used. 24 columns is
also the width that is fully displayed on a real
C1P on the monitor. conio now matches that now.
2015-02-23 23:07:00 +01:00
Stephan Mühlstrasser
772a98d1ec
Merge branch 'c1p_kbhit' into c1p_scrsize
2015-02-23 19:17:54 +01:00
Stephan Mühlstrasser
83f16425c9
Loading A once before the loop is sufficient.
2015-02-23 19:17:27 +01:00
Stephan Mühlstrasser
cc2dc578fe
Merge branch 'c1p_kbhit' into c1p_scrsize
2015-02-23 19:11:50 +01:00
Stephan Mühlstrasser
73ae95bd1c
Clear bottom line when scrolling.
...
Fix provided by Jeff Tranter.
2015-02-23 19:06:22 +01:00
Stephan Mühlstrasser
c3b014560e
Consistent naming for screen dimension constants.
2015-02-22 19:55:19 +01:00
Stephan Mühlstrasser
a7dabcda47
Define the screen dimension defines in a more meaningful way.
2015-02-22 16:27:13 +01:00
Stephan Mühlstrasser
965aded1ba
Merge branch 'c1p_kbhit' into c1p
2015-02-22 11:45:02 +01:00
Stephan Mühlstrasser
7a975fa182
Mask control keys from first keyboard scan row.
2015-02-21 22:52:01 +01:00
Stephan Mühlstrasser
1b9aa7c6f3
Use character constants where appropriate.
2015-02-21 20:53:16 +01:00