Previous File Previous Page Single Page Next Page Next File

* NAME: BASIC-16A DOC 70181826000 REV A PAGE 114

4240 * SEARCH DEFINED FUNCTION INDEX 4241 * 4242 * 4243 * CALLING SEQUENCE: 4244 * 4245 * JST SDFI 4246 * ......RETURN IF FUNCTION NOT FOUND 4247 * ......RETURN IF FUNCTION FOUND, X POINTS TO 4248 * FIRST WORD OF FUNCTION INDEX ENTRY 4249 * 4250 * THE NEXT CHARACTER IS FETCHED AND USED AS 4251 * THE FUNCTION NAME ( IT IS CHECKED TO INSURE 4252 * THAT IT IS ALPHABETIC). 4253 * 4254 * 4255 * 4256 04606 0 000000 SDFI DAC ** 4257 04607 0 10 03047 JST GCHR GET THE FUNCTION NAME 4258 04610 0 10 03155 JST ALFA IS IT ALPHABETIC ? 4259 04611 0 01 04421 JMP DF01 NO ... REPORT FUNCTION NAME ERROR 4260 04612 0 02 00022 LDA DFB GET FUNCTION INDEX BASE POINTER 4261 04613 101040 SNZ IS THE TABLE EMPTY ? 4262 04614 -0 01 04606 JMP* SDFI YES ... TAKE NOT FOUND RETURN 4263 04615 0 11 00023 SD01 CAS DFT ARE WE PAST TOP OF THE INDEX ? 4264 04616 -0 01 04606 JMP* SDFI YES ... TAKE NOT FOUND RETURN 4265 04617 000000 OCT 0 NEVER CAN EXECUTE THIS WORD 4269 04620 0 04 00000 STA 0 X POINTS TO FIRST WORD OF CURRENT ENTRY 4270 04621 1 02 00000 LDA 0,1 TEST ENTRY NAME AGAINST 4271 04622 0 05 00074 ERA CHAR SEARCH TARGET 4272 04623 100040 SZE DO THEY MATCH ? 4273 04624 0 01 04627 JMP SD02 NO....GO ADVANCE TO NEXT ENTRY 4274 04625 0 12 04606 IRS SDFI YES...TAKE NAME FOUND RETURN 4275 04626 -0 01 04606 JMP* SDFI X 4276 * 4277 04627 0 02 00000 SD02 LDA 0 UPDATE INDEX POINTER TO FIRST 4281 04630 0 06 00426 ADD C3 WORD OF NEXT ENTRY 4282 04631 0 01 04615 JMP SD01 CONTINUE SEARCH 4283 * 4284 * 4285 * 4286 EJCT
Previous File Previous Page Single Page Next Page Next File