Download Merlin 128 manual
Transcript
Merlin 128 User's Manual The Assembler USING DATA TABLES IN PROGRAMS Merlin's various data commands are used by the programmer to store pure data bytes (as opposed to executable program instruction bytes) in memory for use by the program. As an example, here is a program that prints the sum of two numbers squared. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 * DATA TABLE DEMO * ORG $8000 CLEAR CHROUT SCNKEY GETIN EQU EQU EQU EQU $E544 $FFD2 $FE9F $FFE4 START JSR LDY INY LDA JSR LDX LDA BEQ JSR INX BNE LDA JSR LDA JSR CPY BCS JMP JSR JSR BEQ CMP BEQ JMP RTS DFB ASC HEX DFB CLEAR #-1 PRINT1 LOOP1 PRINT2 WAIT DONE DATA1 DATA2 DATA3 Page 78 DATA1,Y CHROUT #0 DATA2,X PRINT2 CHROUT LOOP1 DATA3,Y CHROUT #$8D CHROUT #$03 WAIT PRINT1 SCNKEY GETIN WAIT #$0D DONE WAIT #48,49,50,51 “ SQUARED IS” 00 #48,49,52,57 ;START WITH 1 LESS THAN '0' ($FF) ;Y = Y + 1 ;GET CHAR FROM TABLE ;PRINT NUMBER TO SE SQUARED ;LOOP TO PRINT TEXT ;PRINT SQUARED VALUE ;THREE LOOPS COMPLETE? ;IF SO WAIT FOR RETURN ;IF NOT BEGIN AGAIN ;WAS RETURN PRESSED?