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 / SIMTEL / CPMUG / CPMUG002.ARK / LLLMON.ASM < prev    next >
Assembly Source File  |  1984-04-29  |  2KB  |  92 lines

  1. ;SMALL MONITOR TO INTERFACE LLLBASIC AND LLLFP TO
  2. ;CP/M. A.R.G 10/9/77
  3. ;
  4. CPM    EQU    5        ;CP/M ENTRY
  5. ORIGIN    EQU    100H        ;NEED NAME FOR SP
  6. CONIN    EQU    404Q        ;LLL JUMP
  7. CONOUT    EQU    407Q        ;LLL JUMP
  8. STATUS    EQU    412Q        ;LLL JUMP
  9. HSRDR    EQU    415Q        ;LLL JUMP
  10. MEMST    EQU    2000Q        ;BOTTOM OF I/O BUFFER
  11. M1    EQU    8000H        ;INTERPRETER ORG.
  12. M1A    EQU    80013        ;INTERPRETER RESTART
  13. ;
  14.     ORG    ORIGIN
  15.     JMP    START
  16. ;
  17. ;************************************************************
  18. ;LLL JUMP VECTORS TO CP/M CALLS
  19.     ORG    CONIN
  20.     JMP    CIN
  21. ;
  22.     ORG    CONOUT
  23.     JMP    COUT
  24. ;
  25.     ORG    STATUS
  26.     JMP    STAT
  27. ;
  28.     ORG    HSRDR
  29.     JMP    RDR
  30. ;
  31. ;************************************************************
  32. ;PUT SP ADDRESS AT 100H. USE SPACE BELOW I/O BUFFER
  33. START:    LXI    H,ORIGIN
  34.     SHLD    MEMST-2
  35.     JMP    M1        ;LLL INITIALIZE ENTRY POINT
  36.                 ;CAN USE M1A FOR RE-ENTRY TO
  37.                 ;OLD PROGRAM
  38. ;************************************************************
  39. ;CP/M ENTRY ROUTINES
  40.  
  41. ;
  42. ;CIN RETURNS CHARACTER WITH HIGH BIT SET
  43. ;IN B REGISTER.  LLLFP SAVES B&C
  44. CIN:    PUSH    PSW
  45.     PUSH    H
  46.     PUSH    D
  47.     MVI    C,1
  48.     CALL    CPM
  49.     ORI    80H
  50.     POP    D
  51.     POP    H
  52.     MOV    B,A
  53.     POP    PSW
  54.     RET
  55. ;
  56. ;COUT ACCEPTS CHARACTER IN A
  57. COUT:    PUSH    H
  58.     PUSH    D
  59.     PUSH    B
  60.     ANI    7FH
  61.     MOV    E,A
  62.     MVI    C,2
  63.     CALL    CPM
  64.     POP    B
  65.     POP    D
  66.     POP    H
  67.     RET
  68. ;
  69. ;STAT CHECKS LEAST SIGN. BIT OF A, SAME CONVENTION
  70. ;AS CP/M
  71. STAT:    PUSH    H
  72.     PUSH    D
  73.     PUSH    B
  74.     MVI    C,11
  75.     CALL    CPM
  76.     POP    B
  77.     POP    D
  78.     POP    H
  79.     RET
  80. ;
  81. ;A.R.G. DOES'T HAVE A READER, SO NO CHECKS MADE
  82. RDR:    PUSH    H
  83.     PUSH    D
  84.     PUSH    B
  85.     MVI    C,3
  86.     CALL    CPM
  87.     POP    B
  88.     POP    D
  89.     POP    H
  90.     RET
  91. ;
  92.