Acorn Computer Limited Acorn (6502) — Acorn Computer (6502) User & Service Manual PDF (EN)

INSTRUCTION LENGTH IN BYTES TYPE 2 1 II RELATIVE: RELATIVE ADDRESSING MODE EXECUTION TIMERS 2 BYTES 2+t CYCLES HEX A9 MNEMONIC BRIEF EXPLANATION PUT THE NEXT BYTE ACCUMULATOR. "LOAD MNEMONIC VERBAL LDA# 2 BCC BCS BEQ BMI BNE BPL BVC BVS BRANCH IF CARRY CLEAR BRANCH IF CARRY SET BRANCH IF EQUAL (TO ZERO) BRANCH IF MINUS BRANCH IF NOT EQUAL BRANCH IF PLUS BRANCH IF OVERFLOW CLEAR BRANCH IF OVERFLOW SET 90 BRANCH IFC = 0 IMMEDIATE'. 2 2 A5 LDA Z 3 SHORTENED FORM OF LOAD ABS 00XX 'LOAD ZERO PAGE'. 3 3 AD LDA 4 LOAD A ABSOLUTE. THE FIRST OF THESE INSTRUCTIONS IS VERY IMPORTANT.

IF WE KNOW THAT WE WANT A0 IN THE ACCUMULATOR THEN IT IS WASTEFUL TO FIND A B0 F0 30 D0 10 50 70 C=1 Z = 1 N = 1 2 = 0 N =0 V = 0 V = 1 MEMORY LOCATION WHICH HAPPENS TO CONTAIN IT, SINCE TWO BYTES ARE NEEDED (GENERALLY) TO SPECIFY WHERE IT IS AND SO WE IMPLY, BY THE IMMEDIATE INSTRUCTION, WHEHE IT IS & ACTUALLY ENTER IT IN THE PROGRAM. THERE ARE COMPLEMENTARY STORE ACCUMULATOR 'STA' INSTRUCTIONS TO LDA 2-AND LDA. BYTES TYPE HEX 85 MNEMONIC TIMERS (IN THE FIRST 256 BYTES) 3 3 8D STA 3 STORE A ABSOLUTE (ANYWHERE IN MEMORY) WE CAN ALSO LOAD THE PROGRAM COUNTER. THE PROGRAM COUNTER IS AN 2 2 STAZ 2 STORE A ZERO PAGE INTERNAL REGISTER THAT POINTS TO THE NEXT LINE OF THE PROGRAM.

THE MNEMONIC FOR THIS IS NOT LDPC BECAUSE WHEN THE P.C. IS LOADED WITH A NEW VALUE IT GIVES THE MICROPROCESSOR A Dl FFERENT PLACE TO LOOK FOR INSTRUCTIONS: THE PROGRAM JUMPS. SO 'LOAD P.C. WITH NEXT TWO BYTES' (LDPC ) IS JMP, THIS IS REFERRED TO AS JUMP ABSOLUTE SINCE THE PROGRAM JUMPS TO A NEW ABSOLUTE ADDRESS. SO IF WE ARE NOT IN THE MONITOR ANDWANTTO BE,JMP FF04WILL ENTER THE MONITOR. NOW WHAT HAPPENS IF THE FOLLOWING PROGRAM IS RUN? LDA FE00 STA Z 20 JMP FF04 THE FIRST INSTRUCTION GETS THE CONTENTS OF FE00, AND PUTS IT IN THE ACCUMULATOR. THE SECOND STORES THE ACCUMULATOR IN LOCATION 0020JHE FIRST TWO 0'S REFER TO ZERO PAGE AND ARE ASSUMED BY THE PROCESSOR IN THE ZERO PAGE MODE.

THE THIRD GETS BACK TO THE MONITOR, SO THAT YOU CAN INSPECT LOCATION 20. THIS READS AS. 0030 0031 0032 0033 0034 0035 0036 0037 AD (OPCODE) 00 (DATA) LDA FE00 FE (DATA) 85 (OPCODE) 20 (DATA) 4C (OPCODE) 04 (DATA) STA Z20 ,! JMP FF04 FF (DATA)