Irmen de Jong
|
f470576822
|
it's now possible to use symbols that are the same name as 6502 instructions
because these are now prefixed internally before generating assembly.
|
2022-11-30 18:39:56 +01:00 |
|
Irmen de Jong
|
10760a53a8
|
optimize cmp word equal/notequal
|
2022-11-29 20:14:35 +01:00 |
|
Irmen de Jong
|
eee805183c
|
don't overwrite temp vars in complex comparison expressions. Fixes #89
|
2022-11-29 04:13:25 +01:00 |
|
Irmen de Jong
|
b8fb391022
|
- ir codegen now allows subroutine having the same name as its block
this is not possible for the 6502 codegen due to 64tass scoping limitation
|
2022-11-28 21:54:33 +01:00 |
|
Irmen de Jong
|
3c698f1584
|
fileseek for writing not right now
|
2022-11-27 21:52:18 +01:00 |
|
Irmen de Jong
|
2fad52d684
|
the adpcm example can now read wav files directly (so no need anymore to extract the binary frame data from them)
|
2022-11-27 21:37:40 +01:00 |
|
Irmen de Jong
|
ec64a68a71
|
fixed compiler crash: unsigned = (-(unsigned as word) as uword)
|
2022-11-27 17:25:47 +01:00 |
|
Irmen de Jong
|
db55562f6a
|
fixed adpcm playback
|
2022-11-27 16:36:30 +01:00 |
|
Irmen de Jong
|
483f313eda
|
ir: keep correct child node order in blocks
|
2022-11-24 01:19:48 +01:00 |
|
Irmen de Jong
|
7b6c742178
|
fixed diskio.f_read() for small read sizes
|
2022-11-24 00:23:37 +01:00 |
|
Irmen de Jong
|
d4a35ba6ff
|
got rid of diskio.have_first_byte overhead
|
2022-11-23 21:53:36 +01:00 |
|
Irmen de Jong
|
e2f20ebf94
|
fix crash on empty conditional branch statement (if_cc { } )
|
2022-11-23 02:14:48 +01:00 |
|
Irmen de Jong
|
f870e4965a
|
added cx16diskio.f_seek() function to seek to a position in an opened file
f_open uses channel 12 now, f_open_w uses 13
|
2022-11-23 01:48:04 +01:00 |
|
Irmen de Jong
|
c21913a66b
|
ir: keep order of children in block
|
2022-11-22 02:04:24 +01:00 |
|
Irmen de Jong
|
77e956a29f
|
API change: diskio.list_files doesn't have an internal buffer anymore, you now have to supply a buffer + size yourself. Renamed to list_filenames
|
2022-11-20 23:27:22 +01:00 |
|
Irmen de Jong
|
08275c406a
|
added chdir/mkdir/rmdir/relabel to cx16diskio
|
2022-11-20 22:59:44 +01:00 |
|
Irmen de Jong
|
2931e1b87b
|
diskio file lister routines now also put file type (prg, seq, dir) in new diskio.list_filetype variable
|
2022-11-20 20:22:09 +01:00 |
|
Irmen de Jong
|
0f6a6d6fea
|
attempt to make gfx2 screen mode 0 cleanup more robust on real hardware
|
2022-11-18 22:53:28 +01:00 |
|
Irmen de Jong
|
91fdb3e2d4
|
ir: store labels in blocks, but still useless
|
2022-11-17 00:37:45 +01:00 |
|
Irmen de Jong
|
d8e87bd881
|
make uword xx = 1<<shift into a word shifting
|
2022-11-16 01:39:34 +01:00 |
|
Irmen de Jong
|
922033c1b2
|
main block element order now remains the same as in source
|
2022-11-16 00:32:00 +01:00 |
|
Irmen de Jong
|
df1793efbf
|
fixed: word << 12 is suddenly an uword (with optimizer on)
|
2022-11-15 03:00:41 +01:00 |
|
Irmen de Jong
|
836a2700f2
|
func(x>>1) no longer uses slow stack eval
|
2022-11-15 02:49:40 +01:00 |
|
Irmen de Jong
|
8f3aaf77a1
|
fix optimizer hanging on uword xx :: xx >>= 8 / xx=msb(xx)
|
2022-11-15 01:40:13 +01:00 |
|
Irmen de Jong
|
00c059e5b1
|
adding cx16/adpcm example
|
2022-11-15 01:17:28 +01:00 |
|
Irmen de Jong
|
b465fc5aaf
|
fix bug in word array containment check (prog8_lib.containment_wordarray) that could hang the loop
|
2022-11-12 23:19:01 +01:00 |
|
Irmen de Jong
|
2d78eaa48d
|
fix gfx2 text color, added cx16 snow example
|
2022-11-12 22:08:07 +01:00 |
|
Irmen de Jong
|
d08451bccc
|
ir: Block can now contain inline binary
|
2022-11-12 20:17:23 +01:00 |
|
Irmen de Jong
|
267b6f49b5
|
IRFileReader parses the p8ir file with xml parser
|
2022-11-12 16:51:20 +01:00 |
|
Irmen de Jong
|
e6688f4b9d
|
clearer error for VM limitation cannot load label address as value
|
2022-11-12 13:45:02 +01:00 |
|
Irmen de Jong
|
9d7b9771c2
|
p8ir file format is now valid XML
|
2022-11-11 23:35:52 +01:00 |
|
Irmen de Jong
|
3dcf628fdb
|
fixed subroutine name shadow check
|
2022-11-10 22:51:37 +01:00 |
|
Irmen de Jong
|
e614e9787a
|
ir: write values as hex into p8ir file
|
2022-11-08 21:59:05 +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
|
207cdaf7a4
|
fix kefrenbars example (use gfx2 instead of kernal routines)
|
2022-11-06 17:33:30 +01:00 |
|
Irmen de Jong
|
7315b581ce
|
added gfx2.pget(x,y) to get the pixel color value
|
2022-11-06 13:40:55 +01:00 |
|
Irmen de Jong
|
38efaae7b2
|
ir/vm: syscall params in high base register to avoid push/pop
|
2022-11-06 12:52:09 +01:00 |
|
Irmen de Jong
|
469e042216
|
vm: replaced prog8_lib.string_compare and others with syscalls
|
2022-11-04 23:12:13 +01:00 |
|
Irmen de Jong
|
0f1a4b9d8f
|
fixed certain type check error when passing boolean value to ubyte function parameter
fixed virtual machine string comparison syscall
|
2022-11-03 23:06:03 +01:00 |
|
Irmen de Jong
|
7303c00296
|
vm: prog8lib.wordarray_contains() fixed
|
2022-11-03 22:48:47 +01:00 |
|
Irmen de Jong
|
fc55b34d84
|
ir: fix asmsub multi-value return codegen
|
2022-11-03 22:29:41 +01:00 |
|
Irmen de Jong
|
6f67fc0e02
|
ir: get rid of '_' symbol prefix
|
2022-11-03 21:54:53 +01:00 |
|
Irmen de Jong
|
562d722ad5
|
codegen: added missing codegen for float array inplace modification
|
2022-11-03 20:08:46 +01:00 |
|
Irmen de Jong
|
144c1ba3a6
|
ir: fix float instruction value in formatspec
|
2022-11-03 19:08:38 +01:00 |
|
Irmen de Jong
|
06b032af91
|
refactor
|
2022-11-03 00:20:31 +01:00 |
|
Irmen de Jong
|
e094785cbd
|
ir: fix unused code remover
|
2022-11-02 23:16:51 +01:00 |
|
Irmen de Jong
|
e7408224ac
|
ir: remove position tracking from codechunk for now
|
2022-11-02 22:12:42 +01:00 |
|
Irmen de Jong
|
e67c05c274
|
ir: fix asmsub contents not appearing in IR file
|
2022-11-02 20:50:51 +01:00 |
|
Irmen de Jong
|
890f55f91a
|
fixup compiler internals diagram
|
2022-10-31 00:39:43 +01:00 |
|
Irmen de Jong
|
cc5fc0b892
|
Merge branch 'master' into labeledchunks
# Conflicts:
# examples/test.p8
|
2022-10-30 23:46:44 +01:00 |
|