356 Commits

Author SHA1 Message Date
Timothe Litt
0a850cad48 ODS2: Message files for Windows builds
.gitignore carefully excludes some intermediate message files for
Windows builds, but were missed in the backlog commit.

The build scripting for them is easier on Unix.
2023-04-11 12:08:06 -04:00
Timothe Litt
070c77ec79
ODS2: Create/Directory fails (#9)
Create/directory fails because ODS-2 directories use
VAR records with a MRS of 512 and RAT of NOSPAN.

Ordinarily, MRS of 512 limits the data in a VAR record
to 510 bytes (2 bytes are used for the record length).

In the case of a directory, MRS includes the record length.

ODS2 enforces the MRS, but did not take this case into
account.

Fixes #8
2023-04-09 11:34:24 -04:00
Timothe Litt
b4c0ad7684
Merge pull request #5 from tlhackque/master
Update ODS2 in simtools
2022-10-11 20:03:52 -04:00
Timothe Litt
91379609cc Update ods2's .gitignore
Make ods2 less dependent on simtools/.gitignore

Note that Visual Studio's mess is currently handled at
the simtools level.
2022-10-10 12:35:06 -04:00
Timothe Litt
c800243aa6 Merge branch 'master' of https://github.com/tlhackque/open-simtools
# Conflicts:
#	.gitignore
#	extracters/ods2/Makefile
2022-10-10 12:03:53 -04:00
Timothe Litt
66e00b9900 Backlog of work since 2016
Too much to list all, but includes (in no particular order):
 - Cleanup for 64-bit builds, MSVC warnings.
 - Structured help
 - Help file compiler.
 - Supports volsets, writes/create work.
 - Support for I18n in messages, help.
 - Makefiles.
 - Initialize volume/volset
 - Command line editing/history

Builds and works on Linux and Windows (VS).
Not recently built or tested on other platforms, but
not intentinonally broken.
2022-10-10 11:00:20 -04:00
Olaf Seibert
37be615dcc Merge commit '0616816f8e81c24377dca6e191a82c406ab59394' into macro11-v0.8
Update to latest released version of macro-11.

Command run: git subtree pull --prefix=crossassemblers/macro11 ../macro11 macro11-v0.8
(should be equivalent to git subtree pull --prefix=crossassemblers/macro11 git://gitlab.com/Rhialto/macro11.git macro11-v0.8)
2022-07-06 19:00:22 +02:00
Olaf Seibert
0616816f8e Release version 0.8. 2022-07-07 07:07:07 +00:00
Paul Koning
334d7b6f33 Fix references to blank section
Its name is empty, not ". BLK."
2022-06-29 16:58:12 -04:00
Olaf Seibert
00f13146b5 Document more changes from Paul Koning. 2022-06-29 18:33:30 +02:00
Paul Koning
0513f914bc Bugfixes in macro expansion:
1. If expansion fails, don't crash.
2. Accept duplicate named arguments, the last one wins.
2022-06-29 09:45:37 -04:00
Paul Koning
7354aadbfc Allow expression (with constant value) in .RADIX
Also add a test file for it.
2022-06-28 09:32:34 -04:00
Olaf Seibert
fe83ebf9ed Update CHANGES file with recent news. 2022-06-27 21:12:58 +02:00
Olaf Seibert
08912623a9 Comments in playground. 2022-06-27 21:12:30 +02:00
Paul Koning
edd43e8f1d Fix .ident handling for ident strings 3 chars or less. 2022-06-27 14:28:02 -04:00
Paul Koning
417ff111ad Fix .IDENT to accept <val> just as .RAD50 does. 2022-06-27 09:51:19 -04:00
Paul Koning
2969c16583 Allow formal name of .IRP and .IRPC to be enclosed in < >. 2022-06-26 14:48:22 -04:00
Paul Koning
5f71c6b7c3 Allow explicit decimal point after .RADIX argument. 2022-06-26 14:44:21 -04:00
Paul Koning
0721a35400 Treat unexpected .IF argument as true, not false. This appears
to be what the reference assembler does, at least it is necessary
for certain RSTS source files to assemble without error.
2022-06-26 14:29:04 -04:00
Paul Koning
7da1e1ef56 Implement .ENABLE MCL 2022-06-26 14:27:19 -04:00
Paul Koning
21f21b9799 Fix macro calls with omitted argument that has a default value,
followed by additional (not omitted) arguments.
2022-06-26 13:41:37 -04:00
Paul Koning
aa8d5fdfef Always list lines that have an error 2022-06-26 13:40:00 -04:00
Paul Koning
c42c5732b3 Fix .library pseudo
Two problems:
1. Spurious "junk at end of line" message because no parsing was done
in pass 2
2. Error messages not shown because error printing only happens in
pass 2
Solution for both is to process the directive in both passes.
2022-06-26 13:13:49 -04:00
Paul Koning
43d7b493fb Allow TRAP without argument, or with non-literal argument 2022-06-26 13:13:49 -04:00
Paul Koning
fbb936d1ce Fix .psect without argument, add (ignored) pseudo ops
.mdelete, .cross, .nocross
2022-06-26 13:13:49 -04:00
Paul Koning
db9cb5a9ee Add default extensions to .include, .library 2022-06-26 13:13:03 -04:00
Olaf Seibert
be7bbc5539 Improve comment about the division by multiplying. 2022-06-21 20:02:04 +02:00
Olaf Seibert
13f0fb4d2b Replace the loop that divides by 10 by a divide. 2022-06-19 16:27:20 +02:00
Olaf Seibert
3eb7274625 Add some FP test cases, including some parse errors.
Adjust the parsing a bit, and generate 0 values for bad syntax
like the reference version does.
2022-06-19 16:16:31 +02:00
Olaf Seibert
3109f40bd5 Parse floats using integers (64 bits) only.
The algorithm is close to what the reference version is doing.
2022-06-19 14:56:14 +02:00
Olaf Seibert
bb56fc33f1 Add floating point parsing playground. 2022-06-19 14:49:41 +02:00
Olaf Seibert
e86f0bd4d5 Also add more checks to RT11 MLB reader. 2022-06-15 15:34:04 +02:00
Olaf Seibert
779c775107 Make RSX MLB parser more resistant to bad files. 2022-06-13 22:54:47 +02:00
Olaf Seibert
c16c409761 Document the source location of macro11
and which version has been synchronized most recently.
2022-06-08 22:59:18 +02:00
Olaf Seibert
0e54092d45 Merge commit 'c311f6a175fd52da171795bc093762f4eba4c136' into macro11-v0.7.2
Update to latest released version of macro-11.

Command run: git subtree pull --prefix=crossassemblers/macro11 ../macro11 macro11-v0.7.2
(should be equivalent to git subtree pull --prefix=crossassemblers/macro11 git://gitlab.com/Rhialto/macro11.git macro11-v0.7.2)
2022-06-08 20:52:56 +02:00
Olaf Seibert
ff183c0e36 Improve parsing of symbols.
In particular, don't confuse `4..` with a symbol.
2022-06-04 21:31:06 +02:00
Olaf Seibert
8d7414d7c3 Rename stream2 method "gets" to "getline"
because FORTIFY re#defines gets, and this gets is something different.
2022-01-05 22:29:03 +01:00
Olaf Seibert
a0add7154f Development after a release. 2022-01-05 22:27:00 +01:00
Olaf Seibert
c311f6a175 Release version 0.7.2
since the current state seems stable.
2022-01-05 21:30:15 +01:00
Olaf Seibert
29b7b4c540 Make the "gmake tests" target usable.
Add a leak exception for the leak sanitizer, needed on NetBSD 9.2.
2021-11-30 22:00:37 +01:00
Olaf Seibert
29cd179ff6 Remove outdated comment in test. 2021-11-30 21:56:45 +01:00
Olaf Seibert
39f1bcd238 Add %-expressions to CHANGES file. 2021-11-18 21:35:16 +01:00
Olaf Seibert
3a9d809b75 Optimize the previous version.
Fold the functionality of pull_up_reg() into evaluate_rec().
pull_up_reg() essentially returned a flag (EX_REG at the top, or not)
which can be represented with the outgoing flags word.
The check for recursion depth is made unneeded by doing the
"exceptional" case outside the recursion; luckily it is actually the
common case.
2021-11-15 21:35:37 +01:00
Olaf Seibert
1067b63043 Add the test with the weird expressions with registers.
Now that we have some code that seems to do pretty much what we want.
2021-11-15 19:28:19 +01:00
Olaf Seibert
c29dc7d7af Work in progress...
Make expressions work where the % operator isn't (only) at the top
level.
2021-11-15 19:28:19 +01:00
Olaf Seibert
21e9410571 Add evaluation of %+unary expressions.
This is a first step towards expressions like <%1>+1 and even later R1+1.
2021-11-15 18:31:15 +01:00
Olaf Seibert
2aa43f17f7 Make some expression tree operations more generic. 2021-11-15 18:26:10 +01:00
Olaf Seibert
6a3642e49a Nicer, more specific name for temp symbol. 2021-11-15 10:31:26 +01:00
Olaf Seibert
08c6254bdd Temp symbols are defined, so flag them as such. 2021-11-14 23:14:21 +01:00
Olaf Seibert
16b884a744 Add some more abusive test cases. 2021-11-14 23:09:35 +01:00