Irmen de Jong
|
cd40088636
|
vm: added math.mul16_last_upper()
|
2023-09-28 03:18:49 +02:00 |
|
Irmen de Jong
|
9b9e6f4af5
|
added math.mul16_last_upper() to fetch the upper 16 bits of the last word multiplication
|
2023-09-25 23:59:57 +02:00 |
|
Irmen de Jong
|
390263a34e
|
added cx16 verafx library module
|
2023-09-24 23:00:40 +02: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
|
dd2463a440
|
proper fix for the previous commit. + fix for i/o channel reset in diskio.f_seek()
it wasn't the adressing mode, it was that it assumed the pointer variable was always in zeropage (which might not be)
|
2023-09-07 22:17:46 +02:00 |
|
Irmen de Jong
|
3caf9108ad
|
finalizing 9.4.1 release
|
2023-09-06 21:18:01 +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
|
c3fbdf34ca
|
fixed c64 float problem
|
2023-09-03 16:40:10 +02:00 |
|
Irmen de Jong
|
e97303c226
|
fix word multiplication to not clobber r0 and r1 anymore
This was causing corruption in certain programs such as the cx16/amiga example.
The problem was introduced in 9.4 with the new multiply_words routine
|
2023-09-02 20:52:16 +02:00 |
|
Irmen de Jong
|
3b786c819d
|
avoid using temp var even more
|
2023-09-01 23:47:01 +02:00 |
|
Irmen de Jong
|
5cd4b874ea
|
tweak sprites module
|
2023-09-01 21:25:19 +02:00 |
|
Irmen de Jong
|
f14ea1b3de
|
micro optimization to save 2 cycles: change some pha+pla into tax+txa
|
2023-09-01 20:37:24 +02:00 |
|
Irmen de Jong
|
9cc0cda0fb
|
added sprites library module (cx16 only)
|
2023-09-01 17:35:07 +02:00 |
|
Irmen de Jong
|
cfea8b3745
|
save a cycle
|
2023-09-01 00:50:24 +02:00 |
|
Irmen de Jong
|
28bf0b61ce
|
added math.log2() and math.log2w()
|
2023-09-01 00:42:15 +02:00 |
|
Irmen de Jong
|
2dc2429735
|
tweaks to the cx16 sprite example
|
2023-08-31 23:24:46 +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
|
77f3852cdc
|
added floats.parse_f()
|
2023-08-16 14:47:20 +02:00 |
|
Irmen de Jong
|
be06d871b6
|
fix code for bitwise shifts by zero
|
2023-08-14 21:49:13 +02:00 |
|
Irmen de Jong
|
bc8126eb16
|
2x faster word multiplication routine
|
2023-08-14 18:11:30 +02:00 |
|
Irmen de Jong
|
4c8beefdcb
|
slightly faster integer bytes multiplication routine
|
2023-08-14 17:00:16 +02:00 |
|
Irmen de Jong
|
bbb6c53457
|
slightly faster sqrt() routine for integers
|
2023-08-14 17:00:02 +02:00 |
|
Irmen de Jong
|
d8991894e3
|
added pet stubs for cbm.SETTIM,RDTIM,RDTIM16
|
2023-08-14 14:49:59 +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
|
2c9e50873c
|
use math.square for optimized X*X calculation (words only).
Added IR SQUARE instruction.
|
2023-08-14 01:05:17 +02:00 |
|
Irmen de Jong
|
923367296d
|
fix reset_system() on PET, added some missing kernal routines
|
2023-08-13 01:46:25 +02:00 |
|
Irmen de Jong
|
151a206617
|
experimental Commodore PET target
|
2023-08-12 23:25:07 +02:00 |
|
Irmen de Jong
|
a82d21ac05
|
fixed gfx2.plot in mode 1+5 with certain combinations of color and stipple
|
2023-08-08 00:01:43 +02:00 |
|
Irmen de Jong
|
0bf8378fcb
|
fixed gfx2.horizontal_line problem with monochrome stippling mode (regression since version 9.0)
todo
|
2023-08-07 22:56:07 +02:00 |
|
Irmen de Jong
|
c36afd872e
|
optimization in assignment to memory
|
2023-08-04 23:54:11 +02:00 |
|
Irmen de Jong
|
19a4bf1088
|
clean up AugmentableAssignmentAsmGen a bit
|
2023-08-04 21:48:02 +02:00 |
|
Irmen de Jong
|
9167ba499d
|
Merge branch 'remove_evalstack'
|
2023-07-30 17:49:35 +02:00 |
|
Irmen de Jong
|
2d7e95e1b6
|
release 9.2.1
|
2023-07-30 17:39:18 +02:00 |
|
Irmen de Jong
|
a0ab0bd3e2
|
Merge branch 'master' into remove_evalstack
# Conflicts:
# examples/test.p8
|
2023-07-29 18:57:06 +02:00 |
|
Irmen de Jong
|
c112b327ab
|
tiny optimization
|
2023-07-29 17:04:41 +02:00 |
|
Irmen de Jong
|
4a8ee6815a
|
merge
|
2023-07-28 03:34:58 +02:00 |
|
Irmen de Jong
|
e1b6bb154a
|
Merge branch 'master' into remove_evalstack
# Conflicts:
# compiler/res/prog8lib/cx16/gfx2.p8
# docs/source/todo.rst
# examples/test.p8
|
2023-07-28 02:09:45 +02:00 |
|
Irmen de Jong
|
e520921746
|
todo
|
2023-07-26 23:16:43 +02:00 |
|
Irmen de Jong
|
970642244b
|
optimized gfx2.text() for hires 4c mode
|
2023-07-26 04:17:44 +02:00 |
|
Irmen de Jong
|
3b90be2d9e
|
gfx2.text() per-pixel positioning implemented for screen modes 1 and 5
|
2023-07-25 00:43:45 +02:00 |
|
Irmen de Jong
|
65a7a8caf8
|
fix and optimize gfx2.position2(), added cx16.vaddr_clone()
|
2023-07-24 00:04:47 +02:00 |
|
Irmen de Jong
|
7cf6aba625
|
Merge branch 'master' into remove_evalstack
# Conflicts:
# examples/test.p8
|
2023-07-22 23:37:20 +02:00 |
|
Irmen de Jong
|
0e781d18fa
|
cx16: added cx16.vaddr_autoincr() and cx16.vaddr_autodecr()
|
2023-07-21 23:04:21 +02:00 |
|
Irmen de Jong
|
4575a8fffe
|
cx16: added cx16.vaddr_autoincr() and cx16.vaddr_autodecr()
|
2023-07-21 22:40:07 +02:00 |
|
Irmen de Jong
|
7136b33f2e
|
cx16: change reset_system() to use Reset SMC sequence instead of hard reboot
|
2023-07-20 01:59:20 +02:00 |
|
Irmen de Jong
|
d5707b7bf3
|
rebuilding floating point stack evaluation (using cpu stack)
|
2023-07-20 00:45:04 +02:00 |
|
Irmen de Jong
|
47485e4b49
|
added more missing codegen for bit shifts
|
2023-07-16 17:42:10 +02:00 |
|
Irmen de Jong
|
3841cef497
|
implemented missing bitshift codegen (non-stack)
|
2023-07-15 22:26:56 +02:00 |
|
Irmen de Jong
|
da57f76de3
|
fix augassign
|
2023-07-15 22:26:56 +02:00 |
|
Irmen de Jong
|
41af63b333
|
remove even more X register save/restore code
|
2023-07-15 22:26:54 +02:00 |
|