3349 Commits
Author SHA1 Message Date
Irmen de Jong 63e2a45f09 Require explicit via for linked-list for loops 2026-10-20 01:42:39 +02:00
Irmen de Jong 6076b01f6d Require explicit via for linked-list for loops
Removes the header shorthand, extracts shared validation into
LinkedForLoopChecks.kt, fixes until-validation for pointer sentinels,
and updates docs/examples/tests.
2026-10-20 00:25:27 +02:00
Irmen de Jong e08a995067 amiga: get rid of local var address escape warnings 2026-10-19 22:49:03 +02:00
Irmen de Jong 31b5cddb96 apply new linked list iteration for loop syntax 2026-10-19 22:10:19 +02:00
Irmen de Jong 375214b5e3 Add emudbg library module for amiga500/amiga1200 targets
New Prog8 standard library module for emulator debug output on the Amiga
targets, targeting the Copperline emulator (with partial WinUAE support).
2026-10-19 01:29:04 +02:00
Irmen de Jong 460adb9e02 Remove Exec-specific for-loop over linked lists, disallow pointer as struct field name 2026-10-13 01:01:24 +02:00
Irmen de Jong 3c22dfc11a fix compiler crash on indexed reads/writes through ^^pointer struct fields 2026-10-13 00:45:21 +02:00
Irmen de Jong dfb3257c04 reserve the 'pointer' datatype name, it can no longer be used as a symbol name 2026-10-13 00:00:26 +02:00
Irmen de Jong fd3add76e4 rename amiga_gfx to easygfx 2026-10-11 14:39:37 +02:00
Irmen de Jong 4d0a7ff8bf added amiga/tictactoe example 2026-10-11 06:42:29 +02:00
Irmen de Jong e1f2faabe7 added diskfont.p8 2026-10-11 05:33:47 +02:00
Irmen de Jong 25bd60368a fix undefined symbol error 2026-10-11 03:23:49 +02:00
Irmen de Jong f61c1dc7ef fix mouse click offsets and aspect ratio 2026-10-11 02:41:42 +02:00
Irmen de Jong c0267e37b0 added amiga_gfx module and amiga/gfxdemo example 2026-10-11 01:03:59 +02:00
Irmen de Jong e7dfe79919 m68k: add log2, diff, lerp, interpolate, gcd and crc16/32; fix qemu68k word shifts and const-eval of log2/atan2 2026-10-10 17:49:29 +02:00
Irmen de Jong 31dbbc3fe1 m68k: implement bcd library routines 2026-10-10 15:41:32 +02:00
Irmen de Jong 233ca21492 m68k: frameable inline asm, word-sized sys.exit, and sys.die alerts 2026-10-10 00:19:22 +02:00
Irmen de Jong 9c9552174e m68k: stackful coroutines fixed with per-task stacks, new %option noframe 2026-10-08 01:59:50 +02:00
Irmen de Jong 70bb199e12 m68k: pop frame on jumps leaving subroutine; reject dispatch to subs with parameters 2026-10-07 23:46:48 +02:00
Irmen de Jong 09737187ad fix %jmptable crashes on expression and unqualified entries 2026-10-07 22:25:23 +02:00
Irmen de Jong de39533fba qemu68k: new recursive maze solver example 2026-10-07 19:06:16 +02:00
Irmen de Jong 8bc2b177a0 m68k: made textelite native recursion 2026-10-07 19:06:16 +02:00
Irmen de Jong 5e709fca7e m68k: stack-frame zero-clear coalescing 2026-10-07 19:06:16 +02:00
Irmen de Jong 125af552ff amiga: added recursive fractal-tree example 2026-10-07 19:06:16 +02:00
Irmen de Jong a1a48405b0 m68k: fix a5 frame pointer register clobbering 2026-10-07 19:06:16 +02:00
Irmen de Jong 822cfd4f35 tweak textelite 2026-10-07 02:24:17 +02:00
Irmen de Jong 2e3aa76a2f m68k: improve subroutine inlining 2026-10-07 01:17:14 +02:00
Irmen de Jong 13828ea932 fix defer stack-save ordering for multi-value returns 2026-10-04 07:55:51 +02:00
Irmen de Jong e550143ed0 amiga: added dos.read_file helper routine to read complete files 2026-10-04 04:46:33 +02:00
Irmen de Jong 266f4ab380 amiga: fixed lowlevel-timer example 2026-10-04 02:53:35 +02:00
Irmen de Jong 2b156ec652 amiga: add lowlevel.library timer example 2026-09-30 22:56:29 +02:00
Irmen de Jong c8cda7947a 6502 optimization for uword * ubyte 2026-09-26 05:15:41 +02:00
Irmen de Jong 75ab3ccfbd amiga1200: added ahi library and demo programs 2026-09-25 00:03:50 +02:00
Irmen de Jong 34bbb46514 fix a few new6502 codegen bugs 2026-09-23 01:27:40 +02:00
Irmen de Jong f086918e6f add union types: structs where every field is at offset 0, thus saving memory 2026-09-23 00:07:44 +02:00
Irmen de Jong 521f7ffbe6 tweak amiga audio 2026-09-22 22:49:09 +02:00
Irmen de Jong 044a4a1789 amiga: added trackdisk device support 2026-09-21 00:13:17 +02:00
Irmen de Jong 6de6a81d4b amiga: added asyncio.library support 2026-09-20 05:12:10 +02:00
Irmen de Jong ac4ae0440f vera64 restructure 2026-09-19 17:50:30 +02:00
Irmen de Jong 773f1f2292 more vera64 code 2026-09-19 16:25:52 +02:00
Irmen de Jong efee8bde68 added preliminary VERA64 support library for the c64 target
vera64 = a board for the c64 containing a VERA graphics adapter
2026-09-19 00:14:11 +02:00
Irmen de Jong ef64e2f9a4 fix typed pointer arithmetic p2-p1 to yield the number of elements. fixes #244 2026-09-18 21:22:07 +02:00
Irmen de Jong 2f6ab002d8 amiga: adpcmbench, m68k adpcm decoder optimized further, fix wavc output byte order format 2026-09-18 03:46:00 +02:00
Irmen de Jong f254fc2b62 m68k asm versions of adpcm decoder routines 2026-09-17 02:53:48 +02:00
Irmen de Jong 457d55b392 fix potential endless loop in wavfile library, also made a correct implementation of it for m68k targets (little/big endianness problem resolved) 2026-09-17 00:04:34 +02:00
Irmen de Jong b21a984dbb even more optimized adpcm decoding routine 2026-09-16 19:04:49 +02:00
Irmen de Jong 7427e6ddad changed adpcm decoder by a table driven one, almost twice as fast now 2026-09-16 05:03:13 +02:00
Irmen de Jong a025d68291 added %assert expression, "message" 2026-09-13 23:04:56 +02:00
Irmen de Jong 81794aded3 use Mordant library to make some terminal output more sophisticated
this library is already used by the Clikt option parser library so no new dependency
2026-09-13 21:28:32 +02:00
Irmen de Jong 9621552056 add 'arena' allocator library
6502 targets use uword sizes with no alignment overhead; m68k/virtual use
long sizes with even-address alignment. Updated the six pointer examples that used to have their own arena implementation.
2026-09-13 05:43:57 +02:00