Commit Graph

312 Commits

Author SHA1 Message Date
marcobaye
df8e52b544 refactored last commit
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@421 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-09-05 11:48:06 +00:00
marcobaye
ad9ef576ec now ignores BOM at start of source file
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@420 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-09-05 09:47:49 +00:00
marcobaye
b7037ea990 fixed bug where "!skip" areas at start/end were included in output file
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@419 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-09-03 10:01:43 +00:00
marcobaye
fc98be0ee1 fixed bug where a segment warning could cause another segment warning to disappear
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@418 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-09-03 09:49:12 +00:00
marcobaye
adb0852767 refactored "segment list" functions
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@417 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-09-03 00:11:41 +00:00
marcobaye
01313f1182 moved segment checks to final pass, made v0.98 force --strict-segments
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@416 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-09-02 22:36:23 +00:00
marcobaye
a037bcc41e throwing of some errors can now be delayed until symbol changes are done
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@415 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-09-01 17:59:06 +00:00
marcobaye
134ba39638 small fix so "label" and "label=*" throw the same error if pc undefined
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@414 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-09-01 16:23:08 +00:00
marcobaye
67b338e667 a bit of refactoring concerning "unpseudopc"
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@413 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-09-01 13:50:36 +00:00
marcobaye
f1a80756d1 fixed bug in anonymous backward labels
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@412 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-08-31 20:28:50 +00:00
marcobaye
5eba16ed6c tiny refactoring
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@411 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-08-31 14:55:41 +00:00
marcobaye
4b28af64a7 added code so release 0.98 will always use the smallest possible addressing mode
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@410 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-08-30 19:49:36 +00:00
marcobaye
514eb38177 added dec() and hex() functions
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@409 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-08-30 16:54:55 +00:00
marcobaye
a6a43015a8 added missing sanity check
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@408 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-08-29 21:02:25 +00:00
marcobaye
5f8918c774 added code to tell "symbol already defined" (in this pass) and "symbol
changed" (compared to previous pass) apart, which I need for version 0.98


git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@407 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-08-29 20:38:39 +00:00
marcobaye
158379ce9a "symbol twice" error now outputs location of previous definition,
just as "macro twice" does.


git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@406 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-08-29 18:27:50 +00:00
marcobaye
45ce8164e9 refactored "macro twice" code. messages about initial definitions and macro
call stacks are now output as "info" instead of "warning".


git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@405 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-08-29 15:14:11 +00:00
marcobaye
be1b072288 refactored error/warning stuff
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@404 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-08-28 16:45:31 +00:00
marcobaye
ec4db48d07 refactored program counter / outbuffer stuff
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@403 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-08-28 13:12:07 +00:00
marcobaye
be4580af53 finally removed the 64 KiB limit, the outbuffer size is now determined at
runtime. I added a hard limit of 64 MiB, but that value is completely
arbitrary.


git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@402 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-08-27 18:54:07 +00:00
marcobaye
d0b1ad84b7 writing to output buffer now only happens in final pass
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@401 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-08-21 00:00:31 +00:00
marcobaye
df7f1bf06b added "output pass", to ease adding of new features.
I had to modify two regression tests because they barfed in the second pass,
but real-world code would not do this, so I'm okay with this incompatibility.


git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@400 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-08-18 22:49:35 +00:00
marcobaye
0af42c7a8a rearranged struct, no change in functionality
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@399 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-08-18 17:23:23 +00:00
marcobaye
fc296d6abd in future versions, program counter in pseudopc blocks no longer silently wraps around to zero
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@398 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-08-16 22:19:54 +00:00
marcobaye
3c390cbde7 renamed struct component, no change in functionality
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@397 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-08-16 21:19:02 +00:00
marcobaye
3b2321c053 fixed bug in "file too large for apple format" message
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@396 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-08-14 10:30:17 +00:00
marcobaye
169541d452 changed experimental feature "dynamic symbol names" to "dynamic <ANYTHING>"
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@394 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-08-12 20:37:29 +00:00
marcobaye
b3ef885385 renamed some functions (to be moved to a separate file)
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@392 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-08-11 20:04:04 +00:00
marcobaye
fa0b186f66 in report file: macros are expanded, everything in loops is suppressed
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@391 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-08-07 09:37:41 +00:00
marcobaye
b9dd2d650d got rid of input_now pointer
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@390 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-08-06 11:02:55 +00:00
marcobaye
1fd0bee24c replaced known bugs in report generator code with new and improved ones
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@389 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-08-06 00:22:04 +00:00
marcobaye
25fcf4f1f4 "input_now" ptr is no longer exported
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@388 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-08-05 10:49:33 +00:00
marcobaye
7015508538 yet more refactoring
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@387 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-08-04 09:53:16 +00:00
marcobaye
a53aa01a1e more refactoring of input
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@386 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-07-31 12:36:47 +00:00
marcobaye
b11bdcded0 moved filename-used-for-resolving-relative-paths out of input struct
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@385 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-07-30 23:50:10 +00:00
marcobaye
e88aeab14c renamed fn and moved between files, no change in functionality
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@384 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-07-30 13:46:45 +00:00
marcobaye
fb9bbc7c56 moved enum from .h to .c file
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@383 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-07-30 13:36:50 +00:00
marcobaye
9d71a86a74 small fix, added "const"
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@382 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-07-30 09:40:12 +00:00
marcobaye
59ef7c71f8 inputstate enum is now only used in input.c
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@381 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-07-30 09:37:56 +00:00
marcobaye
73292e1b4f more refactoring of input
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@380 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-07-29 20:08:01 +00:00
marcobaye
ad6e86db12 fixed bug where "--dialect future" with file refs in macros could cause crashes
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@379 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-07-29 17:32:32 +00:00
marcobaye
47b1517777 started refactoring input
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@378 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-07-29 11:55:56 +00:00
marcobaye
3818f97723 in addition to "-DSYMBOL=VALUE", now "-D SYMBOL=VALUE" is also accepted
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@376 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-07-15 18:11:38 +00:00
marcobaye
0e20eeafd5 moved "GotByte" var to input.{ch}
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@374 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-06-24 09:45:46 +00:00
marcobaye
5af37ed13f just some comments
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@373 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-03-27 08:36:58 +00:00
marcobaye
43759e6026 cleaned up error messages
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@372 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-03-25 00:51:11 +00:00
marcobaye
15aa8b3a3c added another test file and did a bit of cleanup
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@371 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-03-24 16:07:20 +00:00
marcobaye
5a504b4ff3 moved code around, no change in functionality
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@370 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-03-21 00:47:33 +00:00
marcobaye
1e62973f99 fixed Makefile for MingW compiler
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@369 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-03-20 16:08:53 +00:00
marcobaye
5179714785 changed some longs to ints because using 64 bits is overkill
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@368 4df02467-bbd4-4a76-a152-e7ce94205b78
2024-03-19 15:30:57 +00:00