This file contains some disassembly of the Model-100 ROMs from 4000 hex to 4FFF hex. If you have updates or corrections, please contact Robert Briggs [70515,1262]. . . . ; ; This routine prompts for input with ? and then ; drops into the "get a line routine". ; 4644 ld a,'?' 4640 rst 4 ; (20 hex) display "?" 4641 ld a,' ' 4643 rst 4 ; (20 hex) display a space ; ; get a line from the keyboard and echo to display ; 4644 call 421a ; check for input$ from file (?) 4647 jp nz,4703 ; go do it if so 464a ld a,(f63ah) ; (??) 464d ld (fafch),a ; (??) 4650 ld de,f685h ; DE => keyboard buffer 4653 ld b,1 ; (?) get one character (?) 4655 call 12cbh ; get a character from keyboard 4658 ld hl,4655 ; set return to 4655 hex 465b push hl ; simulated... 465c ret c ; ... jr c,4655 465d cp 07fh ; delete ? 465f jp z,46a0 ; ... treat as back space 4662 cp 20h ; control character ? 4664 jp nc,46cc ; ... go do it if so 4667 ld hl,466d ; HL => table -3 466a ld c,07 ; 7 table entries 466c jp 4378 ; go do table look up / dispatch ; 466f defb 03 ; break character 4670 defw 4684 ; break routine entry 4672 defb 08 ; back space 4673 defw 46a0 ; back space routine 4675 defb 09 ; tab character 4676 defw 46ca ; tab routine 4678 defb 0dh ; carriage return 4679 defw 4696 ; CR handler (exit routine) 467b defb 15h ; CTL-U 467c defw 46c3 ; restart line routine 467e defb 18h ; CTL-X 467f defw 46c3 ; restart line routine 4681 defb 1dh ; left arrow 4682 defw 46a0 ; handle as back space ; ; handle CTL-C (break) ; 4684 pop hl ; remove loop return 4685 ld a,05eh ; caret (shift 6) 4687 rst 4 ; display it 4688 ld a,'C' ; load up a "C" 468a rst 20 ; display it 468b call 4222 ; output CR,LF to display 468e ld hl,f685 ; Hl => keyboard input buffer 4691 ld (hl),00 ; "null" string 4693 dec hl ; HL => one char before buffer 4694 scf ; set carry (no input) 4695 ret ; exit ; ; normal exit routine ; 4696 pop hl ; remove loop return 4697 call 4222 ; CR,LF to display 469a xor a ; zero terminate... 469b ld (de),a ; ...input string 469c ld hl,f684 ; hl => one cahr before buffer 469f ret ; done, exit