Commit graph

139 commits

Author SHA1 Message Date
9f24408a0b Added pragma to control number of steps in scripts and macros. Now that we support file loading some scripts might need more steps to process images or whatnot. 2026-06-12 15:12:34 +02:00
b2e9e3dc17 Added file loading (bin, text files) into SCRIPTS 2026-06-12 14:48:33 +02:00
3748e0bd3e v1.5
Built with: go version go1.25.1 linux/amd64
Build date: 2026-06-11T00:16:51Z

SHA256 checksums:
f4fdc16cebdc1db0398ffd4599136fc767e431d319b44afdebd81845aeb4b8a8  c65gm_v1.5_darwin_amd64.tar.gz
eeb0f2afd1201bea068889ab14dc07fb9c01fa2dc452883e71efa71354cc3c77  c65gm_v1.5_darwin_arm64.tar.gz
fe1f597ca4a06b0470f4553b964c87cf10e4388cb831f7a4e52aa65fbc734e49  c65gm_v1.5_linux_amd64.tar.gz
971b630f0cec3eb01b3bdae3883d25d467ac1760a7632525a89566e23ce43c24  c65gm_v1.5_linux_arm64.tar.gz
d6314b4dab8ca297a0e57eabda581fba707f74c951c6c5f14ab8ea47d14cac2f  c65gm_v1.5_windows_amd64.zip
2026-06-11 02:17:17 +02:00
d4f1213c06 Added meaningful error messages for Starlark code 2026-06-11 02:16:38 +02:00
205ae92d0e Optimized and, or and xor commands 2026-06-04 02:15:35 +02:00
c76c514d35 Merge pull request 'peephole_optimizer' (#5) from peephole_optimizer into main
Reviewed-on: #5
2026-06-04 01:26:11 +02:00
1abad8bb92 Add experimental peephole optimizer with 5 passes, CLI flags, pragmas, and I/O region protection. 2026-06-04 01:21:10 +02:00
28723878b1 Optimizer removed redundant lda's 2026-06-04 00:05:24 +02:00
89bd30bfbd Fixed optimizer bugs 2026-06-03 23:23:54 +02:00
037d232c55 First naive version of optimizer 2026-06-03 21:51:29 +02:00
59b53fb5f0 v1.4
Built with: go version go1.26.3 linux/amd64
Build date: 2026-05-24T11:45:55Z

SHA256 checksums:
5ef2aa7ee40195d5d46ed8087b4640f443fa0ef8ffd6d60307e836de91999569  c65gm_v1.4_darwin_amd64.tar.gz
e7ce4a66762ce81e12e2e1784dab0bb26608233b650f56d922b0fb5a910fcd77  c65gm_v1.4_darwin_arm64.tar.gz
57f7db207cf279eb9858b7644b4184408180611347307e8a13539c82b55c9f8c  c65gm_v1.4_linux_amd64.tar.gz
6ff833f2e09d3b7372d19353597e62fc392551cd4dfeb89b56901d65293a3bd1  c65gm_v1.4_linux_arm64.tar.gz
89bfb0925107f7555a2f0af341f78f6a00550bdeebced8e43e44bc6b2eeadcab  c65gm_v1.4_windows_amd64.zip
2026-05-24 13:45:57 +02:00
2f762095b4 Fixed download path for the actual release place at siders site. 2026-05-24 13:45:42 +02:00
b5886f8b22 v1.3
Built with: go version go1.26.3 linux/amd64
Build date: 2026-05-24T11:39:00Z

SHA256 checksums:
403d6c21b09dcb373a0c95d6fffd120a134e5204b0332366497ca387d3fe1143  c65gm_v1.3_darwin_amd64.tar.gz
dd737c065b8b31a20e85027362d4644cdbd3c64099dbbd70ad96179652907502  c65gm_v1.3_darwin_arm64.tar.gz
b29840be9f17e514c2e6271b533fb99da80338b507d37f01de94b4ca88dedc62  c65gm_v1.3_linux_amd64.tar.gz
d5d83a8fd25418f41bf8713c6d39c24e26a900e6b6051fa5dc1234856c0bebd3  c65gm_v1.3_linux_arm64.tar.gz
5e81dccc0a0f46a0b5018cea807971391b7c1486750461feb06496178aec8365  c65gm_v1.3_windows_amd64.zip
2026-05-24 13:39:02 +02:00
e8ce52a74a Improvement on the release script 2026-05-24 13:38:45 +02:00
69dfd6c7c5 v1.2
Built with: go version go1.26.3 linux/amd64
Build date: 2026-05-24T11:36:13Z

SHA256 checksums:
3cf0c4f8666f7b4c4dffa080d2f3c4288f186c3adbd1e64e9fc78ed1f75da0a9  c65gm_v1.1_darwin_amd64.tar.gz
f4fb82b8a65f4c0c2f25f1b8dc4884414c585b28b55b27384ea46d732f756f13  c65gm_v1.1_darwin_arm64.tar.gz
9761c5b3d95079432e20c02ded18acd45242d9c82943a56c865f911a097b0498  c65gm_v1.1_linux_amd64.tar.gz
5f00d9013790acbdd28c1fdca1a6c2d9dc1e4cba05a40af016f4458f2d7da9f3  c65gm_v1.1_linux_arm64.tar.gz
9c8fc5e05f0cd36f40d3dcfba3122b96effb3b6485d3cb1ab9366a707fcfefb3  c65gm_v1.1_windows_amd64.zip
77d0b810e949cbeee5d0e0fdd576c2625928378167b33d637fad5039a6879582  c65gm_v1.2_darwin_amd64.tar.gz
6b8bd6ddde3e253d9919107aa7ea3be6f301e1315928fb363b78678f4c5cfecc  c65gm_v1.2_darwin_arm64.tar.gz
c0c1302ed3094aa5312cdf8b15289f304ee0aef3bb932092fbd4f38d2f06d73e  c65gm_v1.2_linux_amd64.tar.gz
ea83b13f62dd0de6532ac3ce665c954960af9a119fc7827c39377880381a914d  c65gm_v1.2_linux_arm64.tar.gz
1e266cef9d954444e4892bc0ccf72c5c9e06dc8f40ff501c15c243b46b2983e1  c65gm_v1.2_windows_amd64.zip
caac72e1d5fabdcfd81d61bb5d81284244511c73b79809f1b5c95572b9e7aabf  checksums.txt
2026-05-24 13:36:15 +02:00
a15592150c Improved and described release process. 2026-05-24 13:35:59 +02:00
45799804da v1.1
Built with: go version go1.26.3 linux/amd64
Build date: 2026-05-24T11:27:31Z

SHA256 checksums:
3cf0c4f8666f7b4c4dffa080d2f3c4288f186c3adbd1e64e9fc78ed1f75da0a9  c65gm_v1.1_darwin_amd64.tar.gz
f4fb82b8a65f4c0c2f25f1b8dc4884414c585b28b55b27384ea46d732f756f13  c65gm_v1.1_darwin_arm64.tar.gz
9761c5b3d95079432e20c02ded18acd45242d9c82943a56c865f911a097b0498  c65gm_v1.1_linux_amd64.tar.gz
5f00d9013790acbdd28c1fdca1a6c2d9dc1e4cba05a40af016f4458f2d7da9f3  c65gm_v1.1_linux_arm64.tar.gz
9c8fc5e05f0cd36f40d3dcfba3122b96effb3b6485d3cb1ab9366a707fcfefb3  c65gm_v1.1_windows_amd64.zip
2026-05-24 13:28:02 +02:00
33eccdb5cd Added release building script 2026-05-24 13:25:26 +02:00
f056377977 build_all script for examples and fixed warnings in examples about unused functions. 2026-05-17 16:29:54 +02:00
b6fce2a7f9 Fix pragma auto-removal for multi-FUNC groups sharing one FEND 2026-05-17 16:23:14 +02:00
8775ebaf43 Fixed multdiv demo and removed redundant demo 2026-05-17 15:26:46 +02:00
182c81b26a Added decimal output lib and used it in new multdivlib demo. 2026-05-17 15:04:05 +02:00
930e81573a Updated libsc.c65 and added multdivlib demo 2026-05-16 19:46:20 +02:00
a15d45a130 Add lib_mem_defrag and lib_mem_stats to memlib.c65 with demo 2026-05-16 02:11:51 +02:00
9720d00dcb Revert to previous working OpenCode 2026-05-16 01:29:33 +02:00
b095f78448 Assembler file is in the current dir not in temp 2026-05-14 21:50:30 +02:00
411106ea36 Added pragma _P_ASM_AFTER_VARS to control is ASM blocks should be generated after everything else (vars and string constants) 2026-04-17 23:01:42 +02:00
4a7a766aa8 Updated script_library_demo.c65 so it does at least something 2026-04-17 16:53:41 +02:00
ea45c9421e Simplified compile and start scripts in all examples 2026-04-17 16:30:07 +02:00
027eda5069 Added help for users to get acme installed on their system if it's missing. 2026-04-17 16:02:44 +02:00
163d6ff9c5 Added license. Docs updated to explain the command line options. 2026-04-17 15:08:53 +02:00
f4c713af7a Integrated that compiler executes acme assembler by itself, to build final executable 2026-04-17 14:42:15 +02:00
59f056734f Added c65cm stdlib as embedded into the c65gm exe so it's completely self contained, for easy distribution. 2026-04-17 11:53:20 +02:00
5e71adff2b Improved commands reference 2026-04-16 07:02:59 +02:00
aa59cf8008 Improved first func example 2026-04-15 19:22:51 +02:00
033767fb91 Fixed up shift demo and cbmiolib.c65 2026-04-15 17:43:13 +02:00
5f25d66aeb bit shift operators prefer shifting in ACC if possible 2026-04-15 07:11:56 +02:00
822326f993 Optimizations of shift operators 2026-04-15 03:03:35 +02:00
0357df9873 Added right and left shift operators 2026-04-15 01:29:38 +02:00
bc6fdaf8f2 Also removing all function vars, consts and labels when a function is removed on pragma _P_REMOVE_UNUSED 2026-04-13 21:28:16 +02:00
e5ee83d3dd Merge pull request 'auto_remove_unused_funcs' (#4) from auto_remove_unused_funcs into main
Reviewed-on: #4
2026-04-13 20:49:43 +02:00
bd4dc5d885 Updated tests so they work with new FuncHandler signature 2026-04-13 20:29:45 +02:00
652e147298 Added functionality to cull unused functions (by pragma _P_REMOVE_UNUSED) 2026-04-13 19:57:16 +02:00
4660b54d70 Added unused function warning. 2026-04-13 16:59:45 +02:00
51b9476a85 Fixed disabling some pragmas and test to go with them 2026-04-13 16:02:16 +02:00
2d2d665ebd Added pragma _P_IGNORE_UNUSED to suppress warnings for unused variables. 2026-04-13 15:13:21 +02:00
90caee5439 Merge pull request 'unused_variable_warnings' (#3) from unused_variable_warnings into main
Reviewed-on: #3
2026-04-13 13:39:37 +02:00
865930b161 Cleaned up bitfield handling so it's future proof (OR) 2026-04-13 13:36:59 +02:00
b400728893 Added so line numbers and source files are indicated on types declared but never used 2026-04-13 13:16:32 +02:00
0bfbfcdde5 Now unused vars seem to work 2026-04-13 12:57:27 +02:00