Irmen de Jong
cd49c5f88d
cx16: set rom bank to 0 at startup (for faster kernal API calls)
...
cx16: callfar() with constant address generates shorter asm
2024-09-28 20:58:29 +02:00
Irmen de Jong
1541ad2160
fix variable init order mistake in program startup
...
reset multiply bit at end of verafx.muls
2024-09-28 19:17:45 +02:00
Irmen de Jong
28b43b3e1d
added cx16.EXTAPI_kbd_leds definition (new in kernal R48)
2024-09-06 20:47:49 +02:00
Irmen de Jong
f7feaf158d
added cx16.mouse_present() routine to check for presence of mouse
2024-09-06 18:21:13 +02:00
Irmen de Jong
beaff4d650
moved non X16 specific variables and vector definitions from cx16 to cbm namespace.
...
This makes the naming consistent with the other cbm-like targets (c64, pet, c128). Only the x16 specific ones remain in the cx16 namespace, such as cx16.KEYHDL
Probably the most impactful is the move of cx16.CINV to cbm.CINV
2024-08-24 20:06:50 +02:00
Irmen de Jong
9204d390ae
correct fetch() signature. fixes #148
2024-08-18 20:04:23 +02:00
Irmen de Jong
17f7b11148
tweaks cx16 sample streaming example, also added a new one
2024-07-23 02:10:05 +02:00
Irmen de Jong
b3dba67405
added cx16.rom_version() routine
2024-06-07 23:15:26 +02:00
Irmen de Jong
d2e010c439
added cx16.scnsiz (extapi call), describe profiler.py script
2024-05-31 21:48:29 +02:00
Irmen de Jong
15867ab423
update cx16.mouse_get() and mouse_pos() to also return scroll wheel in X
2024-05-29 23:19:53 +02:00
Irmen de Jong
ac1d4b4a7a
mouse_pos() now returns the coordinates as unsigned words
2024-05-20 21:38:02 +02:00
Irmen de Jong
f88c29e083
convert github doc links into permalinks
2024-04-08 22:12:28 +02:00
Irmen de Jong
ddb8346711
added txt.cls() as a shorter alternative to clear_screen().
...
cx16: added new character encodings, and routines in textio to enable the character sets for them.
cx16: added txt.chrout_lit() and txt.print_lit() to always print the literal characters and never as control codes
2024-04-07 19:32:44 +02:00
Irmen de Jong
66a6659a6e
cbm.STOP2() and cbm.GETIN2() convenience routines
2024-04-06 02:16:21 +02:00
Irmen de Jong
34f3169dda
tweak library routines for multiple return values.
...
cbm:
MEMTOP changed (now also returns nr of banks in A)
STOP2 removed (just use STOP)
RDTIM_safe() added TEST IRQ ENABLE
RDTIM16 changed (internally) TEST IRQ ENABLE
cx16:
screen_mode changed (now also returns width and height in X,Y)
kbdbuf_peek2 removed (just use kbdbuf_peek)
joystick_get changed (presence now returned as bool in Y)
joystick_get2 removed (just use joystick_get)
mouse_pos changed (now properly returns x and y position in R0 and R1)
set_led_brightness changed into set_led_state, with only a boolean on/off argument. There is no variable brightness.
sys.set_leds_brightness() removed. Use cx16.set_led_brightness().
2024-04-04 01:39:19 +02:00
Irmen de Jong
b385dc8c26
add cx16 extapi ROM call, call numbers and shims. (new in Rom R47)
2024-04-02 01:45:10 +02:00
Irmen de Jong
5a0524ff4d
various fixes
2024-03-16 18:48:06 +01:00
Irmen de Jong
6a9269111e
some changes in SMC routines for the cx16:
...
sys.poweroff_system() moved to cx16
sys.set_leds_brightness() moved to cx16 and changed to set_led_brightness, you can only change the activity led brightness.
2024-03-15 23:00:14 +01:00
Irmen de Jong
1818738fc8
fixed potential bug in cx16.kbdbuf_clear() is and it is now cbm.kbdbuf_clear() and is available on all cbm like targets
2024-03-14 22:12:29 +01:00
Irmen de Jong
80f39e8097
Merge branch 'booleans'
...
# Conflicts:
# compiler/res/prog8lib/cx16/monogfx.p8
# compiler/res/prog8lib/virtual/monogfx.p8
# compiler/src/prog8/compiler/astprocessing/BoolRemover.kt
# compiler/test/TestTypecasts.kt
# docs/source/todo.rst
# examples/cx16/highresbitmap.p8
# examples/test.p8
# httpCompilerService/src/prog8/http/TestHttp.kt
2024-03-11 01:00:48 +01:00
Irmen de Jong
f739e679e4
added sys.exit2 and sys.exit3 to set more result registers at program exit
...
todo
2024-03-09 03:30:05 +01:00
Irmen de Jong
c532e28841
fix several remaining bool return values in library routines
2024-03-02 23:19:39 +01:00
Irmen de Jong
577333f2c4
new ifelse codegen
2024-03-02 23:19:39 +01:00
Irmen de Jong
88458f5355
faster array copy and fix for length 256
2024-02-11 23:57:38 +01:00
Irmen de Jong
344a1b9eb8
cx16: added cx16.get_program_args() and cx16.set_program_args()
2024-02-04 11:35:13 +01:00
Irmen de Jong
a14c192ea3
also other targets
2024-01-18 22:31:34 +01:00
Irmen de Jong
03831a7394
added cx16.cpu_is_65816()
2024-01-18 19:30:18 +01:00
Irmen de Jong
06bedb7adb
added palette.get_color() and palette.default_colors[]
2024-01-11 21:27:18 +01:00
Irmen de Jong
aa4cd13c31
where to place vscode syntax files.
2024-01-08 00:09:21 +01:00
Irmen de Jong
19a2110ba2
fix exit() now actually correctly setting the return code in A
...
also, moved some cleanup stuff such as CLRCHN from exit() to the cleanup routine that is always called.
finally, also call the cleanup routine when %option no_sysinit is used
2024-01-04 00:43:35 +01:00
Irmen de Jong
2b8f613a00
added %option ignore_unused to suppress warnings about unused vars and subs in that module/block.
...
Also improved error for invalid directive.
2023-12-26 23:37:59 +01:00
Irmen de Jong
0d44492086
push,pushw,pop and popw are no longer built-in functions but regular routines in sys
2023-12-26 14:47:31 +01:00
Irmen de Jong
38a22fbc99
allow %option no_symbol_prefixing also on module scope
2023-12-26 12:31:18 +01:00
Irmen de Jong
49ec430592
cx16: added several word Vera-registers as memory-mapped vars as well
2023-12-21 00:28:09 +01:00
Irmen de Jong
8bd7c601c0
cx16: added all remaining audio kernal routines. added the three x16edit kernal entry points.
2023-12-18 22:16:44 +01:00
Irmen de Jong
997288fa03
added cbm.CLEARST() to reset ST to 0
2023-12-18 01:20:24 +01:00
Irmen de Jong
dd4c073e18
version 9.7
2023-12-09 18:54:54 +01:00
Irmen de Jong
d1806bfdc3
added remaining verafx registers
2023-12-03 22:15:29 +01:00
Irmen de Jong
ee4da1a757
fix floats.parse_f() to use new kernal routine address for VAL
...
gives error message if it detects issues f.ex. with new kernal version that moves the routine
2023-11-27 23:58:28 +01:00
Irmen de Jong
0bee6f6b41
cx16: reorder processing of IRQ handlers
2023-11-24 01:12:27 +01:00
Irmen de Jong
98570ac456
cx16: optimized sys.set_rasterline()
2023-11-23 00:02:04 +01:00
Irmen de Jong
1b2296ad5b
move cx16 irq examples to new API, fix some bugs in the handler
2023-11-22 23:25:39 +01:00
Irmen de Jong
16851746d6
new X16 irq handler routines and examples
2023-11-22 20:03:21 +01:00
Irmen de Jong
ba67fd318b
renamed cx16.VERA_IRQ_LINE_L to VERA_IRQLINE_L and added VERA_SCANLINE_L, to align with official register naming.
...
Also added a multi-irq example for the X16 to show the updated irq handler semantics.
2023-11-22 18:36:24 +01:00
Irmen de Jong
08ac459a41
breaking change: sys.set_irq() and sys.set_rasterirq() no longer have useKernal parameter! The irq handler routine must return a boolean instead in the A register.
...
When it returns true it means run the system IRQ handler afterwards. When it returns false, the system handler is NOT ran afterwards.
2023-11-21 23:22:53 +01:00
Irmen de Jong
a83e9d9a0a
added sys.save_prog8_internals() and restore_prog8_internals()
2023-11-21 22:00:43 +01:00
Irmen de Jong
a6756d2cea
removed diskio.set_drive(), just set the diskio.drivenumber variable directly
...
there already wasn't a getter
2023-11-19 22:15:56 +01:00
Irmen de Jong
2637939e62
cx16.vaddr_clone now leaves vera CTRL selected port intact
2023-11-17 19:22:23 +01:00
Irmen de Jong
d22359b6e7
removed cx16.FB_cursor_position2() because it was only for use in the graphics module
2023-11-12 16:40:13 +01:00
Irmen de Jong
e0668b55b9
fix gfx2 safe_disc coloring
2023-11-10 01:08:13 +01:00