Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
48
Task/Damm-algorithm/MACRO-11/damm-algorithm.macro11
Normal file
48
Task/Damm-algorithm/MACRO-11/damm-algorithm.macro11
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
.TITLE DAMMAL
|
||||
.MCALL .GTLIN,.PRINT,.EXIT
|
||||
DAMMAL::JMP DEMO
|
||||
|
||||
; VALIDATE DAMM STRING IN R0; ZERO FLAG SET IF VALID
|
||||
DAMM: CLR R2 ; INTERIM DIGIT
|
||||
BR 2$
|
||||
1$: SUB #60,R1 ; DIGIT?
|
||||
BCS 3$ ; IF NOT, NOT VALID
|
||||
CMP R1,#^D9
|
||||
BGT 3$
|
||||
MOV R2,R3 ; CALCULATE DAMM TABLE INDEX
|
||||
ASL R3
|
||||
ASL R3
|
||||
ADD R2,R3
|
||||
ASL R3
|
||||
ADD R1,R3
|
||||
MOVB 4$(R3),R2 ; GET NEW INTERIM DIGIT FROM TABLE
|
||||
2$: MOVB (R0)+,R1 ; NEXT CHAR
|
||||
BNE 1$ ; END OF STRING?
|
||||
TST R2 ; IF SO, CHECK IF INTERIM DIGIT IS 0
|
||||
3$: RTS PC
|
||||
4$: .BYTE ^D0,^D3,^D1,^D7,^D5,^D9,^D8,^D6,^D4,^D2
|
||||
.BYTE ^D7,^D0,^D9,^D2,^D1,^D5,^D4,^D8,^D6,^D3
|
||||
.BYTE ^D4,^D2,^D0,^D6,^D8,^D7,^D1,^D3,^D5,^D9
|
||||
.BYTE ^D1,^D7,^D5,^D0,^D9,^D8,^D3,^D4,^D2,^D6
|
||||
.BYTE ^D6,^D1,^D2,^D3,^D0,^D4,^D5,^D9,^D7,^D8
|
||||
.BYTE ^D3,^D6,^D7,^D4,^D2,^D0,^D9,^D5,^D8,^D1
|
||||
.BYTE ^D5,^D8,^D6,^D9,^D7,^D2,^D0,^D1,^D3,^D4
|
||||
.BYTE ^D8,^D9,^D4,^D5,^D3,^D6,^D2,^D0,^D1,^D7
|
||||
.BYTE ^D9,^D4,^D4,^D8,^D6,^D1,^D7,^D2,^D0,^D5
|
||||
.BYTE ^D2,^D5,^D8,^D1,^D4,^D3,^D6,^D7,^D9,^D0
|
||||
|
||||
DEMO: .GTLIN #5$ ; READ LINE
|
||||
MOV #5$,R0
|
||||
TSTB (R0) ; EMPTY LINE?
|
||||
BNE 1$
|
||||
.EXIT ; IF SO, STOP
|
||||
1$: JSR PC,DAMM ; TEST LINE
|
||||
BNE 2$ ; FAIL?
|
||||
.PRINT #3$
|
||||
BR DEMO
|
||||
2$: .PRINT #4$ ; PASS?
|
||||
BR DEMO
|
||||
3$: .ASCIZ /PASS/
|
||||
4$: .ASCIZ /FAIL/
|
||||
5$: .BLKB 200
|
||||
.END DAMMAL
|
||||
Loading…
Add table
Add a link
Reference in a new issue