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
|
997288fa03
|
added cbm.CLEARST() to reset ST to 0
|
2023-12-18 01:20:24 +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
|
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
|
31177a2b1b
|
added sys.disable_caseswitch() and sys.enable_caseswitch()
|
2023-11-07 00:27:34 +01:00 |
|
Irmen de Jong
|
b500a0d477
|
c64: added a couple of routines that calculate the correct memory locations for video ram and sprite pointers etc. based on current VIC-II memory setup.
the examples with sprites, now use it.
|
2023-09-08 21:27:38 +02:00 |
|
Irmen de Jong
|
31458ffd81
|
examples cleanup and improving c64 graphics module (shift bitmap to higher ram area)
|
2023-09-05 20:39:12 +02:00 |
|
Irmen de Jong
|
2d7ebff8e9
|
fix shadowing warnings in asm and library code
|
2023-08-29 11:00:53 +02:00 |
|
Irmen de Jong
|
151a206617
|
experimental Commodore PET target
|
2023-08-12 23:25:07 +02:00 |
|
Irmen de Jong
|
41af63b333
|
remove even more X register save/restore code
|
2023-07-15 22:26:54 +02:00 |
|
Irmen de Jong
|
3933bf5c1a
|
remove eval stack references from p8 code
|
2023-07-15 22:24:22 +02:00 |
|
Irmen de Jong
|
84925ab69c
|
remove eval stack options
|
2023-07-15 22:24:19 +02:00 |
|
Irmen de Jong
|
cad18b8a3a
|
uniform symbol prefixing with p8_
|
2023-07-02 06:15:02 +02:00 |
|
Irmen de Jong
|
e9163aa3a7
|
added cx16.save_virtual_registers() and cx16.restore_virtual_registers()
|
2023-06-24 21:04:47 +02:00 |
|
Irmen de Jong
|
8bffd7672d
|
added sys.irqsafe_set_irqd()/irqsafe_clear_irqd()
|
2023-05-22 21:13:20 +02:00 |
|
Irmen de Jong
|
bd2bcb6994
|
Merge branch 'master' into version_9
# Conflicts:
# codeGenIntermediate/src/prog8/codegen/intermediate/AssignmentGen.kt
# compiler/res/prog8lib/c128/syslib.p8
# compiler/res/prog8lib/c64/syslib.p8
# compiler/res/prog8lib/cx16/syslib.p8
# docs/source/todo.rst
# examples/test.p8
# intermediate/src/prog8/intermediate/IRInstructions.kt
|
2023-05-08 23:17:52 +02:00 |
|
Irmen de Jong
|
8cbfe64f19
|
optimize some carry flag assembly
|
2023-05-07 23:27:49 +02:00 |
|
Irmen de Jong
|
fd1e9971e4
|
asmsub Pc params and returnvalue must be boolean
|
2023-05-07 22:59:30 +02:00 |
|
Irmen de Jong
|
4274296cf3
|
api change: new 'cbm' module that now contains the common CBM kernal variables and routines.
|
2023-05-02 01:19:53 +02:00 |
|
Irmen de Jong
|
ee5c94f6db
|
c128: fix key status zp location symbols
|
2023-04-28 20:43:26 +02:00 |
|
Irmen de Jong
|
043df18daa
|
set X to bottom part of eval stack in irq handler. fixes #94
|
2023-03-10 23:29:34 +01:00 |
|
Irmen de Jong
|
32c1c19224
|
tweak sys.wait() routines on various targets
add warning to docs about FP usage in IRQ
|
2023-01-20 03:29:10 +01:00 |
|
Irmen de Jong
|
a1d04f2aad
|
added more $03xx vector definitions to C64/C128/CX16 syslib
|
2022-12-06 20:23:56 +01:00 |
|
Irmen de Jong
|
6181b12ab8
|
added -esa option to override the evalstack location, and shift cx16.r0-r15 accordingly
|
2022-07-11 19:29:04 +02:00 |
|
Irmen de Jong
|
a735939d1e
|
removed confusing GPL software license reference and copyright header from library files. (because of exclusion in output files)
Reworded software license and exclusion clause somewhat again in attempt to make it even clearer.
|
2022-05-30 20:12:20 +02:00 |
|
Irmen de Jong
|
0bf00d1ca4
|
c64/c128 targets: perform cleanup at program exit such as re-enabling run-stop key and character set switching.
|
2022-05-15 16:44:26 +02:00 |
|
Irmen de Jong
|
cf50e4f6ec
|
vm: printing of numbers now via conv module.
assigning strings now converted to strcopy function call in the compiler ast.
|
2022-04-23 02:15:51 +02:00 |
|
Irmen de Jong
|
2812736ae5
|
preparing version 7.9
|
2022-03-03 00:42:53 +01:00 |
|
Irmen de Jong
|
72dfb0bda3
|
fix: undefined sys.memcopy when initializing array on cx16
|
2022-02-08 20:29:47 +01:00 |
|
Irmen de Jong
|
6da83e2bd7
|
first steps to add C128 compiler target
|
2021-12-21 19:08:33 +01:00 |
|
Irmen de Jong
|
d901a1531f
|
added missing vectors to syslib
|
2021-12-09 21:38:00 +01:00 |
|
Irmen de Jong
|
7748c261da
|
rsave/rrestore moved from sys to builtin function to solve the stack related problem when calling it as a regular subroutine
|
2021-11-29 23:13:04 +01:00 |
|
Irmen de Jong
|
e8f4686430
|
undid failed attempt of using sys.push/sys.pop for stack args - now using new push(), pushw(), pop(), popw() builtin functions
|
2021-11-28 01:22:40 +01:00 |
|
Irmen de Jong
|
02348924d0
|
failed attempt of using sys.push/pop for stack args
|
2021-11-27 23:52:47 +01:00 |
|
Irmen de Jong
|
8b4ac7801f
|
fix sys.push() signature for c64
|
2021-11-27 20:18:41 +01:00 |
|
Irmen de Jong
|
e8e25c6fd6
|
added sys.push() and sys.pop() to put values on cpu stack. Added missing builtin functions to syntax-files.
|
2021-11-27 18:09:15 +01:00 |
|
Irmen de Jong
|
2177ba0ed2
|
added signed versions of the cx16 virtual registers
|
2021-11-13 02:42:21 +01:00 |
|
Irmen de Jong
|
b3107cfad0
|
Merge branch 'master' into v7.1
|
2021-10-04 22:38:53 +02:00 |
|
Irmen de Jong
|
06b3bf27b5
|
slightly improve sys.waitvsync() on c64
|
2021-10-03 21:35:12 +02:00 |
|
Irmen de Jong
|
fd1f30f92b
|
removed %target directive (didn't add much, too confusing, only supported single target)
|
2021-09-04 15:01:16 +02:00 |
|
Irmen de Jong
|
3d956ef554
|
fix wrong values for register used in array indexing expressions
added the L/H byte parts of the cx16 virtual registers
|
2021-04-18 13:53:02 +02:00 |
|
Irmen de Jong
|
3f30d3aa89
|
added sys.waitrastborder() for c64
|
2021-04-01 18:53:16 +02:00 |
|
Irmen de Jong
|
129e17b33a
|
added sys.waitvsync() + missing documentation
|
2021-04-01 18:31:33 +02:00 |
|
Irmen de Jong
|
ca868ae19e
|
added cx16.vload() (like the VLOAD basic instruction)
|
2021-03-20 02:39:53 +01:00 |
|
Irmen de Jong
|
334f86480a
|
added irq routines for cx16
|
2021-02-22 00:48:41 +01:00 |
|
Irmen de Jong
|
edf9a500d3
|
kernel -> kernal
|
2021-02-21 22:48:06 +01:00 |
|
Irmen de Jong
|
a95677564e
|
changed system irq/rasterirq setting routines
|
2021-02-21 22:23:50 +01:00 |
|