Directory of image this file is from
This file as a plain text file
/PAL-D PROGRAM TO TYPE OUT "0123456789"
/STARTING ADDRESS IS 0400
*0400 /SET STARTING ADDRESS AT 0400
START, CLA /CLEAR THE ACCUMULATOR
JMS CRLF /GO TO A SUBROUTINE TO TYPE A CARRAIGE
/RETURN AND A LINE FEED
TAD (-12) /LITERAL EQUAL TO -10 IN DECIMAL
DCA COUNT /INITIALIZE A COUNTER SO WE KOW WHEN
/WE'RE DONE
TAD (260) /ASCII VALUE FOR THE CHARACTER "0"
DCA DIGIT /INITIALIZE THE CHARACTER REGISTER
/TO CONTAIN THE ASCII FOR THE FIRST DIGIT
/LOOP TO PUT OUT THE CHARACTERS AND THEN HALT
OOP, TAD DIGIT /GET THE CHARACTER TO BE OUTPUT
JMS OUTPUT /GO TO AN OUTPUT SUBROUTINE
ISZ DIGIT /INCREMENT THE CHARACTER REGISTER
/SO THAT IT CONTAINS THE NEXT ASCII CODE
ISZ COUNT /INCREMENT THE COUNTER AND SEE IF
/IT IS NOW ZERO
JMP LOOP /NOT YET ZERO, SO CONTINUE LOOPING
JMS CRLF /OUTPUT IS COMPLETE. TERMINATE THE
/LINE WITH A RETURN AND LINE FEED
HLT /PROGRAM IS DONE, SO HALT
/REGISTERS TO HOLD THE COUNTER AND THE ASCII CODE
COUNT, 0
DIGIT, 0
/SUBROUTINE TO TYPE OUT A CARRAIGE RETURN (ASCII CODE
/215) AND A LINE FEED (212)
CRLF, 0 /RETURN ADDRESS IS STORED HERE
TAD (215)
JMS OUTPUT /CALL THE OUTPUT SUBROUTINE
TAD (212)
JMS OUTPUT /CALL IT AGAIN
JMP I CRLF /RETURN TO THE CALLING PROGRAM
/SUBROUTINE TO ACTUALLY OUTPUT AN ASCII CHARACTER
OUTPUT, 0 /RETURN ADDRESS IS STORED HERE
TLS /START CHARACTER OUTPUT
TSF /SKIP WHEN OUTPUT IS COMPLETE
JMP .-1 /NO SKIP, SO GO BACK TO PREVIOUS INSTRUCTION
CLA
JMP I OUTPUT /OUTPUT COMPLETE, SO RETURN
$ /SYMBOL TO MARK END OF PROGRAM