home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / simtel / sigm / vols000 / vol020 / aspm2.z80 < prev    next >
Encoding:
Text File  |  1984-04-29  |  11.3 KB  |  843 lines

  1.     TITLE COMMAND SUBSYSTEM-MODULE 2 OF SYSTEM MONITOR * Release A
  2. ;   ******Donated to the Pascal/Z Users Group,July 1980***********
  3. ;    COMMAND SUBSYSTEM - MODULE TWO
  4. ;
  5. ;    FILL MEMORY.
  6. ;
  7. FILL    CALL    GET2AD
  8.     PUSH    DE
  9.     PUSH    HL
  10.     CALL    CKBLK
  11.     JR    NC,FLL1
  12.     LD    E,00H
  13.     JR    FLL2
  14. FLL1    CALL    DCDAD2
  15.     JP    C,ERR05
  16. FLL2    LD    C,E
  17.     POP    HL
  18.     POP    DE
  19. FLL3    LD    (HL),C
  20.     INC    HL
  21.     DEC    DE
  22.     LD    A,D
  23.     OR    E
  24.     JR    NZ,FLL3
  25.     JP    COMPLT
  26. ;
  27. ;    JUMP ROUTINE...TWO ENTRIES
  28. ;        JUMP LOADS RESTART VECTOR AT [0000H]
  29. ;        GOTO LOADS RESTART ONTO STACK FOR RETURN
  30. ;
  31. JUMP    CALL    GETADD
  32.     JP    C,ERR01
  33.     LD    HL,RESTRT
  34.     LD    (0001H),HL
  35.     LD    A,0C3H
  36.     LD    (00H),A
  37.     JR    GT1
  38. GOTO    CALL    GETADD
  39.     JP    C,ERR01
  40.     LD    HL,RESTRT
  41.     PUSH    HL
  42. GT1    CALL    HLAD1
  43.     JP    (HL)
  44. ;
  45. ;    DISPLAY OR LIST MEMORY COMMAND .. Four options.
  46. ;    1. combined ASCII and HEX display.
  47. ;    2. HEX display
  48. ;    3. ASCII diplay.
  49. ;    4. Text display.
  50. ;
  51. LIST    LD    HL,DMESS1
  52.     CALL    VIDPRO
  53. DSPLAY    CALL    GETOPT
  54.     JP    C,ERR01
  55.     CP    SPACE
  56.     JP    Z,DSHEX
  57.     CP    'C'
  58.     JP    Z,DSCOM
  59.     CP    'H'
  60.     JP    Z,DSHEX
  61.     CP    'A'
  62.     JP    Z,DSASC
  63.     CP    'T'
  64.     JP    Z,DSTXT
  65.     JP    ERR06
  66. ;
  67. ;    DISPLAY COMBINED ASCII AND HEX
  68. ;
  69. DSCOM    CALL    GET2AD
  70. DSC1    CALL    ESCAPE
  71.     JP    C,DEXIT
  72.     CALL    CRLF
  73.     CALL    OUTHAD
  74.     CALL    OUT3SP
  75.     CALL    OUT3SP
  76.     PUSH    HL
  77.     PUSH    DE
  78.     CALL    OUT8HB
  79.     PUSH    AF
  80.     INC    B
  81.     POP    AF
  82.     JR    Z,DSC3
  83. DSC2    CALL    OUT3SP
  84.     DJNZ    DSC2
  85. DSC3    POP    DE
  86.     POP    HL
  87.     CALL    OUT8AB
  88.     JR    C,DSC1
  89.     JP    DCMPLT
  90. ;
  91. ;    DISPLAY HEX
  92. ;
  93. DSHEX    CALL    GET2AD
  94. DSH1    CALL    ESCAPE
  95.     JP    C,DEXIT
  96.     CALL    CRLF
  97.     CALL    OUTHAD
  98.     CALL    OUT3SP
  99.     CALL    OUT8HB
  100.     JP    NC,DCMPLT
  101.     CALL    OUTSPC
  102.     CALL    OUTEXP
  103.     CALL    OUTSPC
  104.     CALL    OUTSPC
  105.     CALL    OUT8HB
  106.     JP    NC,DCMPLT
  107.     JR    DSH1
  108. ;
  109. ;    DISPLAY ASCII
  110. ;
  111. DSASC    CALL    GET2AD
  112. DSA1    CALL    ESCAPE
  113.     JP    C,DEXIT
  114.     CALL    CRLF
  115.     CALL    OUTHAD
  116.     CALL    OUT3SP
  117.     CALL    OUT8AB
  118.     JP    NC,DCMPLT
  119.     CALL    DS8AB
  120.     JP    NC,DCMPLT
  121.     CALL    DS8AB
  122.     JP    NC,DCMPLT
  123.     CALL    DS8AB
  124.     JP    NC,DCMPLT
  125.     JR    DSA1
  126. DS8AB    CALL    OUT3SP
  127.     CALL    OUTEXP
  128.     CALL    OUT3SP
  129.     CALL    OUT8AB
  130.     RET
  131. ;
  132. DCMPLT    CALL    CRLFP
  133.     JP    COMPLT
  134. ;
  135. DEXIT    CALL    CRLFP
  136.     JP    EXIT
  137. ;
  138. ;    DISPLAY TEXT .. THIS IS A DANGEROUS ROUTINE
  139. ;    SHOULD ONLY BE USED FOR MEMORY CONTAINING ONLY
  140. ;    ASCII TEXT.
  141. ;
  142. DSTXT    CALL    GET2AD
  143.     CALL    CRLF
  144. DST1    LD    C,(HL)
  145.     CALL    VIDOUT
  146.     INC    HL
  147.     CALL    ESCAPE
  148.     JP    C,DEXIT
  149.     DEC    DE
  150.     LD    A,E
  151.     OR    D
  152.     JR    NZ,DST1
  153.     JP    DCMPLT
  154. ;
  155. ;    HEXIDECIMAL ARITHMETIC
  156. ;
  157. ;
  158. HEX    CALL    GETADD
  159.     JP    C,ERR07
  160.     LD    A,(IY-06H)
  161.     CP    2
  162.     JP    NZ,ERR07
  163.     CALL    HLAD1
  164.     EX    DE,HL
  165.     CALL    HLAD2
  166.     ADD    HL,DE
  167.     CALL    CRLFP
  168.     LD    C,'+'
  169.     CALL    VIDOUT
  170.     CALL    OUTSPC
  171.     CALL    OUTHAD
  172.     CALL    OUT3SP
  173.     CALL    OUTDSH
  174.     CALL    OUTSPC
  175.     CALL    HLAD2
  176.     SUB    A
  177.     EX    DE,HL
  178.     SBC    HL,DE
  179.     CALL    OUTHAD
  180.     JP    RECOMM
  181. ;
  182. ;    MOVE MEMORY COMMAND
  183. ;
  184. ;
  185. MOVE    CALL    GET2AD
  186.     LD    B,D
  187.     LD    C,E
  188.     EX    DE,HL
  189.     CALL    HLAD3
  190.     EX    DE,HL
  191.     SBC    HL,DE
  192.     JR    C,MV1
  193.     CALL    HLAD1
  194.     LDIR
  195.     JP    COMPLT
  196. MV1    EX    DE,HL
  197.     ADD    HL,BC
  198.     EX    DE,HL
  199.     CALL    HLAD2
  200.     DEC    DE
  201.     LDDR
  202.     JP    COMPLT
  203. ;
  204. ;    TEST MEMORY  .. THREE OPTIONS.
  205. ;    1. [F] GET FIRST BLOCK OF RAM.
  206. ;    2. [Q] QUICK TEST A BLOCK OF RAM.
  207. ;    3. [C] COMPLETELY TEST A BLOCK OF RAM.
  208. ;
  209. ;    TESTS [Q] AND [C] ARE DISTRUCTINE
  210. ;
  211. TEST    CALL    CRLFP
  212.     CALL    GETOPT
  213.     CP    SPACE
  214.     JP    Z,FTEST
  215.     JP    C,ERR01
  216.     CP    'F'
  217.     JP    Z,FTEST
  218.     CP    'Q'
  219.     JP    Z,QTEST
  220.     CP    'C'
  221.     JP    NZ,ERR06
  222. ;
  223. ;    COMPLETE TEST
  224. ;
  225.     CALL    CRLFP
  226.     CALL    GET2AD
  227.     SUB    A
  228. TC1    PUSH    AF
  229.     CALL    TLOOP
  230.     JR    C,TC2
  231.     POP    AF
  232.     INC    A
  233.     JR    NZ,TC1
  234.     JP    COMPLT
  235. TC2    POP    AF
  236.     JP    EXIT
  237. ;TEST LOOP
  238. TLOOP    CALL    HLAD1
  239.     LD    B,D
  240.     LD    C,E
  241. TL0    PUSH    AF
  242.     CALL    ESCAPE
  243.     JR    C,TL1
  244.     POP    AF
  245.     LD    (HL),A
  246.     CPI
  247.     CALL    NZ,TERR
  248.     RET PO
  249.     JR    TL0
  250. TL1    POP    AF
  251.     SCF
  252.     RET
  253. ;
  254. ;    TEST ERR OUTPUT
  255. ;
  256. TERR    PUSH    HL
  257.     PUSH    AF
  258.     DEC    HL
  259.     PUSH    HL
  260.     LD    HL,TMESS1
  261.     CALL    VIDPRO
  262.     POP    HL
  263.     CALL    OUTHAD
  264.     CALL    OUT3SP
  265.     POP    AF
  266.     PUSH    AF
  267.     CALL    OUTHBT
  268.     CALL    OUTDSH
  269.     LD    A,(HL)
  270.     CALL    OUTHBT
  271.     POP    AF
  272.     POP    HL
  273.     RET
  274. TMESS1    DEFB    CR,LF,'RAM ERROR ',EOM
  275. ;
  276. ;    QUICK MEMORY TEST
  277. ;
  278. QTEST    CALL    GET2AD
  279.     LD    A,0AAH
  280.     CALL    TLOOP
  281.     JP    C,EXIT
  282.     LD    A,055H
  283.     CALL    TLOOP
  284.     JP    C,EXIT
  285.     JP    COMPLT
  286. ;
  287. ;    FIND FIRST BLOCK OF RAM
  288. ;
  289. FTEST    CALL    FMEM
  290.     JP    COMPLT
  291. FMEM    LD    HL,00
  292.     LD    A,0AAH
  293. FT1    LD    B,(HL)
  294.     LD    (HL),A
  295.     CP    (HL)
  296.     JR    Z,FT2
  297.     INC    HL
  298.     JR    FT1
  299. FT2    LD    (IY-0CH),L
  300.     LD    (IY-0BH),H
  301. FT3    LD    (HL),B
  302.     INC    HL
  303.     LD    B,(HL)
  304.     LD    (HL),A
  305.     CP    (HL)
  306.     JR    Z,FT3
  307.     DEC    HL
  308.     LD    (IY-0AH),L
  309.     LD    (IY-09H),H
  310.     LD    HL,TMESS2
  311.     CALL    VIDPRO
  312.     CALL    HLAD1
  313.     CALL    OUTHAD
  314.     CALL    OUTDSH
  315.     CALL    HLAD2
  316.     CALL    OUTHAD
  317.     RET
  318. ;
  319. TMESS2    DEFB    CR,LF,'FIRST CONTIGUOUS RAM MEMORY IS ',EOM
  320. ;
  321. ;    PROGRAM PROM ROUTINE
  322. ;    CROMEMCO BYTE-SAVER
  323. ;
  324. LOADUP    CALL    CRLFP
  325.     CALL    GET2AD
  326.     LD    B,D
  327.     LD    C,E
  328.     EX    DE,HL
  329.     CALL    HLAD3
  330.     EX    DE,HL
  331.     RET
  332. ;
  333. PROGRM    CALL    LOADUP
  334.     LD    A,128
  335. PROM1    PUSH    HL
  336.     PUSH    BC
  337.     PUSH    DE
  338.     LDIR
  339.     POP    DE
  340.     POP    BC
  341.     POP    HL
  342.     PUSH    AF
  343.     CALL    ESCAPE
  344.     JR    C,PROM2
  345.     POP    AF
  346.     DEC    A
  347.     JR    NZ,PROM1
  348.     JP    VMOVE0
  349. PROM2    POP    AF
  350.     JP    EXIT
  351. ;
  352. ;    LOCK UP THE SYSTEM
  353. ;
  354. LOCKUP    CALL    GETADD
  355.     JP    C,ERR05
  356. LKUP    LD    HL,LMESS2
  357.     CALL    VIDPRO
  358.     CALL    HLAD1
  359.     CALL    SKEY
  360.     CALL    VHEX
  361.     JR    C,LKUP
  362.     RLCA
  363.     RLCA
  364.     RLCA
  365.     RLCA
  366.     LD    B,A
  367.     CALL    SKEY
  368.     CALL    VHEX
  369.     JR    C,LKUP
  370.     ADD    A,B
  371.     CALL    HLAD1
  372.     CP    L
  373.     JR    NZ,LKUP
  374.     LD    HL,LMESS1
  375.     CALL    VIDPRO
  376.     JP    RESTRT
  377. ;
  378. ;
  379. ;    VERIFY MEMORY
  380. ;
  381. VMOVE    CALL    LOADUP
  382. VMOVE0    CALL    VMOVE1
  383.     JP    C,EXIT
  384.     JP    COMPLT
  385. ;
  386. VMOVE1    CALL    ESCAPE
  387.     RET C
  388.     LD    A,(DE)
  389.     CPI
  390.     CALL    NZ,VERR
  391.     RET PO
  392.     INC    DE
  393.     JR    VMOVE1
  394. ;
  395. VERR    PUSH    BC
  396.     PUSH    DE
  397.     PUSH    HL
  398.     PUSH    AF
  399.     DEC    HL
  400.     PUSH    HL
  401.     LD    HL,VMESS1
  402.     CALL    VIDPRO
  403.     EX    DE,HL
  404.     CALL    OUTAB
  405.     POP    HL
  406.     CALL    OUTAB
  407.     POP    AF
  408.     POP    HL
  409.     POP    DE
  410.     POP    BC
  411.     RET
  412. ;
  413. OUTAB    CALL    OUT3SP
  414.     CALL    OUTHAD
  415.     CALL    OUTDSH
  416.     LD    A,(HL)
  417.     CALL    OUTHBT
  418.     RET
  419. ;
  420. ;    ENTER HEXIDECIMAL OR TEXT
  421. ;
  422. ENTER    CALL    GETOPT
  423.     JP    C,ERR01
  424.     CP    SPACE
  425.     JP    Z,ENHEX
  426.     CP    'T'
  427.     JP    Z,ENTXT
  428.     CP    'H'
  429.     JP    Z,ENHEX
  430.     JP    ERR06
  431. ;
  432. ENTXT    CALL    GETADD
  433.     JP    C,ERR03
  434.     CALL    HLAD1
  435.     CALL    CRLF
  436. ENT1    CALL    SKEY
  437.     CP    STX
  438.     LD    (HL),A
  439.     JP    Z,COMPLT
  440.     CP    (HL)
  441.     JP    NZ,ERR10
  442.     INC    HL
  443.     LD    C,A
  444.     CALL    VIDOUT
  445.     JR    ENT1
  446. ENHEX    CALL    GETADD
  447.     JP    C,ERR03
  448.     CALL    HLAD1
  449. ENH1    CALL    EHADD
  450.     JR    ENH3
  451. ENH2    LD    A,L
  452.     AND    7
  453.     CALL    Z,EHADD
  454. ENH3    CALL    EHBT1
  455.     CALL    EHBT2
  456.     CP    SPACE
  457.     JR    NZ,ENH3A
  458.     INC    HL
  459.     JR    ENH2
  460. ENH3A    CP    08H    ;CK BACK SPACE
  461.     JR    NZ,ENH3B
  462.     DEC    HL
  463.     JR    ENH1
  464. ENH3B    CP    ESC
  465.     JP    Z,COMM
  466.     CP    CR
  467.     JP    Z,COMM
  468.     CALL    VHEX
  469.     JR    C,ENH1
  470.     ADD    A,A
  471.     ADD    A,A
  472.     ADD    A,A
  473.     ADD    A,A
  474.     LD    B,A
  475.     CALL    EHBT2
  476.     CALL    VHEX
  477.     JR    C,ENH1
  478.     ADD    A,B
  479.     LD    (HL),A
  480.     CP    (HL)
  481.     JP    NZ,ERR10
  482.     CALL    OUTSPC
  483.     INC    HL
  484.     JR    ENH2
  485. ;
  486. EHADD    CALL    CRLF
  487.     CALL    OUTHAD
  488.     CALL    OUT3SP
  489.     RET
  490. ;
  491. EHBT1    LD    A,(HL)
  492.     CALL    OUTHBT
  493.     CALL    OUTDSH
  494.     RET
  495. ;
  496. EHBT2    CALL    SKEY
  497.     PUSH    AF
  498.     LD    C,A
  499.     CALL    VIDOUT
  500.     POP    AF
  501.     RET
  502. ;
  503. ;    ASSIGN I/O VECTOR BYTE FLAG.
  504. ;
  505. ASSIGN    CALL    GETADD
  506.     JP    C,ERR05
  507.     CALL    HLAD1
  508.     LD    A,L
  509.     LD    (IY-4DH),A
  510.     JP    COMPLT
  511. ;
  512. ;    INPUT FROM A PORT
  513. ;
  514. INPUT    CALL    GETADD
  515.     JP    C,ERR05
  516.     CALL    HLAD1
  517.     EX    DE,HL
  518.     CALL    HLAD2
  519.     LD    A,(IY-06H)
  520.     CP    1
  521.     JP    NZ,ERR05
  522. INP1    CALL    CRLFP
  523.     LD    C,E
  524.     LD    A,L
  525.     IN    A,(C)
  526.     CALL    OUTHBT
  527.     CALL    SKEY
  528.     CP    SPACE
  529.     JR    Z,INP1
  530.     JP    COMPLT
  531. ;
  532. ;    OUTPUT TO A PORT
  533. ;
  534. OUTPUT    CALL    GETADD
  535.     JP    C,ERR05
  536.     CALL    HLAD1
  537.     EX    DE,HL
  538.     CALL    HLAD2
  539.     LD    A,(IY-06H)
  540.     CP    2
  541.     JP    NZ,ERR05
  542. OUT1    LD    C,E
  543.     LD    A,L
  544.     OUT    (C),A
  545.     CALL    CRLFP
  546.     CALL    SKEY
  547.     CP    SPACE
  548.     JR    Z,OUT1
  549.     JP    COMPLT
  550. ;
  551. ;    SEARCH MEMORY FOR A HEX OR ASCII STRING
  552. ;
  553. SEARCH    CALL    CRLFP
  554.     CALL    GET2AD
  555.     LD    A,(IX+3)
  556.     OR    A
  557.     JP    Z,ERR08
  558.     LD    B,D
  559.     LD    C,E
  560.     EXX
  561.     CALL    HLIX
  562.     LD    A,(HL)
  563.     CP    QUOTE
  564.     JR    NZ,SHEX
  565.     INC    HL
  566.     CALL    SCHSU
  567.     EX    DE,HL
  568. SCH0    LD    (IY-0CH),0FFH
  569.     LD    A,(DE)
  570.     EXX
  571. SCH1    PUSH    AF
  572.     CALL    ESCAPE
  573.     JR    NZ,SCH1A
  574.     POP    AF
  575.     JP    EXIT
  576. SCH1A    POP    AF
  577.     CPI
  578.     JP    PO,COMPLT
  579.     JR    NZ,SCH1
  580.     PUSH    HL
  581.     EX    AF,AF'
  582.     EXX
  583.     POP    HL
  584.     PUSH    BC
  585.     PUSH    DE
  586.     PUSH    HL
  587. SCH2    INC    DE
  588.     LD    A,(DE)
  589.     CPI
  590.     JP    PO,SCH3
  591.     JR    Z,SCH2
  592.     POP    HL
  593.     JR    SCH3B
  594. SCH3    LD    A,(IY-0CH)
  595.     INC    A
  596.     LD    (IY-0CH),A
  597.     AND    07H
  598.     JR    NZ,SCH3A
  599.     CALL    CRLFP
  600. SCH3A    CALL    OUT3SP
  601.     POP    HL
  602.     DEC    HL
  603.     CALL    OUTHAD
  604. SCH3B    POP    DE
  605.     POP    BC
  606.     EX    AF,AF'
  607.     EXX
  608.     JR    SCH1
  609. SCHSU    PUSH    HL
  610.     LD    E,(IY-02H)
  611.     LD    D,(IY-01H)
  612.     SBC    HL,DE
  613.     LD    A,(IY-03H)
  614.     SUB    L
  615.     LD    C,A
  616.     LD    B,00H
  617.     POP    HL
  618.     RET
  619. SHEX    CALL    SCHSU
  620.     PUSH    HL
  621.     PUSH    HL
  622. SCH5    LD    E,00H
  623. SCH6    LD    A,(HL)
  624.     CP    SPACE
  625.     JR    Z,SCH7
  626.     CP    MINUS
  627.     JR    Z,SCH7
  628.     CALL    VHEX
  629.     JP    C,ERR09
  630.     SLA    E
  631.     SLA    E
  632.     SLA    E
  633.     SLA    E
  634.     ADD    A,E
  635.     LD    E,A
  636.     INC    HL
  637.     DEC    C
  638.     JR    Z,SCH8
  639.     JR    SCH6
  640. SCH7    INC    HL
  641.     DEC    C
  642. SCH8    LD    A,E
  643.     POP    DE
  644.     LD    (DE),A
  645.     INC    DE
  646.     PUSH    DE
  647.     INC    B
  648.     LD    A,C
  649.     OR    A
  650.     JR    NZ,SCH5
  651.     POP    DE
  652.     LD    C,B
  653.     LD    B,00H
  654.     POP    DE
  655.     JP    SCH0
  656. ;
  657. ;    WRITE TO CASSETTE.  DAJEN/TELETEK FORMAT
  658. ;
  659. WRITE    CALL    CRLFP
  660.     CALL    GET2AD
  661.     CALL    SWRITE
  662.     JP    COMM
  663. ;
  664. ;    READ FROM CASSETTE.  DAJEN/TELETEK FORMAT.
  665. ;
  666. READ    CALL    CRLFP
  667.     CALL    GETADD
  668.     OR    A
  669. ;            ABSOLUTE LOAD
  670.     JR    Z,RE1
  671.     DEC    A
  672. ;            BIASED LOAD
  673.     JR    Z,RE2
  674.     DEC    A
  675.     JP    NZ,ERR03
  676. ;            SPECIFIC LOAD
  677.     JR    RE3
  678. RE1    LD    HL,00H
  679.     JR    RE2A
  680. RE2    CALL    HLAD1
  681. RE2A    SUB    A
  682.     JR    RE4
  683. ;
  684. ;    SPECIFIC LOAD
  685. ;
  686. RE3    CALL    CALCAD
  687.     SUB    A
  688.     DEC    A
  689. ;    ABSOLUTE/BIAS LOAD
  690. RE4    CALL    SREAD
  691.     JP    COMM
  692. ;
  693. ;    COMPLETION VECTOR
  694. ;
  695. COMPLT    LD    HL,CMESS1
  696. CMPT1    CALL    VIDPRO
  697.     JP    RESTRT
  698. EXIT    LD    HL,CMESS2
  699.     JR    CMPT1
  700. ;
  701. ;    Not Available message; jump to restart
  702. ;
  703. NAVAIL    LD    HL,NMESS1
  704.     CALL    VIDPRO
  705.     JP    RECOMM
  706. ;
  707. ;    CPM FILE VECTOR     
  708. ;
  709. CPM    LD    HL,NMESS2
  710.     CALL    VIDPRO
  711.     JP    DISK1
  712. ;
  713. ;    ERROR VECTORS
  714. ;
  715. ERR01    LD    HL,EMAC01
  716. EV1    CALL    VIDPRO
  717.     JP    RECOMM
  718. ERR02    LD    HL,EMAC02
  719.     JR    EV1
  720. ERR03    LD    HL,EMAC03
  721.     JR    EV1
  722. ERR04    LD    HL,EMAC04
  723.     JR    EV1
  724. ERR05    LD    HL,EMAC05
  725.     JR    EV1
  726. ERR06    LD    HL,EMAC06
  727.     JR    EV1
  728. ERR07    LD    HL,EMAC07
  729.     JR    EV1
  730. ERR08    LD    HL,EMAC08
  731.     JR    EV1
  732. ERR09    LD    HL,EMAC09
  733.     JR    EV1
  734. ERR10    LD    HL,EMAC10
  735.     JR    EV1
  736. ;
  737. ;    MONITOR TABLES
  738. ;
  739. CTBLE    DEFB    'UCPMDT'
  740. VTBLE    DEFB    'UMDT'
  741. DELCHR    DEFB    ' .,;:-+*/='
  742. ;
  743. ;    WORD LIST FOR MACRO-MESSAGES
  744. ;
  745. WD00    DEFB    CR,LF,PROMP,EOM
  746. WD01    DEFB    'COMMAND ',EOM
  747. WD02    DEFB    'ERROR ',EOM
  748. WD03    DEFB    '; REENTER ',EOM
  749. WD04    DEFB    'ENTER ',EOM
  750. WD05    DEFB    'SOURCE/DESINATION ',EOM
  751. WD06    DEFB    'ADDRESS ',EOM
  752. WD07    DEFB    'NOT AVAILABLE ',EOM
  753. WD08    DEFB    'HEXIDECIMAL ',EOM
  754. WD09    DEFB    'REVERSED ',EOM
  755. WD10    DEFB    'BYTE ',EOM
  756. WD11    DEFB    'COMPLETE ',EOM
  757. WD12    DEFB    'CP/M FILE ',EOM
  758. WD13    DEFB    'ESCAPE ',EOM
  759. WD14    DEFB    'OPTION ',EOM
  760. WD15    DEFB    'VERIFY ',EOM
  761. WD16    DEFB    'SEARCH FIELD ',EOM
  762. ;
  763. ;    MESSAGE MACROS
  764. ;
  765. SMESS1    DEFB    CLEAR,SCROLL
  766.     DEFB    '***SPHINX MONITOR ..Version I.1***',EOM
  767. SMESS2    DEFB    SCROLL,DIR,CR,LF,PROMP,EOM
  768. SMESS3    DEFB    STX,3
  769.     DEFW    SMESS2,WD04,WD01
  770.     DEFB    EOM
  771. CMESS1    DEFB    STX,2
  772.     DEFW    MAC2,WD11
  773.     DEFB    EOM
  774. CMESS2    DEFB    STX,2
  775.     DEFW    MAC2,WD13
  776.     DEFB    EOM
  777. DMESS1    DEFB    PAGE,PTGL,SCROLL,EOM
  778. NMESS1    DEFB    STX,5
  779.     DEFW    MAC2,WD01,WD07,WD03,WD01
  780.     DEFB    EOM
  781. NMESS2    DEFB    STX,2
  782.     DEFW    MAC2,WD12
  783.     DEFB    EOM
  784. LMESS1    DEFB    STX,2
  785.     DEFW    SMESS1,WD00
  786.     DEFB    '***UNLOCKED***',EOM
  787. LMESS2    DEFB    STX,3
  788.     DEFW    SMESS1,WD00,WD00
  789.     DEFB    '***LOCKED***',STX,2
  790.     DEFW    WD00,WD00
  791.     DEFB    'TO UNLOCK '
  792.     DEFB    STX,3
  793.     DEFW    WD04,WD08,WD10
  794.     DEFB    'KEY',EOM
  795. VMESS1    DEFB    STX,3
  796.     DEFW    WD00,WD15,WD02
  797.     DEFB    EOM
  798. ;    MACRO: CR LF CLEAR LINE
  799. MAC2    DEFB    LF
  800. MAC3    DEFB    SCROLL,CR,REPT,40H,SPACE,PAGE,CUP,SCROLL,EOM
  801. ;    MACRO: ERROR ; REENTER COMMAND
  802. MAC1    DEFB    STX,3
  803.     DEFW    WD02,WD03,WD01
  804.     DEFB    EOM
  805. ;COMMAND ERROR ;REENTER COMMAND
  806. EMAC01    DEFB    STX,3
  807.     DEFW    MAC2,WD01,MAC1
  808.     DEFB    EOM
  809. ;SOURCE/DESTINATION ERROR ; REENTER COMMAND
  810. EMAC02    DEFB    STX,3
  811.     DEFW    MAC2,WD05,MAC1
  812.     DEFB    EOM
  813. ;HEXIDECIMAL ADDRESS ERROR ; REENTER COMMAND
  814. EMAC03    DEFB    STX,4
  815.     DEFW    MAC2,WD08,WD06,MAC1
  816.     DEFB    EOM
  817. ;REVERSED ADDRESS ERROR ; REENTER COMMAND
  818. EMAC04    DEFB    STX,4
  819.     DEFW    MAC2,WD09,WD06,MAC1
  820.     DEFB    EOM
  821. ;HEXIDECIMAL BYTE ERROR ; REENTER COMMAND
  822. EMAC05    DEFB    STX,4
  823.     DEFW    MAC2,WD08,WD10,MAC1
  824.     DEFB    EOM
  825. EMAC06    DEFB    STX,3
  826.     DEFW    MAC2,WD14,MAC1
  827.     DEFB    EOM
  828. EMAC07    DEFB    STX,3
  829.     DEFW    MAC2,WD08,MAC1
  830.     DEFB    EOM
  831. EMAC08    DEFB    STX,1
  832.     DEFW    MAC2
  833.     DEFB    'NO '
  834.     DEFB    STX,2
  835.     DEFW    WD16,MAC1
  836.     DEFB    EOM
  837. EMAC09    DEFB    STX,4
  838.     DEFW    MAC2,WD16,WD08,MAC1
  839.     DEFB    EOM
  840. EMAC10    DEFB    STX,5
  841.     DEFW    MAC2,WD04,WD10,WD15,MAC1
  842.     DEFB    EOM
  843.