Commit Graph

  • 099514a2c0 Fix error output file path: Encode to URI (#214) master Andy De George 2026-02-06 13:09:58 -08:00
  • ed02b84f7d micro optimization for containment checks in compiler Irmen de Jong 2026-02-06 01:22:13 +01:00
  • 7d6e67e251 fix numeric type error when comparing undefined symbols Irmen de Jong 2026-02-04 23:55:08 +01:00
  • 4aa364925d todo Irmen de Jong 2026-02-01 01:09:04 +01:00
  • e5ae9ad4e0 Add PET 80 column support. (#211) v12.1 Andrew Gillham 2026-02-02 16:02:01 -06:00
  • 6329388a4e skeleton Irmen de Jong 2026-01-31 19:39:43 +01:00
  • ac851a35bc implement FREADUY on pet, so that ubyte to float now works Irmen de Jong 2026-01-31 19:31:26 +01:00
  • bc0d6453ae revert Irmen de Jong 2026-01-30 23:40:45 +01:00
  • 8c65e0a537 attempt to create index in latex pdf Irmen de Jong 2026-01-30 23:38:26 +01:00
  • d415cf356f attempt to create index in latex pdf Irmen de Jong 2026-01-30 23:33:54 +01:00
  • 2bd74b8c44 Add an index and set some non-ASCII fonts to improve the resulting pdf. (#210) Andrew Gillham 2026-01-30 15:03:40 -06:00
  • 88b48f58c9 fix string init error about string multiplication. fixes #209 Irmen de Jong 2026-01-30 17:36:48 +01:00
  • 75accf4059 release 12.1 Irmen de Jong 2026-01-28 23:40:55 +01:00
  • c3f9959891 fixed invalid replacement in optimization of if-statement. better replacement errors. fixes #208 Irmen de Jong 2026-01-28 22:44:44 +01:00
  • ee492a1e9a some more optimized swap() code paths Irmen de Jong 2026-01-27 22:51:07 +01:00
  • 415f0fb071 pet: added bunch more diskio routines like directory(), delete(), rename() and list_filenames() Irmen de Jong 2026-01-26 23:30:33 +01:00
  • 8e7bf4227b pet: added diskio.save() and save_raw() Irmen de Jong 2026-01-26 22:32:46 +01:00
  • d2b743c296 pet: added diskio.load() and load_raw() Irmen de Jong 2026-01-26 02:37:10 +01:00
  • cb44e76626 swap Irmen de Jong 2026-01-25 19:14:05 +01:00
  • b2983e912d swap longs now uses R14+R15 as temporary storage instead of R0+R1 Irmen de Jong 2026-01-25 17:02:47 +01:00
  • 10ae42ed59 suggest import for undefined block symbols, update github links Irmen de Jong 2026-01-25 05:39:06 +01:00
  • 5cbd4aafcc strings: added next_token() which mimicks C's strtok() routine Irmen de Jong 2026-01-25 00:09:52 +01:00
  • 4aa326d5ca diskio: added lf_start_list_having_prefix() strings: added split() Irmen de Jong 2026-01-24 22:26:59 +01:00
  • 39b1bbcf58 pet32: added more missing routines in textio like column(), row() Irmen de Jong 2026-01-24 19:10:42 +01:00
  • 4661d3bada implement simple array element swap() Irmen de Jong 2026-01-24 17:33:58 +01:00
  • ab98f4a5e2 fix charset encoding error with merge. Fixes #207 Irmen de Jong 2026-01-24 16:12:53 +01:00
  • b99b054a09 cx16: add missing extapi16 call numbers tweak swap(long,long) and swap(ptr^^, ptr^^) Irmen de Jong 2026-01-24 03:45:11 +01:00
  • 5d5ad8a70e fix void/nonvoid assign target issue Irmen de Jong 2026-01-24 01:11:30 +01:00
  • 9a5edeebbc upgrade to kotlin 2.3.0 Irmen de Jong 2026-01-24 00:29:45 +01:00
  • 3fb45a611a make math.gcd() use swap() builtin Irmen de Jong 2026-01-23 23:52:45 +01:00
  • 2e0db6f211 add swap() builtin for optimized value swaps without the need for a temporary variable Irmen de Jong 2026-01-23 23:15:52 +01:00
  • 51ac096a31 add a -warnimplicitcasts compiler option Irmen de Jong 2026-01-23 03:06:53 +01:00
  • dfad83650d add math.gcd() Irmen de Jong 2026-01-22 23:30:00 +01:00
  • 492cd686a0 avoid invalid pointer arithmetic in joined expresssions. Fixes #206 Irmen de Jong 2026-01-22 22:20:30 +01:00
  • 561e05a764 decent error message for unsupported struct instance expressions. Fixes #205 Irmen de Jong 2026-01-22 02:47:44 +01:00
  • f56037142b added petgfx module for pet32, c64, c128 for petscii block characters drawing (double resolution) Irmen de Jong 2026-01-21 01:05:37 +01:00
  • a41cb60328 pet: working boingball example, implement floats.GIVUAYFAY cx16: improved floats.GIVUAYFAY to no longer depend on magic zp locations Irmen de Jong 2026-01-19 23:05:19 +01:00
  • ca3e4b161b add Amiga boing ball example, plus more pet syslib definitions, and pet diskio beginnings Irmen de Jong 2026-01-19 22:47:58 +01:00
  • 4971ebd41f pet32: added floats support! Irmen de Jong 2026-01-18 23:32:19 +01:00
  • e2276f000c fix alias issue when it targeted multi variable declaration Irmen de Jong 2026-01-18 19:48:37 +01:00
  • 520a12194e cx16: add new X16Edit rom entrypoint x16edit_loadfile_options2() that also takes starting line number Irmen de Jong 2026-01-18 18:37:59 +01:00
  • 6c61e1e5e8 fix alias target scoping problem Irmen de Jong 2026-01-17 21:39:39 +01:00
  • a385412e70 smaller floats.internal_long_to_float() Irmen de Jong 2026-01-17 19:13:18 +01:00
  • 928443469a strings: implement compare_nocase and compare_nocase_iso for 6502 Irmen de Jong 2026-01-17 17:44:10 +01:00
  • 823f1cd6e2 strings: removed ncompare Irmen de Jong 2026-01-17 17:29:21 +01:00
  • 3009ddaaab strings: adding compare_nocase and compare_nocase_iso Irmen de Jong 2026-01-17 17:01:34 +01:00
  • bc0aecb1af cx16 diskio: way simpler solution for case insensitive file name listing Irmen de Jong 2026-01-17 00:23:58 +01:00
  • 573702111e attempt at improving compilation speed by caching scopedName Irmen de Jong 2026-01-16 22:02:43 +01:00
  • eaab2cfe5f version 12.1 Irmen de Jong 2026-01-16 20:39:08 +01:00
  • 666285a002 add petsnd to symboldumps Irmen de Jong 2026-01-16 00:38:33 +01:00
  • d477e9b2bd pet32: added VIA registers (in 'pet' namespace) and petsnd module to play sound. Irmen de Jong 2026-01-16 00:15:04 +01:00
  • d774bad2b4 docs for new case routines Irmen de Jong 2026-01-15 22:06:05 +01:00
  • e3bb09d2a1 diskio: case insensitive file/dir listings only on CX16 target, and based on ISO encoding Irmen de Jong 2026-01-14 23:12:12 +01:00
  • 112bce0ac0 cx16: added ISO lowercase and uppercase routines to strings module Irmen de Jong 2026-01-14 22:07:24 +01:00
  • aac7d68455 fix watch mode to clear file cache every cycle Irmen de Jong 2026-01-14 20:16:33 +01:00
  • 620793011e way faster long to float conversion routine, fixes #202 Irmen de Jong 2026-01-13 22:29:34 +01:00
  • 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) Irmen de Jong 2026-01-12 23:04:44 +01:00
  • 8c4944d703 optimized long and float copying through pointers Irmen de Jong 2026-01-12 00:09:47 +01:00
  • f5fbb5f930 implement some missing float copy Irmen de Jong 2026-01-11 21:40:29 +01:00
  • 40ce40db32 irq doc Irmen de Jong 2026-01-11 17:40:54 +01:00
  • ee556434bc doc Irmen de Jong 2026-01-11 14:12:16 +01:00
  • 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) Irmen de Jong 2026-01-10 23:25:39 +01:00
  • b51e116b63 optimize expression: uwordvar + 256 and variants to only manipulate msb Irmen de Jong 2026-01-10 22:50:33 +01:00
  • 5c7ac0efb7 IR: remove broken loadi/storei optimization Irmen de Jong 2026-01-10 21:43:58 +01:00
  • 34b228cfca fix peek/poke error with const offset Irmen de Jong 2026-01-10 20:38:58 +01:00
  • 2b26952044 better error Irmen de Jong 2026-01-10 01:41:17 +01:00
  • db38c27224 optimized peeks with a ubyte variable offset Irmen de Jong 2026-01-09 23:03:32 +01:00
  • 560013e58b optimized pokes with a ubyte variable offset Irmen de Jong 2026-01-09 21:57:21 +01:00
  • cdb41f4352 better errors when multiplying string or array with bogus value Irmen de Jong 2026-01-09 18:33:12 +01:00
  • 13cd68ba96 IR: fix LOADI.f peephole optimization Irmen de Jong 2026-01-09 03:49:10 +01:00
  • f69b293b7f optimized some more cases of poke and peek Irmen de Jong 2026-01-09 01:53:40 +01:00
  • d4bf0bf5b7 optimized simple cases of pokel() Irmen de Jong 2026-01-09 01:21:11 +01:00
  • 8c6a95f5e2 optimized simple cases of v = peekl() Irmen de Jong 2026-01-08 23:37:06 +01:00
  • 6301a8b040 optimize msb(long<<8/16/24) into single byte accesses (skip the whole shift) Irmen de Jong 2026-01-08 22:35:13 +01:00
  • daa9b40883 optimize lsb(long>>8/16/24) into single byte accesses (skip the whole shift) Irmen de Jong 2026-01-08 03:12:53 +01:00
  • aa045bb383 optimized certain word and long shifts to get the lsb/msb Irmen de Jong 2026-01-08 02:42:56 +01:00
  • 9d7049a659 optimized long>>8, long>>16, long>>24 Irmen de Jong 2026-01-08 00:27:57 +01:00
  • bbfb2eb367 optimized longvar = lptr^^ Irmen de Jong 2026-01-07 23:18:08 +01:00
  • 447271f3f2 implemented missing byte ptr assignment Irmen de Jong 2026-01-07 22:42:53 +01:00
  • 78d6d2d59a breaking change: renamed R0R1_32 etc combined register parameters to just R0R1, R2R3, etc etc (_32 suffix is removed to make it more consistent with the other existing register names) Irmen de Jong 2026-01-07 21:54:34 +01:00
  • c6cd39b4ab slighty improved fix len() error message for pointer types Irmen de Jong 2026-01-07 21:37:07 +01:00
  • cd34c4eed0 fix len() error message for pointer types Irmen de Jong 2026-01-07 03:25:52 +01:00
  • 652b585ea4 code style Irmen de Jong 2026-01-07 00:48:45 +01:00
  • 2913fa47b2 fix pointer assignment TODO Irmen de Jong 2026-01-07 00:28:42 +01:00
  • d6e4175e21 fix msb(a+b), lsb(a+b) Irmen de Jong 2026-01-06 23:55:57 +01:00
  • 3a0add60fd optimize msb(lsw(longvar)) into @(&longvar+1) Irmen de Jong 2026-01-06 22:58:45 +01:00
  • bc4470aeda remove bsb() again - too confusing? Irmen de Jong 2026-01-06 22:39:04 +01:00
  • 97dade3655 fix setmsb() on long types Irmen de Jong 2026-01-06 21:37:17 +01:00
  • 54f23387d0 added bsb(long) builtin function that returns the bank byte of the long value (bits 16-23) Irmen de Jong 2026-01-06 20:52:27 +01:00
  • 77161e0f39 avoid separate definitions for list of simple builtin functions Irmen de Jong 2026-01-06 18:19:15 +01:00
  • 70d99bebb0 on c64/c128, txt.getclr() now always returns 0-15 (upper 4 bits are cleared). fixes #204 Irmen de Jong 2026-01-05 21:04:04 +01:00
  • 75156f7dbd fix optimized long comparison against 0 Irmen de Jong 2026-01-05 18:57:54 +01:00
  • 9827be0047 optimize sgn(integer) comparisons Irmen de Jong 2026-01-05 18:33:26 +01:00
  • 495dd526e1 comment correction Irmen de Jong 2026-01-04 23:04:33 +01:00
  • 3d20bc13b5 Virtual target: fix strings.right() and strings.slice() Irmen de Jong 2026-01-04 20:55:02 +01:00
  • 6028cc49ab simplify when into if-else, if possible Irmen de Jong 2026-01-04 19:39:38 +01:00
  • 23d3fb96b9 improved parsing rule of constdecl Irmen de Jong 2026-01-02 23:36:55 +01:00
  • 51503e054a IR: improve use of loadfield for msb/lsb of struct fields Irmen de Jong 2026-01-02 21:58:01 +01:00
  • 3f6177cbb8 improved 6502 codegen for lsb/msb of struct field Irmen de Jong 2026-01-02 21:23:01 +01:00
  • c1c88e0327 improved 6502 codegen for memory byte access into structs Irmen de Jong 2026-01-02 20:53:01 +01:00