Irmen de Jong
|
b28ee0819f
|
revert behavior change of @dirty variables, instead document the initialization behavior correctly in the docs
they get zeroed at program startup (like other uninitialized BSS variables), just not on entry in the subroutine.
|
2025-05-07 21:07:12 +02:00 |
|
Irmen de Jong
|
522958e0e9
|
@dirty variables now actually end up in the uninitialized BSS_NOCLEAR section
|
2025-05-06 01:41:34 +02:00 |
|
Irmen de Jong
|
99ae8ea52e
|
code cleanup
|
2025-04-24 18:51:03 +02:00 |
|
Irmen de Jong
|
b40860aca4
|
get rid of RTS after JMP
|
2025-04-23 17:08:16 +02:00 |
|
Irmen de Jong
|
2cbe6b5f7f
|
info message when more optimal goto array[idx] is possible
|
2025-04-23 16:59:18 +02:00 |
|
Irmen de Jong
|
d2cc7ccdfa
|
remove redundant variable=0 initializations (BSS clear takes care of them)
|
2025-04-23 14:45:38 +02:00 |
|
Irmen de Jong
|
2cb183c6d8
|
fix regression for goto array[idx] on 6502 cpu which doesn't have jmp (ptr,x)
|
2025-04-23 02:56:10 +02:00 |
|
Irmen de Jong
|
84026b105f
|
smaller code for goto nosplitptrarray[index]
|
2025-04-22 20:01:16 +02:00 |
|
Irmen de Jong
|
a4d0589f10
|
fix errors like parse error still printed in color when -plaintext is set
|
2025-04-22 19:26:11 +02:00 |
|
Irmen de Jong
|
dd2d466350
|
code cleanups
|
2025-04-17 22:58:02 +02:00 |
|
Irmen de Jong
|
830da8de0a
|
memorymapped vars in ZP are now treated as ZP-variables by prog8 itself too
|
2025-04-17 22:19:01 +02:00 |
|
Irmen de Jong
|
14a2b96609
|
scanned libraries for self-modifying code/inline vars (romable problem)
|
2025-04-14 21:15:32 +02:00 |
|
Irmen de Jong
|
5c2f509a52
|
also hide emulator process output when using -quiet
|
2025-04-10 21:26:48 +02:00 |
|
Irmen de Jong
|
59582f5210
|
added -quiet flag to suppres all compiler and assembler messages
|
2025-04-10 21:16:26 +02:00 |
|
Irmen de Jong
|
a6835ce3f0
|
fix signed word value range check error, fix rol2() on array element
|
2025-04-08 21:05:50 +02:00 |
|
Irmen de Jong
|
73f6880ff8
|
fix irq related crash by no longer zeroing out stored vector
|
2025-04-02 22:22:21 +02:00 |
|
Irmen de Jong
|
20e534c468
|
fix memtop limit when using -varshigh option
|
2025-03-27 23:31:05 +01:00 |
|
Irmen de Jong
|
da7aa5dc49
|
forloop temp index variables no longer inline when romable
|
2025-03-26 22:38:50 +01:00 |
|
Irmen de Jong
|
8f2a43ca0a
|
temp vars for for loops indices in romable mode, are no longer allocated from the precious Zeropage
|
2025-03-26 22:12:22 +01:00 |
|
Irmen de Jong
|
e16452037c
|
no more self modifying code for loops over non-const word range
|
2025-03-22 22:51:30 +01:00 |
|
Irmen de Jong
|
344d79684a
|
get rid of more modifying code in forloops (byte ranges with step 1/-1)
fix invalid stack corrupting loops
|
2025-03-22 20:45:28 +01:00 |
|
Irmen de Jong
|
573a1d9b7b
|
refactor for loop over byte ranges
|
2025-03-22 16:07:46 +01:00 |
|
Irmen de Jong
|
25ab57580c
|
for loop over string no longer requires self-modifying code
|
2025-03-22 13:38:49 +01:00 |
|
Irmen de Jong
|
a332e0e3d1
|
remove self-modifying code from @(ptr)++ and @(ptr)--
romable errors for string and array variables turned into read-only warnings
remove self-modifying code from @(ptr)++ and @(ptr)--
|
2025-03-21 23:54:19 +01:00 |
|
Irmen de Jong
|
376f1cb139
|
remove self-modifying code from rol(ptr) and ror(ptr)
|
2025-03-21 23:16:40 +01:00 |
|
Irmen de Jong
|
3770a4fe0c
|
easier datatype notation by just using the type objects directly
|
2025-03-18 23:33:04 +01:00 |
|
Irmen de Jong
|
f04b97d890
|
support symlinks in paths (triggered by symlinked tmp on mac os)
|
2025-03-15 14:33:33 +01:00 |
|
Irmen de Jong
|
220ab773aa
|
fix asmgen error when assigning address of split word array without explicit adressof syntax
|
2025-03-06 23:20:42 +01:00 |
|
Irmen de Jong
|
582a70b046
|
fix calling label as subroutine (JSR label)
|
2025-03-04 21:53:53 +01:00 |
|
Irmen de Jong
|
5b63590ebf
|
fix symbol prefixing bug triggered by certain usage of %option no_symbol_prefixing
|
2025-03-03 22:26:19 +01:00 |
|
Irmen de Jong
|
9d49589d73
|
fix codegen for @(ptr-offset)=value writing bogus values
|
2025-03-02 23:40:14 +01:00 |
|
Irmen de Jong
|
125b66c929
|
fix crash in asmgen for boolean comparison with false, when not using optimizations
|
2025-03-01 23:57:55 +01:00 |
|
Irmen de Jong
|
5255f1c052
|
print offending source position in more of the TODO errors to help diagnosing
|
2025-03-01 23:16:34 +01:00 |
|
Irmen de Jong
|
3e2b2a698d
|
Separate simple Ast and Symboltable from codeCore into new simpleAst module. VirtualMachine and Intermediate do not need them, just codeCore.
|
2025-02-24 22:06:52 +01:00 |
|
Irmen de Jong
|
5c56267662
|
Also romable warning for inline variables. Added TODO: Romable in library files where applicable
|
2025-02-21 21:58:31 +01:00 |
|
Irmen de Jong
|
e55ce5504e
|
added %option romable to enable romable mode, but only generate a bunch of warnings for problematic codegeneration atm
|
2025-02-20 23:40:44 +01:00 |
|
Irmen de Jong
|
bc550a4549
|
fix optimized multi-value call result assignment
|
2025-02-19 20:19:20 +01:00 |
|
Irmen de Jong
|
ebdea9cf76
|
optimized call convention for multi-value return and assign on regular asmsubs (6502)
|
2025-02-19 20:19:20 +01:00 |
|
Irmen de Jong
|
09ec508f82
|
avoid unnecessary word extension when assigning a register byte to a byte target
|
2025-02-19 20:19:20 +01:00 |
|
Irmen de Jong
|
2aeb7a838e
|
finalize extracting neo and atari compiler targets into configuration files instead
|
2025-02-12 14:01:04 +01:00 |
|
Irmen de Jong
|
99ff5dd078
|
extracting neo and atari compiler targets into configuration files instead
|
2025-02-12 13:58:34 +01:00 |
|
Irmen de Jong
|
17334a1c58
|
fix 6502 codegen error for mixed case register params and normal params
|
2025-02-10 22:06:11 +01:00 |
|
Irmen de Jong
|
efd41260f2
|
added %jmptable
|
2025-02-09 15:02:59 +01:00 |
|
Irmen de Jong
|
8d2410622c
|
make 64tass less strict about implied register addressing modes on instructions like "asl"
|
2025-02-05 22:33:50 +01:00 |
|
Irmen de Jong
|
a940dc7d43
|
improve dumpvars output for zeropage variables
|
2025-02-03 22:36:58 +01:00 |
|
Irmen de Jong
|
74dd8fe80b
|
%output library header generation depends on compiler target
fileselector example tweaks
|
2025-02-02 20:51:45 +01:00 |
|
Irmen de Jong
|
8b158d9240
|
fix 64tass ascii encoding option for atari and neo6502
|
2025-02-01 21:47:01 +01:00 |
|
Irmen de Jong
|
f335251c2b
|
added ability to specify additional assembler options in custom target configurations
|
2025-02-01 16:09:43 +01:00 |
|
Irmen de Jong
|
2b7947f9b0
|
fix address check issue when using custom launcher
|
2025-01-31 23:34:12 +01:00 |
|
Irmen de Jong
|
1a04a3eb3a
|
added ability to configure custom ASM launcher code in target configuration file
|
2025-01-30 22:10:42 +01:00 |
|