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
|
8e2c304b3c
|
txt.waitkey() now returns the key that was pressed
|
2023-11-17 20:31:19 +01:00 |
|
markjreed
|
ff324955dd
|
Feature/read cursor position (#111)
* feat: add ability to read cursor position on CBM machines
* feat: implement plot()/column() for atari target; add get_cursor(), get_column(), row(), and get_row()
* feat: implement wait_key() for Commodore targets; add get_cursor(), get_column(), row(), get_row()
* feat: really implement waitkey() on CBM targets
* fix: make waitkey void for compatibility with atari
|
2023-11-07 22:19:16 +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
|
4de012fc49
|
added notes to textio about PETSCII vs Screencode encoding.
|
2023-11-06 23:18:24 +01:00 |
|
Irmen de Jong
|
e1835b5775
|
removed dysfunctional c128.graphics library module
|
2023-10-05 21:03:47 +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
|
c7b7dcfd03
|
made pet textio more compatible with the other platforms by putting the (dummy) color arguments back
|
2023-08-14 13:51:15 +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
|
3f64782023
|
c128: remove floats module
|
2023-04-28 17:48:54 +02:00 |
|
Irmen de Jong
|
f8d35f9502
|
c128: no FP support
|
2023-04-28 17:43:42 +02:00 |
|
Irmen de Jong
|
e056a28316
|
c128: fix memory bank resetting
|
2023-04-28 04:02:07 +02:00 |
|
Irmen de Jong
|
2d85fd093e
|
Merge branch 'new-expr-codegen'
# Conflicts:
# codeGenCpu6502/src/prog8/codegen/cpu6502/BuiltinFunctionsAsmGen.kt
# codeGenIntermediate/src/prog8/codegen/intermediate/BuiltinFuncGen.kt
# examples/test.p8
|
2023-03-29 23:56:16 +02:00 |
|
Irmen de Jong
|
d936568b76
|
added divmod() and divmodw() builtin functions to efficiently compute division and remainder in a single call
|
2023-03-29 23:46:44 +02:00 |
|
Irmen de Jong
|
f28206d989
|
new attempt
|
2023-03-28 20:01:26 +02:00 |
|
Irmen de Jong
|
c66734bab0
|
fix cx16 ubyte to float cast (wrong rom routine)
|
2023-03-20 23:25:28 +01: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
|
f7dd388954
|
remove unsupported floats.FTOSWRDAY routine. Fixes #96
|
2023-02-17 18:05:46 +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
|
5d4bfffc7e
|
float.rndseedf() now takes float seed value and is consistent for all CBM compilation targets
|
2022-11-06 22:53:57 +01:00 |
|
Irmen de Jong
|
ec5adffdc2
|
rnd()/rndf() routines can now be seeded with new rndseed()/rndseedf() routines. fixes #80
|
2022-10-22 13:34:22 +02: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
|
0f9e87d7bb
|
fixed compiler crash when casting float to integer, fixed float to int cast value error on cx16
|
2022-05-03 23:43:38 +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
|
7eea97d741
|
- floats: remove all floating point builtin functions and move them to the floats module instead
|
2022-04-22 00:45:54 +02:00 |
|
Irmen de Jong
|
7dbff5b9e6
|
abs: remove support for floats. Use floats.fabs() instead.
this solves: can't use abs() etc in pipe expression because return type depends on argument type
|
2022-04-14 00:38:31 +02:00 |
|
Irmen de Jong
|
4e33ab1e89
|
cx16 target: update float routine addresses to new r39 kernal FP package
|
2022-03-27 19:34:49 +02:00 |
|
Irmen de Jong
|
ed30108961
|
removed '**' power-operator. Use floats.pow() instead.
|
2022-03-27 13:16:34 +02:00 |
|
Irmen de Jong
|
2812736ae5
|
preparing version 7.9
|
2022-03-03 00:42:53 +01:00 |
|
Irmen de Jong
|
08bacdd090
|
temp vars are now dynamically added to AST as needed
|
2022-02-10 02:52:47 +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
|
d4153da8b9
|
setup float routine addresses for c128
|
2021-12-25 02:34:52 +01:00 |
|
Irmen de Jong
|
fc33ab8905
|
shuffled some system functions back to c64 block to remain compatible with existing code, added missing float and graphics library stubs
|
2021-12-24 00:08:32 +01:00 |
|
Irmen de Jong
|
8fa84de28e
|
fix c128 clearscreen and bdmusic sound issue
|
2021-12-22 22:59:36 +01:00 |
|
Irmen de Jong
|
3e3da38de1
|
correctly disable charset switching
|
2021-12-22 21:47:41 +01:00 |
|