mirror of
https://github.com/SEPPDROID/Digital-Research-Source-Code.git
synced 2025-10-24 17:04:19 +00:00
41 lines
896 B
Plaintext
41 lines
896 B
Plaintext
; MACRO LIBRARY FOR "DOWHILE" CONSTRUCT
|
||
;
|
||
GENDTST MACRO TST,X,Y,NUM
|
||
;; GENERATE A "DOWHILE" TEST
|
||
TST X,Y,,ENDD&NUM
|
||
ENDM
|
||
;
|
||
GENDLAB MACRO LAB,NUM
|
||
;; PRODUCE THE LABEL LAB & NUM
|
||
;; FOR DOWHILE ENTRY OR EXIT
|
||
LAB&NUM:
|
||
ENDM
|
||
;
|
||
GENDJMP MACRO NUM
|
||
;; GENERATE JUMP TO DOWHILE TEST
|
||
JMP DTEST&NUM
|
||
ENDM
|
||
;
|
||
DOWHILE MACRO XV,REL,YV
|
||
;; INITIALIZE COUNTER
|
||
DOCNT SET 0 ;NUMBER OF DOWHILES
|
||
;;
|
||
DOWHILE MACRO X,R,Y
|
||
;; GENERATE THE DOWHILE ENTRY
|
||
GENDLAB DTEST,%DOCNT
|
||
;; GENERATE THE CONDITIONAL TEST
|
||
GENDTST R,X,Y,%DOCNT
|
||
DOLEV SET DOCNT ;;NEXT ENDD TO GENERATE
|
||
DOCNT SET DOCNT+1
|
||
ENDM
|
||
DOWHILE XV,REL,YV
|
||
ENDM
|
||
;
|
||
ENDDO MACRO
|
||
;; GENERATE THE JUMP TO THE TEST
|
||
GENDJMP %DOLEV
|
||
;; GENERATE THE END OF A DOWHILE
|
||
GENDLAB ENDD,%DOLEV
|
||
DOLEV SET DOLEV-1
|
||
ENDM
|
||
|