Z80 REPL (2018)

abagames.github.io

130 points by adunk 11 hours ago


flyinghamster - 9 hours ago

The one thing I lamented about the Apple II Plus (vs. the original with Integer BASIC) was that to make room for autostart, they had to rip out the mini-assembler in the Monitor ROM. That was the closest thing I ever saw to an assembly-language REPL before this. At least they were able to keep the disassembler.

jottinger - 9 hours ago

The source code for this is apparently 8 years old: https://github.com/abagames/z80-repl

With that said, I love the idea.

jhallenworld - 5 hours ago

You should support symbols... For example, the monitor on my 6800 / 6809 Exorciser simulator has this (the "Offset at..." is printed when it fixes forward references):

    ~/exorsim$ exor -d
    % a 1000
    1000: start bra skip
    1002:  nop
    1003:  nop
    1004: skip ldx #10
    Offset at 1001 set to 02
    1007: loop dex
    1008:  nop
    1009:  bne loop
    100b:  rts
    100c: 
    % sy
    1007 loop
    1004 skip
    1000 start
    % u 1000
    1000: 20 02               BRA $1004
    1002: 01                  NOP
    1003: 01                  NOP
    1004: CE 00 0A            LDX #$000A
    1007: 09                  DEX
    1008: 01                  NOP
    1009: 26 FC               BNE $1007
    100B: 39                  RTS
What would be even better: "a" brings up a built-in mini-editor. When you exit, the code is assembled.

https://github.com/jhallen/exorsim

networked - 9 hours ago

Cool idea! The REPL needs to handle whitespace after an instruction with no operands:

  > ld c,20h
  0E 20   (7 cycles)
  > ld c,20h [<-- trailing space here]
  0E 20   (7 cycles)
  > nop
  00      (4 cycles)
  > nop [<-- trailing space here]
  unknown instruction: nop
I also wish I could select from the completion list with Tab without typing more of the instruction, fish-style. I.e., you press Tab to go through completion 1, completion 2, ..., completion N, completion 1 again with Enter to confirm your pick.
torutofu - 9 hours ago

the fun part is how fast you can get back into Z80 muscle memory once the repl is giving you immediate feedback

j4cobgarby - 9 hours ago

Really nice! Would be fun if there were a few examples that could be loaded into memory

corbinvachal - 6 hours ago

[flagged]

Marbleferry815 - 9 hours ago

[dead]

- 7 hours ago
[deleted]