I can’t believe it’s been over a year since my last blog post, time sure does fly! I thought it was about time to get back to some posts and continue my Action! language topic.
Last time I talked about BYTE math, this time we will start looking at CARDinal math. In Action the CARD data type is a two byte unsigned value. Here is the first piece of Action! code:
CARD IPROC MAIN()I=1I=I+1RETURN
Here is the resulting disassembly:
0E6A: .BYTE #$00,#$000E6C: 4C 6F 0E JMP $0E6F 0E6F: A0 00 LDY #$00 0E71: 8C 6B 0E STY $0E6B 0E74: C8 INY 0E75: 8C 6A 0E STY $0E6A 0E78: EE 6A 0E INC $0E6A 0E7B: D0 03 BNE $0E80 0E7D: EE 6B 0E INC $0E6B
We start at memory location $E6A where two bytes are set aside for variable I, and then as usual we have a JMP to that start of the code.
The next four instructions assign the value 1 to I and you can see a...