Irmen de Jong
|
fddd390d31
|
on the C64, if not using floats, disable basic ROM in startup to gain another 8Kb of RAM
MEMTOP is adjusted to $d000. This gives us 50 Kb of contiguous program RAM space. ($0801-$CFFF)
|
2024-11-04 22:11:44 +01:00 |
|
Irmen de Jong
|
e514eeba17
|
added c64.banks() and c64.getbanks() and c64 banking example
|
2024-11-04 20:14:30 +01:00 |
|
Irmen de Jong
|
85e87dfe2e
|
consolidate @rombank and @rambank into just @bank
|
2024-11-03 21:15:11 +01:00 |
|
Irmen de Jong
|
0fc9aa6b2d
|
cx16: romsubs of the audio routines now have the rom bank tag.
cx16: removed 'audio' module again, no longer needed to have these stubs
|
2024-11-03 18:35:10 +01:00 |
|
Irmen de Jong
|
155896c4c7
|
added @rombank and @rambank bank number tags on romsubs
on cx16 and c128 targets the compiler then automatically inserts a CALLFAR instead of a regular JSR to automatically do the bank switching.
|
2024-11-03 18:19:31 +01:00 |
|
Irmen de Jong
|
9f84aa5fb2
|
fix double %option merge problem where it deleted all of the blocks
|
2024-11-03 13:36:14 +01:00 |
|
Irmen de Jong
|
64ea72ed4d
|
tweak plot
|
2024-11-01 21:56:27 +01:00 |
|
Irmen de Jong
|
ad074076c2
|
remove last references to gfx2 module
|
2024-11-01 18:41:36 +01:00 |
|
Irmen de Jong
|
4b23b1dc86
|
don't always import math automatically anymore
|
2024-11-01 03:39:52 +01:00 |
|
Irmen de Jong
|
9005c7994a
|
added Linear Interpolation (LERP) functions: math.lerp(), floats.lerp(), floats.lerp_fast()
|
2024-11-01 02:05:48 +01:00 |
|
Irmen de Jong
|
09cbdf410a
|
added diskio.exists(), made f_close_w() idempotent like f_close() already was
|
2024-10-31 21:25:22 +01:00 |
|
Irmen de Jong
|
df6a43c7f0
|
gfx_lores now has drawmode_eor() (used by Paint, for example)
|
2024-10-31 01:28:29 +01:00 |
|
Irmen de Jong
|
4ce130dc8b
|
split up cx16.gfx2 module into gfx_lores and gfx_hires4 modules
|
2024-10-30 22:21:07 +01:00 |
|
Irmen de Jong
|
94d76aa82c
|
cx16.vaddr(), vaddr_clone(), vaddr_autoincr(), vaddr_autodecr() now all reset vera's ADDRSEL back to 0 even if the configured port was 1
|
2024-10-30 21:40:58 +01:00 |
|
Irmen de Jong
|
73609636c5
|
gfx_lores.set_screen_mode() is now gfx_lores.graphics_mode()
adding all missing routines from gfx2 to gfx_lores
|
2024-10-30 21:39:37 +01:00 |
|
Irmen de Jong
|
66b06d6c40
|
added gfx2.safe_vertical_line, gfx2.safe_rect, gfx2.safe_fillrect for completeness
|
2024-10-30 19:03:40 +01:00 |
|
Irmen de Jong
|
483d193ced
|
vm: implemented reading/writing files in diskio
|
2024-10-29 02:34:53 +01:00 |
|
Irmen de Jong
|
570b574b93
|
added sys.memcmp
|
2024-10-28 00:41:26 +01:00 |
|
Irmen de Jong
|
4b4af9b527
|
no longer silently add RTS to asmsubs that don't have one
|
2024-10-27 13:49:00 +01:00 |
|
Irmen de Jong
|
97b8cb748d
|
more ifexpression codegen tweaks
|
2024-10-25 22:52:26 +02:00 |
|
Irmen de Jong
|
d8f1822c12
|
fixes
|
2024-10-18 20:32:46 +02:00 |
|
Irmen de Jong
|
65ddcf91d0
|
remove unused syscalls
|
2024-10-15 18:24:55 +02:00 |
|
Irmen de Jong
|
fb23452383
|
optimize monogfx.fill()
|
2024-10-12 17:18:00 +02:00 |
|
Irmen de Jong
|
1a6b95b388
|
house cleaning
|
2024-10-10 20:46:18 +02:00 |
|
Irmen de Jong
|
7e38d26c33
|
added several color fade functions to the palette module (cx16)
|
2024-10-09 21:48:04 +02:00 |
|
Irmen de Jong
|
5731b79554
|
don't allow problematic string and array assignments anymore, improve error messages.
In certain cases you will need to use string.copy() explicitly to overwrite strings with new strings.
|
2024-10-09 00:51:05 +02:00 |
|
Irmen de Jong
|
b2bdfe8482
|
fix ir rndseed()
|
2024-10-08 20:40:00 +02:00 |
|
Irmen de Jong
|
fea531be9a
|
add sys.sizeof_bool, _ubyte, _uword constants
|
2024-10-07 20:45:13 +02:00 |
|
Irmen de Jong
|
ae669af904
|
add sys.sizeof_byte, _word, _float constants
because Antlr doesn't allow the grammar to contain a sizeof(typename) rule to override the sizeof(identifier) rule
|
2024-10-07 19:17:37 +02:00 |
|
Irmen de Jong
|
d1ddf05e38
|
check that block address leaves room for program startup logic
|
2024-10-03 22:30:06 +02:00 |
|
Irmen de Jong
|
2bd4326ff6
|
added cx16/rotating-stars example
|
2024-10-01 23:43:50 +02:00 |
|
Irmen de Jong
|
c13168b60c
|
various improvements:
fix verafx.available().
added gfx_lores.plot().
faster gfx_lores.clear_screen().
added a new Sublime Text 4 syntax highlighting file.
|
2024-10-01 22:18:03 +02:00 |
|
Irmen de Jong
|
ea3871d0c4
|
comment about builtin function call ast node type
|
2024-10-01 02:14:31 +02:00 |
|
Irmen de Jong
|
df35aa7942
|
added (experimental) compression library
|
2024-09-29 18:59:53 +02:00 |
|
Irmen de Jong
|
cd49c5f88d
|
cx16: set rom bank to 0 at startup (for faster kernal API calls)
cx16: callfar() with constant address generates shorter asm
|
2024-09-28 20:58:29 +02:00 |
|
Irmen de Jong
|
1541ad2160
|
fix variable init order mistake in program startup
reset multiply bit at end of verafx.muls
|
2024-09-28 19:17:45 +02:00 |
|
Irmen de Jong
|
c78b7b1a24
|
added verafx.mult16()
|
2024-09-28 01:00:28 +02:00 |
|
Irmen de Jong
|
9c7a645e18
|
remove non-functional verafx.mult(). note: muls() is still there and just fine!
added documentation/source code comments to the cpu word*word multiplication routine not producing the correct upper 16 bits.
|
2024-09-28 00:43:05 +02:00 |
|
Irmen de Jong
|
04cb684fd4
|
tweak program start initialization and fix cleanup at exit for atari and pet compiler targets
|
2024-09-27 02:14:54 +02:00 |
|
Irmen de Jong
|
b7ebd8c4a6
|
update cx16/audioroutines example to use the new audio module
|
2024-09-26 00:08:25 +02:00 |
|
markjreed
|
24e0a69480
|
feat: module with front-ends that jsrfar into audio ROM routines (#151)
|
2024-09-26 00:00:42 +02:00 |
|
Irmen de Jong
|
46b94c17d6
|
comment
|
2024-09-20 17:33:00 +02:00 |
|
markjreed
|
16a2b2f566
|
Add 24-bit integer-to-float routine and floating-point jiffy clock reader (#150)
* feat: add routine to convert 24-bit integer from A/X/Y to float in FAC1
* fix: remove duplicate definition
* fix: shift to appropriate exponent
|
2024-09-20 17:28:37 +02:00 |
|
Irmen de Jong
|
4e143d45c8
|
fix warning
|
2024-09-18 22:04:25 +02:00 |
|
Irmen de Jong
|
2954f5f04d
|
Add clear_screen and set_screen_mode to gfx_lores. Fix boolean draw vs color param in some monogfx routines. Elaborate some docs.
|
2024-09-17 22:19:47 +02:00 |
|
Irmen de Jong
|
0b1f30d98c
|
no more span overdraws in graphics disc routines
|
2024-09-15 15:38:33 +02:00 |
|
Irmen de Jong
|
c7b1e8d772
|
fixed a variable scopedname issue where it took the fully scoped name instead of just the local name
this made 64tass not strip out that code if it was unused
|
2024-09-14 23:17:26 +02:00 |
|
Irmen de Jong
|
0d3ad80659
|
retain type of consts better to avoid precision loss
this also fixed a difference in const calculation where the result could differ if you were using optimzations or not.
|
2024-09-14 21:06:21 +02:00 |
|
Irmen de Jong
|
dca31b2ca3
|
added gfx_lores module for cx16 for optimized graphics routines for lores 256c screen mode
currently contains a new line() routine
|
2024-09-14 15:30:39 +02:00 |
|
Irmen de Jong
|
0cb378ca31
|
added emudbg.cpu_cycles() and emudbg.reset_cpu_cycles()
|
2024-09-13 23:03:14 +02:00 |
|