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 / RCPM / NBYE10.LBR / DEBUG.INC next >
Text File  |  2000-06-30  |  896b  |  40 lines

  1. DEBUG:        ;Debugger In-Line Print Routine.  Prints the 0FFH-terminated
  2.         ;message immediately following the call to this routine on
  3.         ;the local console, saving all registers and status.
  4.         ;
  5.         ;    e.g.    CALL    DEBUG
  6.         ;        DB    'HERE I AM',0FFH
  7.         ;
  8.         ;Exit Status:    None
  9.         ;
  10. ;
  11.     XTHL            ;SAVE HL, GET MESSAGE ADDRESS
  12.     PUSH    D        ;SAVE EVERYTHING ELSE
  13.     PUSH    B
  14.     PUSH    PSW
  15. DBGCHR:    MOV    A,M        ;GET NEXT MESSAGE CHARACTER
  16.     INX    H        ;KEEP POINTER CURRENT
  17.     CPI    0FFH        ;DONE?
  18.     JZ    DBGFIN        ;...YES
  19.     CALL    MYCONS        ;...NO, SEND TO MY CONSOLE
  20.     JMP    DBGCHR        ;    AND CONTINUE
  21. ;
  22. DBGFIN:    POP    PSW        ;RESTORE EVERYTHING EXCEPT HL
  23.     POP    B
  24.     POP    D
  25.     XTHL            ;RESTORE HL, TRUE RETURN ADRS TO STACK
  26.     RET            ;DONE
  27. ;
  28. ;
  29. ;
  30. MYCONS:    PUSH    PSW        ;SAVE CHARACTER TO OUTPUT
  31. W4MYCO:    IN    3        ;GET CHARACTER OUTPUT STATUS
  32.     ANI    00000001B    ;READY?
  33.     JZ    W4MYCO        ;...NO
  34.     POP    PSW        ;...YES, SEND THE CHARACTER AND EXIT
  35.     OUT    2
  36.     RET
  37. ;
  38. ;
  39. ;
  40.