Irmen de Jong
|
709ced1bca
|
alias test program, replace alias chains
|
2026-02-10 21:08:35 +01:00 |
|
Irmen de Jong
|
b9a6deea25
|
implement ror / rol on ptr expressions
|
2026-02-08 21:20:13 +01:00 |
|
Irmen de Jong
|
75accf4059
|
release 12.1
|
2026-01-28 23:45:42 +01:00 |
|
Irmen de Jong
|
ee492a1e9a
|
some more optimized swap() code paths
|
2026-01-28 00:07:10 +01:00 |
|
Irmen de Jong
|
415f0fb071
|
pet: added bunch more diskio routines like directory(), delete(), rename() and list_filenames()
|
2026-01-27 01:07:08 +01:00 |
|
Irmen de Jong
|
8e7bf4227b
|
pet: added diskio.save() and save_raw()
|
2026-01-26 22:32:46 +01:00 |
|
Irmen de Jong
|
d2b743c296
|
pet: added diskio.load() and load_raw()
|
2026-01-26 02:38:40 +01:00 |
|
Irmen de Jong
|
cb44e76626
|
swap
|
2026-01-25 19:14:05 +01:00 |
|
Irmen de Jong
|
5cbd4aafcc
|
strings: added next_token() which mimicks C's strtok() routine
|
2026-01-25 00:09:52 +01:00 |
|
Irmen de Jong
|
4aa326d5ca
|
diskio: added lf_start_list_having_prefix()
strings: added split()
|
2026-01-24 22:42:54 +01:00 |
|
Irmen de Jong
|
39b1bbcf58
|
pet32: added more missing routines in textio like column(), row()
|
2026-01-24 19:34:33 +01:00 |
|
Irmen de Jong
|
4661d3bada
|
implement simple array element swap()
|
2026-01-24 18:41:25 +01:00 |
|
Irmen de Jong
|
b99b054a09
|
cx16: add missing extapi16 call numbers
tweak swap(long,long) and swap(ptr^^, ptr^^)
|
2026-01-24 11:51:42 +01:00 |
|
Irmen de Jong
|
3fb45a611a
|
make math.gcd() use swap() builtin
|
2026-01-24 00:14:31 +01:00 |
|
Irmen de Jong
|
2e0db6f211
|
add swap() builtin for optimized value swaps without the need for a temporary variable
|
2026-01-23 23:17:10 +01:00 |
|
Irmen de Jong
|
dfad83650d
|
add math.gcd()
|
2026-01-23 00:03:13 +01:00 |
|
Irmen de Jong
|
492cd686a0
|
avoid invalid pointer arithmetic in joined expresssions. Fixes #206
|
2026-01-22 22:25:48 +01:00 |
|
Irmen de Jong
|
f56037142b
|
added petgfx module for pet32, c64, c128 for petscii block characters drawing (double resolution)
|
2026-01-22 02:17:04 +01:00 |
|
Irmen de Jong
|
a41cb60328
|
pet: working boingball example, implement floats.GIVUAYFAY
cx16: improved floats.GIVUAYFAY to no longer depend on magic zp locations
|
2026-01-20 22:58:47 +01:00 |
|
Irmen de Jong
|
ca3e4b161b
|
add Amiga boing ball example, plus more pet syslib definitions, and pet diskio beginnings
|
2026-01-19 22:47:58 +01:00 |
|
Irmen de Jong
|
4971ebd41f
|
pet32: added floats support!
|
2026-01-18 23:32:19 +01:00 |
|
Irmen de Jong
|
e2276f000c
|
fix alias issue when it targeted multi variable declaration
|
2026-01-18 19:48:37 +01:00 |
|
Irmen de Jong
|
520a12194e
|
cx16: add new X16Edit rom entrypoint x16edit_loadfile_options2() that also takes starting line number
|
2026-01-18 19:10:06 +01:00 |
|
Irmen de Jong
|
a385412e70
|
smaller floats.internal_long_to_float()
|
2026-01-17 20:38:30 +01:00 |
|
Irmen de Jong
|
3009ddaaab
|
strings: adding compare_nocase and compare_nocase_iso
|
2026-01-17 17:01:34 +01:00 |
|
Irmen de Jong
|
d477e9b2bd
|
pet32: added VIA registers (in 'pet' namespace) and petsnd module to play sound.
|
2026-01-16 00:15:04 +01:00 |
|
Irmen de Jong
|
e3bb09d2a1
|
diskio: case insensitive file/dir listings only on CX16 target, and based on ISO encoding
|
2026-01-14 23:12:12 +01:00 |
|
Irmen de Jong
|
112bce0ac0
|
cx16: added ISO lowercase and uppercase routines to strings module
|
2026-01-14 22:07:24 +01:00 |
|
Irmen de Jong
|
620793011e
|
way faster long to float conversion routine, fixes #202
|
2026-01-13 22:55:37 +01:00 |
|
Irmen de Jong
|
cb4ffaa028
|
added case-insensitive pattern matcher strings.pattern_match_nocase()
added various case-insensitive versions of the file and directory listing routines in diskio (the ones that take an optional pattern)
|
2026-01-13 01:33:46 +01:00 |
|
Irmen de Jong
|
8c4944d703
|
optimized long and float copying through pointers
|
2026-01-12 00:19:21 +01:00 |
|
Irmen de Jong
|
f5fbb5f930
|
implement some missing float copy
|
2026-01-11 22:06:21 +01:00 |
|
Irmen de Jong
|
40ce40db32
|
irq doc
|
2026-01-11 19:00:37 +01:00 |
|
Irmen de Jong
|
5cd175d54f
|
optimize successive additions/subtractions and multiplications (with const) into just a single add/sub, mul
optimize var = simpleexpression | var += expression --> var = simpleexpression + expression (for any augmented operator)
|
2026-01-11 01:30:04 +01:00 |
|
Irmen de Jong
|
b51e116b63
|
optimize expression: uwordvar + 256 and variants to only manipulate msb
|
2026-01-10 22:50:33 +01:00 |
|
Irmen de Jong
|
5c7ac0efb7
|
IR: remove broken loadi/storei optimization
|
2026-01-10 22:23:01 +01:00 |
|
Irmen de Jong
|
34b228cfca
|
fix peek/poke error with const offset
|
2026-01-10 20:58:16 +01:00 |
|
Irmen de Jong
|
2b26952044
|
better error
|
2026-01-10 19:06:59 +01:00 |
|
Irmen de Jong
|
db38c27224
|
optimized peeks with a ubyte variable offset
|
2026-01-10 00:22:39 +01:00 |
|
Irmen de Jong
|
560013e58b
|
optimized pokes with a ubyte variable offset
|
2026-01-09 22:36:04 +01:00 |
|
Irmen de Jong
|
cdb41f4352
|
better errors when multiplying string or array with bogus value
|
2026-01-09 18:43:41 +01:00 |
|
Irmen de Jong
|
f69b293b7f
|
optimized some more cases of poke and peek
|
2026-01-09 02:57:12 +01:00 |
|
Irmen de Jong
|
d4bf0bf5b7
|
optimized simple cases of pokel()
|
2026-01-09 01:21:11 +01:00 |
|
Irmen de Jong
|
8c6a95f5e2
|
optimized simple cases of v = peekl()
|
2026-01-08 23:37:06 +01:00 |
|
Irmen de Jong
|
6301a8b040
|
optimize msb(long<<8/16/24) into single byte accesses (skip the whole shift)
|
2026-01-08 22:38:07 +01:00 |
|
Irmen de Jong
|
daa9b40883
|
optimize lsb(long>>8/16/24) into single byte accesses (skip the whole shift)
|
2026-01-08 03:21:57 +01:00 |
|
Irmen de Jong
|
aa045bb383
|
optimized certain word and long shifts to get the lsb/msb
|
2026-01-08 02:45:09 +01:00 |
|
Irmen de Jong
|
9d7049a659
|
optimized long>>8, long>>16, long>>24
|
2026-01-08 00:31:39 +01:00 |
|
Irmen de Jong
|
bbfb2eb367
|
optimized longvar = lptr^^
|
2026-01-07 23:30:35 +01:00 |
|
Irmen de Jong
|
447271f3f2
|
implemented missing byte ptr assignment
|
2026-01-07 22:42:53 +01:00 |
|