Previous File Previous Page Single Page Next Page Next File

* NAME BASIC-MTHPAK DOC. 70181832000 REV. A PAGE 7

0181 * 0182 * 0183 * EFFECTIVE ADDRESS ROUTINE 0184 * 0185 * CALLING SEQUENCE: 0186 * 0187 * JST ADDR ADDRESS OF DAC TO ARGUMENT IN A REGISTER 0188 * ......RETURN EFFECTIVE ADDRESS AND RETURN ADDRESS LEFT 0189 * IN SPECIFIED TEMPORARY STORAGE LOCATIONS 0190 * 0191 * 0192 * THE ROUTINE LOADS THE ADDRESS OF THE ARGUMENT. IF THE INDEX 0193 * BIT IS SET THE CONTENTS OF THE X REGISTER ARE ADDED TO THE ADDRESS. 0194 * THE INDIRECT BIT IS THEN TESTED, AND IF SET, THE CONTENTS OF THE 0195 * ADDRESS ARE LOADED, AND THE ROUTINE LOOPS TO TEST THE INDEX BIT. 0196 * IF THE INDIRECT BIT IS RESET, THE EFFECTIVE ADDRESS IS SAVED, AND 0197 * THE RETURN IS MADE. THE ORIGINAL CONTENTS OF THE A REGISTER ARE 0198 * INCREMENTED AND SAVED AS A RETURN ADDRESS FOR THE CALLING ROUTINE. 0199 * 0200 * 0201 00046 0 000000 ADDR DAC ** EFFECTIVE ADDRESS ROUTINE 0202 00047 0 04 00117 STA LHTS SAVE ADDRESS 0203 00050 141206 AOA INCREMENT AND SAVE 0204 00051 0 04 00120 STA LHTS+1 FOR RETURN ADDRESS 0205 00052 -0 02 00117 AD1 LDA* LHTS LOAD ARGUMENT ADDRESS 0206 * 0207 * TEST THE INDEX BIT OF THE ADDRESS 0208 * 0209 00053 0416 77 ALR 1 ROTATE LEFT 0210 00054 140320 CSA SET C BIT IF TAG 0211 00055 100001 SRC TEST C BIT 0212 00056 0 01 00065 JMP AD2 JUMP IF TAG 0213 00057 0406 77 ARR 1 REPOSITION 0214 * 0215 * TEST THE INDIRECT BIT OF THE ADDRESS 0216 * 0217 00060 140320 AD3 CSA SET C BIT IF FLAG 0218 00061 0 04 00117 STA LHTS SAVE ADDRESS 0219 00062 100001 SRC TEST C BIT 0220 00063 0 01 00052 JMP AD1 LOOP IF FLAG 0221 00064 -0 01 00046 JMP* ADDR RETURN 0222 * 0223 * ADD THE INDEX REGISTER IF THE INDEX BIT IS SET 0224 * 0225 00065 0406 77 AD2 ARR 1 REPOSITION 0226 00066 0 06 00000 ADD 0 ADD INDEX REGISTER 0227 00067 0 01 00060 JMP AD3 JUMP BACK TO TEST FLAG 0228 EJCT
Previous File Previous Page Single Page Next Page Next File