home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.barnyard.co.uk
/
2015.02.ftp.barnyard.co.uk.tar
/
ftp.barnyard.co.uk
/
cpm
/
walnut-creek-CDROM
/
CPM
/
GENASM
/
DISPMEN.LBR
/
DISPDEMO.MQC
/
DISPDEMO.MAC
Wrap
Text File
|
2000-06-30
|
3KB
|
123 lines
;M80 DEMO FILE FOR DISPMEN MACRO by R. Buckman 17 NOV 85
;
.8080
FALSE EQU 0
TRUE EQU NOT FALSE
MACLIB DISPMEN.LIB ;Assumes that DISPMEN macro is
;..in a file named DISPMEN.LIB
ASEG
ORG 100H
START: LXI H,0
DAD SP
SHLD OSTACK
LXI SP,NSTACK
;
CALL FFEED
DISPMEN MENU1TOP,MENU1BOT,38
JMP PAST
;
;Here is the first menu. Each menu option is 38 characters long.
;
MENU1TOP EQU $
; '----5---10---15---20---25---30---35-38'
DB 'CAL - Dial number '
DB 'COA - Carrier on (answer mode) '
DB 'COO - Carrier on (originate mode) '
DB 'CPM - Exit to CP/M (no hangup) '
DB 'DEL - Erase present savefile '
DB 'DIR - Directory (may specify drive) '
DB 'DSC - Disconnect (stay in MODEM7) '
DB 'HLP - List secondary options '
DB 'LOC - Toggle local echo on/off '
DB 'LOG - Log new disk and/or drive '
DB 'LST - Toggle LST: device on/off '
DB 'OFF - Exit to CP/M (hangup phone) '
DB 'PAR - Select data & parity mode '
DB 'RET - Retn to term mode (no data loss)'
DB 'WRT - Write file (from terminal mode) '
DB 'XPR - Toggle expert mode (menu on/off)'
DB 'M - Show this menu '
DB 'S - Send CP/M file '
DB 'R - Receive CP/M file '
DB 'T - Terminal mode (opt file name) '
DB 'E - Terminal mode with echo '
DB '? - Display current status '
MENU1BOT EQU $
;
;Here is the second menu. Each option is 18 characters long.
;
MENU2TOP EQU $
; '----5---10---15-18'
DB ' 1 = Menu choice A'
DB ' 2 = Menu choice B'
DB ' 3 = Menu choice C'
DB ' 4 = Menu choice D'
DB ' 5 = Menu choice E'
DB ' 6 = Menu choice F'
DB ' 7 = Menu choice G'
DB ' 8 = Menu choice H'
DB ' 9 = Menu choice I'
DB '10 = Menu choice J'
DB '11 = Menu choice K'
MENU2BOT EQU $
;
PAST: MVI C,2
MVI E,13
CALL 5
MVI B,4
REPT: DCR B
JZ KEYIN
PUSH B
MVI C,2
MVI E,10
CALL 5
POP B
JMP REPT
KEYIN: MVI C,11
CALL 5
ORA A
JZ KEYIN
NEXTMENU:
CALL FFEED
DISPMEN MENU2TOP,MENU2BOT,18
QUIT: LHLD OSTACK
SPHL
RET
;
FFEED: MVI C,2
MVI E,12
CALL 5
RET
;SUBROUTINES USED BY DISPMEN MACRO.
CRLF: PUSH PSW
MVI A,13 ;PRINTS A CARRIAGE RETURN AND..
CALL CTYPE ;..LINE FEED. YOU MAY MODIFY..
MVI A,10 ;..IT TO CALL YOUR OWN ROUTINE..
CALL CTYPE ;..WHICH DUPLICATES THIS FUNCTION
POP PSW
RET
CTYPE: PUSH B ;OUTPUTS THE CHARACTER IN [A]..
PUSH D ;..TO THE SCREEN
PUSH H
MOV E,A
MVI C,2
CALL 5
POP H
POP D
POP B
RET
;
OSTACK: DS 2
DS 32
NSTACK:
END