|
|
@@ -36,8 +36,10 @@ are diagnostics, and never overwrite an earlier output. |
|
|
|
|
|
|
|
|
- [x] `build/n128c.prg` is produced by `scripts/build-driver.ps1` and is the |
|
|
- [x] `build/n128c.prg` is produced by `scripts/build-driver.ps1` and is the |
|
|
exact path `prepare-disk.ps1` injects as `n128c` and |
|
|
exact path `prepare-disk.ps1` injects as `n128c` and |
|
|
`launch-compiler.ps1` autostarts by default; the verifier drives those same |
|
|
|
|
|
scripts. The build asserts the entry label is `$1C0D`. |
|
|
|
|
|
|
|
|
`launch-compiler.ps1` autostarts by default; the verifier runs |
|
|
|
|
|
`prepare-disk.ps1 -RequireCompiler` and compares the injected `n128c` |
|
|
|
|
|
byte-for-byte with `build/n128c.prg`, then drives the launcher. The build |
|
|
|
|
|
asserts the entry label is `$1C0D`. |
|
|
- [x] On `x128` the driver takes one source name (`SOURCE: counter.n8`), loads |
|
|
- [x] On `x128` the driver takes one source name (`SOURCE: counter.n8`), loads |
|
|
it from the session disk with `src_load` and no host conversion, runs the |
|
|
it from the session disk with `src_load` and no host conversion, runs the |
|
|
lexer, parser and emitter, and writes `COUNTER.PRG` (263 bytes) and |
|
|
lexer, parser and emitter, and writes `COUNTER.PRG` (263 bytes) and |
|
|
@@ -96,15 +98,19 @@ are diagnostics, and never overwrite an earlier output. |
|
|
|
|
|
|
|
|
## Completion |
|
|
## Completion |
|
|
|
|
|
|
|
|
- Tests run: `scripts/verify-driver-test.ps1` (builds the driver, then five |
|
|
|
|
|
x128 sessions: summary monitor run, success launcher run, syntax-failure |
|
|
|
|
|
launcher run, collision launcher run, generated-PRG monitor run). |
|
|
|
|
|
|
|
|
- Tests run: `scripts/verify-driver-test.ps1` (builds the driver, checks the |
|
|
|
|
|
`prepare-disk.ps1` injection, then five x128 sessions: summary monitor run, |
|
|
|
|
|
success launcher run, syntax-failure launcher run, collision launcher run, |
|
|
|
|
|
generated-PRG monitor run), and the same script through the regression |
|
|
|
|
|
harness: `run-regression.ps1 -Filter driver`. |
|
|
- Results: `summary: SOURCE COUNTER.N8 / OUTPUT COUNTER.PRG / 0 ERRORS`; |
|
|
- Results: `summary: SOURCE COUNTER.N8 / OUTPUT COUNTER.PRG / 0 ERRORS`; |
|
|
`success: COUNTER.PRG 263 bytes, COUNTER.MAP 95 bytes, no COUNTER.ERR`; |
|
|
`success: COUNTER.PRG 263 bytes, COUNTER.MAP 95 bytes, no COUNTER.ERR`; |
|
|
`failure: BAD.ERR E024 BAD.N8 3 1 END PROGRAM EXPECTED, E227 ... CANNOT EMIT |
|
|
`failure: BAD.ERR E024 BAD.N8 3 1 END PROGRAM EXPECTED, E227 ... CANNOT EMIT |
|
|
THIS CODE YET, no BAD.PRG, COUNTER.PRG unchanged`; `collision: OUTPUT EXISTS |
|
|
THIS CODE YET, no BAD.PRG, COUNTER.PRG unchanged`; `collision: OUTPUT EXISTS |
|
|
and COUNTER.PRG unchanged`; `run: generated COUNTER.PRG reported MB_ST_PASS in |
|
|
|
|
|
x128`. |
|
|
|
|
|
|
|
|
and COUNTER.PRG unchanged`; `injection: prepare-disk.ps1 wrote build/n128c.prg |
|
|
|
|
|
byte-identically as n128c`; `run: generated COUNTER.PRG reported MB_ST_PASS in |
|
|
|
|
|
x128`. The harness run reports `driver pass 82.5s` and `1 passed, 0 failed`, |
|
|
|
|
|
with `driver` now listed in `tests/regression/suites.ps1`. |
|
|
- Remaining risks: text `print` needs the generated-program print runtime; the |
|
|
- Remaining risks: text `print` needs the generated-program print runtime; the |
|
|
code buffer stays at 255 bytes, so larger programs fail with a diagnostic |
|
|
code buffer stays at 255 bytes, so larger programs fail with a diagnostic |
|
|
rather than a partial file; the summary check reads screen RAM through a |
|
|
rather than a partial file; the summary check reads screen RAM through a |
|
|
|