Karol Stasiak
2d19537ed3
6809: Fix writing through pointers
2020-06-09 22:56:16 +02:00
Karol Stasiak
a947946313
Fix test
2020-06-09 22:37:55 +02:00
Karol Stasiak
bfe90193fa
6809: Implement / and %% operators
2020-06-09 22:35:57 +02:00
Karol Stasiak
dd78b14c5e
6809: more optimizations
2020-06-09 21:44:22 +02:00
Karol Stasiak
4e19b1ba34
6809: Fix -=
2020-06-09 21:43:31 +02:00
Karol Stasiak
b0577270d5
6809: various assembly fixes
2020-06-09 21:43:04 +02:00
Karol Stasiak
7ba01f83e3
6809: implement * and : operators
2020-06-04 17:07:19 +02:00
Karol Stasiak
b91f259971
6809: Assembly parsing improvements
2020-06-04 17:06:29 +02:00
Karol Stasiak
718245c56a
Module templates
2020-06-03 23:13:17 +02:00
Karol Stasiak
655edc35ff
Allow sizeof in assembly
2020-05-01 15:18:48 +02:00
Karol Stasiak
7f9bd18bdd
The big text encoding overhaul
2020-05-01 01:31:54 +02:00
Karol Stasiak
78fe0e37bb
Allow importing modules from subdirectories. Move platform definitions
2020-04-27 12:42:18 +02:00
Karol Stasiak
c8492173ee
6502: Improve index register optimizations
2020-04-27 12:02:45 +02:00
Karol Stasiak
29335d376a
8080: Use a register pair instead of absolute addressing when the registers are loaded anyway
2020-04-08 09:26:44 +02:00
Karol Stasiak
dcf8fb2900
Add support for MkImg for making BBC micro disk images
2020-04-06 22:53:15 +02:00
Karol Stasiak
0cba2dec04
Generate .INF file for every output file
2020-04-06 17:54:59 +02:00
Karol Stasiak
eba91e26e5
Remove a debugging message
2020-04-06 13:28:23 +02:00
Karol Stasiak
5b3e812bb1
8080: Fix some stack-related optimizations
2020-04-06 12:00:10 +02:00
Karol Stasiak
78346af2ef
8080: Some minor improvements
2020-04-06 11:35:14 +02:00
Karol Stasiak
078b22869a
8080: optimize some more cases of stack use
2020-04-05 23:13:43 +02:00
Karol Stasiak
064a9d7022
Fix some NPEs
2020-04-05 23:12:59 +02:00
Karol Stasiak
5df695f2c2
Add support for Pascal-style strings
2020-04-04 00:45:09 +02:00
Karol Stasiak
7ce088514f
6502: Fix and optimize sign extension
2020-04-02 00:22:15 +02:00
Karol Stasiak
80018a55b4
Allow different output formats for different segments
2020-03-31 19:01:29 +02:00
Karol Stasiak
ceef57ed18
Change encodeOneChar
to encodeDigit
2020-03-31 18:48:11 +02:00
Karol Stasiak
742fc50ccc
Don't used str2word
as scrstr2word
when the string terminator matches, but digits don't
2020-03-31 17:58:46 +02:00
Karol Stasiak
63ff28e94e
Changes to macros and parameter list syntax:
...
* non-asm macros can now take `const` and `call` parameters
* register parameters to asm functions and macros can be given names if annotated explicitly
2020-03-30 19:23:48 +02:00
Karol Stasiak
5cdc599b1d
Avoid overflow errors when estimating memset sizes
2020-03-29 01:45:31 +01:00
Karol Stasiak
5dd3e91c2d
6502: correctly optimize code before BIT instructions
2020-03-29 01:45:02 +01:00
Karol Stasiak
dfe33c9b7a
6502: Pointers should have priority when allocating to the zeropage
2020-03-26 18:52:46 +01:00
Karol Stasiak
78070c115f
Some tests that would have prevented few latest commits
2020-03-26 01:47:26 +01:00
Karol Stasiak
59882cf765
6502: Fix zp allocation
2020-03-26 01:38:54 +01:00
Karol Stasiak
2a3c9f04be
Fix >32bit constants
2020-03-26 01:36:41 +01:00
Karol Stasiak
5215400cb2
Fix lookup
2020-03-26 01:36:15 +01:00
Karol Stasiak
9bc4bb949e
Correctly compile assembly functions using all three registers as separate parameters
2020-03-26 01:35:44 +01:00
Karol Stasiak
842393106e
Remove debugging statements
2020-03-26 01:29:26 +01:00
Karol Stasiak
3187ed155e
Add signed16 and unsigned16 types
2020-03-25 23:53:26 +01:00
Karol Stasiak
b8e5e71c19
Improve performance of typing expressions
2020-03-25 23:51:53 +01:00
Karol Stasiak
e3d5ce4e81
Fix const functions of the form if c {return x} return y
2020-03-25 23:51:04 +01:00
Karol Stasiak
475496c137
Improvements to constant evaluation
2020-03-25 23:50:06 +01:00
Karol Stasiak
d478f3504f
Const-pure functions
2020-03-19 23:53:16 +01:00
Karol Stasiak
5acf92d4e8
Fix test
2020-03-19 21:25:08 +01:00
Karol Stasiak
769f31717d
6502: Detect pointer variables that have to be in the zeropage more accurately
2020-03-19 20:00:28 +01:00
Karol Stasiak
85030d3147
Added constant-only functions min, max, if. Improved handling of constant-only functions.
2020-03-19 19:43:24 +01:00
Karol Stasiak
9cd1e47a37
6502: Fix optimization bug
2020-03-19 18:58:49 +01:00
Karol Stasiak
17e660a2f6
Report lines with invalid short branches
2020-03-17 21:46:43 +01:00
Karol Stasiak
2eb8ef53ca
Put almost all warnings behind internal flags
2020-03-17 21:08:43 +01:00
Karol Stasiak
7939b0f2c1
Optimize commutative in-place modifications using arrays and pointers
2020-03-17 12:20:55 +01:00
Karol Stasiak
128dabba3f
Reorganize optimizations a bit
2020-03-17 12:20:16 +01:00
Karol Stasiak
a527eea0fc
Add more binary operators for constants in assembly
2020-03-17 02:03:44 +01:00