Skip to content

tools: a VICE remote-monitor runner and a C128-aware typing bench script - #60

Merged
SensoriumEmbedded merged 6 commits into
SensoriumEmbedded:mainfrom
kfox:c128-tools
Oct 29, 2026
Merged

SensoriumEmbedded merged 6 commits into
SensoriumEmbedded:mainfrom
kfox:c128-tools

Conversation

@kfox

@kfox kfox commented Oct 15, 2026 •

Copy link
Copy Markdown
Contributor

Two small tools for the GEOS 128 launch work (milestone 2, #74–#76).

  • tools/c128/vicemon.py runs VICE remote-monitor commands, resumes the emulator, and runs more commands once a breakpoint stops it, all on one connection. It is for working on the C128 boot code in headless VICE.
  • tools/bench/type.py [--c128] types text into the KERNAL keyboard buffer by DMA, in C64 or C128 mode. Text must be ASCII. Letters are uppercased; \n is RETURN, \\ is a backslash, and \xNN sends key code NN exactly as written. Before each 10-key chunk it waits for the buffer to empty.

This PR used to carry a GEOS 128 crt builder and a VICE IEC decoder. Both are gone: GEOS 128 now launches from the TR menu the way GEOS 64 does, with no crt and no IEC drive (#62 and #63 are closed for the same reason).

Verified

  • tools/bench/test_type.py covers the escapes, and python3 -m unittest discover -s tools/bench passes (85 tests).
  • On a TR+ in an NTSC C128, type.py 'print 6*7\nprint "\x41\x42"\x0d' in C64 mode and the same text with --c128 in C128 BASIC typed both lines, waiting between chunks, and BASIC printed 42 and AB.
  • vicemon.py has been run only against a fake monitor.

Reviewed at medium, and the review's fix commit at low.

@kfox kfox changed the title tools: C128 GEOS crt builder, VICE IEC decoder, and a typing bench script tools: a VICE remote-monitor runner and a C128-aware typing bench script Oct 27, 2026
@kfox
kfox marked this pull request as ready for review October 27, 2026 20:05
@SensoriumEmbedded

Copy link
Copy Markdown
Owner

Thank you for the bench typing script and the VICE monitor runner, and for the whole GEOS 128 set that arrived with them, this is a big step for the C128 side! :)

I reviewed the four PRs together, each merged onto current main (53b3d3d) in the order you gave (#60, #74, #75, #76), and built both targets at each step. The notes for each one are on its own PR. As always, feel free to push back on anything that's inappropriate or would take significant memory/code to resolve.

Memory: nothing here is compiled into the firmware, so both images are unchanged.

Nothing to change on this one before merging.

Thank you!

@SensoriumEmbedded
SensoriumEmbedded merged commit f764462 into SensoriumEmbedded:main Oct 29, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants