адрес вызова USR
Добавлено: 17 май 2025, 08:37
в кректрах попадается запрятанный в BASIC адрес. Иногда помогает поймать вызов:
13491: THE 'USR' FUNCTION (offset 45)
The address of this routine is found in the table of addresses. It is called indirectly via fp_calc_2.
This subroutine ('USR number' as distinct from 'USR string') handles the function USR X, where X is a number. The value of X is obtained in BC, a return address is stacked and the machine code is executed from location X.
usr_no 13491 CALL FIND_INT2 Evaluate the 'last value', rounded to the nearest integer; test that it is in range and return it in BC.
13494 LD HL,11563 Make the return address be that of the subroutine STACK_BC.
13497 PUSH HL
13498 PUSH BC Make an indirect jump to the required location.
13491: THE 'USR' FUNCTION (offset 45)
The address of this routine is found in the table of addresses. It is called indirectly via fp_calc_2.
This subroutine ('USR number' as distinct from 'USR string') handles the function USR X, where X is a number. The value of X is obtained in BC, a return address is stacked and the machine code is executed from location X.
usr_no 13491 CALL FIND_INT2 Evaluate the 'last value', rounded to the nearest integer; test that it is in range and return it in BC.
13494 LD HL,11563 Make the return address be that of the subroutine STACK_BC.
13497 PUSH HL
13498 PUSH BC Make an indirect jump to the required location.