; ; ZCPR2 Patch for Osborne 1 with ROM 1.4 ; ; This patch implements external paths ; and multiple command line buffer. ; ; ZCPR2 must be installed for a 58K System. ; ; Special Osborne Version of ZCPR2, as ; opposed to the distribution ZCPR2, must be ; used due to the 1.4 ROM. ; ZCPR2 Constants -- ; Beginning of Scratch Area for Buffers ; Base Address of External Path ; z2scr equ 0e600h ;1K below video ram path equ 40h ;external path ; ; Macros -- (MAC used to assemble) ; @gendd macro ?dd if (?dd gt 7fh) and (?dd lt 0ff80h) db 100h ;Displacement Range Error on JR else db ?dd endif endm jr macro ?n db 18h @gendd ?n-$-1 endm jrnz macro ?n db 20h @gendd ?n-$-1 endm ldir macro db 0edh,0b0h endm ; ; ; org 0e546h-1024 pop b dcr b ;=0 if cold boot jrnz done ; ; Cold Boot ; Initialize: ; Multiple Command Line Buffer ; Default Path ; lxi h,cmdset ;default MCL lxi d,clbase ;base lxi b,20 ldir lxi h,path ;init path mvi m,1 ;drive A inx h mvi m,0 inx h mvi m,0 lxi d,0 ;normal entry jr done1 ; ; Initial Values for MCL Buffer ; clbase equ z2scr clblen equ 200 cmdset: dw clbase+4 db clblen db 0 db 'STARTUP' db 0 ; ; Cleanup Routine ; org 0e5a5h-1024 done: lxi d,3 done1: end