1
0
mirror of https://github.com/KarolS/millfork.git synced 2024-12-25 06:29:17 +00:00
Commit Graph

1185 Commits

Author SHA1 Message Date
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
Karol Stasiak
748aa0cf19 Assembly statements should track their source location 2020-03-17 01:59:40 +01:00
Karol Stasiak
46a523a763 Fix warnings in the c1531 module 2020-03-17 01:59:02 +01:00
Karol Stasiak
ec8f2e6a1c Add warnings for calling from one segment to another overlapping one (#42) and -Wnone flag 2020-03-16 00:03:01 +01:00
Karol Stasiak
83b85ef0fc Support breakpoints in the label file (#44) 2020-03-16 00:01:04 +01:00
Karol Stasiak
3cc9996531 update changelog 2020-03-15 01:17:45 +01:00
Karol Stasiak
f57ecc9800 Improve and optimize memset (see #47) 2020-03-15 01:06:09 +01:00
Karol Stasiak
9f128d3c35 Remove debugging code 2020-03-15 01:04:21 +01:00
Karol Stasiak
24870ae62e Detect obviously overflowing constants 2020-03-15 01:01:08 +01:00
Karol Stasiak
ab597e2dbe Fix typo 2020-02-27 02:11:38 +01:00
Karol Stasiak
21ffbfc466 Extra optimization pass over non-inlined functions (implements #43) 2020-02-27 01:33:34 +01:00
Karol Stasiak
6e65cd1902 Better error messages when failing to parse array definitions (fixes #45) 2020-02-12 01:07:14 +01:00
Karol Stasiak
259d871786 Improve syntax error reporting in tests 2020-02-12 01:06:31 +01:00
Karol Stasiak
5380eb39c7 Update changelog 2020-02-11 01:11:15 +01:00
Karol Stasiak
63d4bf2317 6502 Fix an optimization bug with the carry flag (fixes #46) 2020-02-11 01:10:49 +01:00
Karol Stasiak
fb1ad18868 #45 Link to older versions of examples 2020-02-08 22:38:06 +01:00
Karol Stasiak
8b6e89f9a4 Various improvements for macros (fixes #39 and pertains to #40) 2020-02-02 23:25:06 +01:00
Karol Stasiak
5cb4717de6 Fix fatal typos in #34 2020-02-02 22:39:01 +01:00
Karol Stasiak
b41c76c10e Fix typo 2020-01-29 14:27:13 +01:00
Karol Stasiak
de4c261987 Improve testless build instructions (see #36) 2020-01-28 16:26:53 +01:00
Karol Stasiak
08acfed907
Merge pull request #36 from agg23/no-test-without-delete
Improved build without test instructions; no file deletion necessary
2020-01-28 16:25:34 +01:00
Karol Stasiak
5c40d581c0 6502: Fix optimization bug (fixes #41) and add more optimizations involving ARR 2020-01-24 02:19:04 +01:00
Karol Stasiak
d6fd1e8b77 6809: Improve booleans 2020-01-24 02:16:19 +01:00
Karol Stasiak
f247516187 6502: Fix fatal failure when considering undocumented optimizations (fixes #38) 2020-01-18 22:06:50 +01:00
Karol Stasiak
6774c283ae 6502: Add KIL instruction (fixes #37) 2020-01-18 00:09:06 +01:00
Karol Stasiak
7672ba008d 6502: Add missing instructions SHX and LAS 2020-01-18 00:08:02 +01:00
Karol Stasiak
09359235c7 Add immediate addressing mode for short branches and BRK to support some ugly tricks 2020-01-18 00:07:26 +01:00
Karol Stasiak
b3fba658dd Use zeropage indexed adressing when possible 2020-01-18 00:06:20 +01:00
Karol Stasiak
921a59bdad More tests 2020-01-17 23:29:39 +01:00
Karol Stasiak
63866fffe3 Document limitations of operators (closes #24) 2020-01-12 20:53:11 +01:00
Adam Gastineau
ee425a0325 Improved test instructions; no file deletion 2020-01-12 09:54:37 -08:00
Karol Stasiak
49bf0d2777 6502: Correctly inlie variables that happen to be returned (fixes #32) 2020-01-11 22:20:02 +01:00
Karol Stasiak
298e94e3bc
Merge pull request #34 from bsutherland/patch-2
Add voice 3 oscillator and ADSR output registers.
2020-01-10 18:40:19 +01:00
Karol Stasiak
6f68d9e668
Merge pull request #33 from bsutherland/patch-3
Fix cia_disable_irq macro.
2020-01-10 18:39:59 +01:00
Karol Stasiak
0333b339ca Allow omitting length in file array initalizers (fixes #35) 2020-01-10 18:37:49 +01:00
Karol Stasiak
17e02b9b13 Don't commit reproduction attempts 2020-01-10 18:37:01 +01:00
Bruce Sutherland
d49e5cf022
Fix cia_disable_irq macro.
I'm fairly sure this is the correct sequence of instructions to disable irq - tested in my own project. The original macro didn't work for me.
2020-01-05 10:53:51 +08:00
Bruce Sutherland
3dab3aad6b
Add voice 3 oscillator and ADSR output registers. 2020-01-05 10:41:37 +08:00
Karol Stasiak
43b64aac21 Documentation for macros (fixes #23) 2020-01-03 23:56:37 +01:00
Karol Stasiak
df1d5421be Do not allocate variables on top of fixed-address vairables and arrays (fixes #26) 2020-01-03 23:09:20 +01:00
Karol Stasiak
6e36166af2 Never remove or inline volatile variables (fixes #27) 2020-01-03 21:28:10 +01:00
Karol Stasiak
b9cdd0ffff Fix for output directory creation (#21) 2020-01-03 16:13:54 +01:00
Karol Stasiak
5c96b7e463
Merge pull request #31 from bsutherland/patch-1
Add SID filter control registers.
2020-01-03 15:38:43 +01:00
Karol Stasiak
b421dbba4f Create output directories if needed; implements #21 2020-01-03 15:01:55 +01:00
Karol Stasiak
e69b7084bc Allow complex word-sized LHS for most compound operators, implementing #24 2020-01-03 14:52:35 +01:00
Bruce Sutherland
237985117e
Add SID filter control registers. 2020-01-01 12:51:50 +09:00
Karol Stasiak
69c82d90a8 6502: Allow assigning between two statically allocated pointers; fixes #25 2019-12-30 14:28:37 +01:00
Karol Stasiak
709d3d0fcd 6502: Correctly assign true view pointies; fixes #28 2019-12-30 14:25:46 +01:00