Prev: 54411 Up: Map Next: 54560
54505: Update currently selected input device
Used by the routines at 26670 and 26884.
Input
A Index of currently selected input device
D Index of previously selected input device (valid for call at 26729 only)
54505 LD B,A Load B with index of currently selected input device...
54506 CP 1 ...and if this is 1 (Kempston joystick)...
54508 CALL Z,54564 ...then if Kempston joystick is not present, revert to previously selected input device
54511 LD A,B Load A with currently selected input device
54512 LD HL,53411 Point HL at start of table of start addresses of input device reading routines
54515 CALL 55730 Load HL with A-th entry from table (i.e. the routine for the currently selected input device)...
54518 LD (54948),HL ...and update jump (at 54947) in input reading routine to this address
54521 LD A,(54560) Load index of currently selected input device into A
54524 ADD A,211 Add 211 (index in common words table for first "control method" string)
54526 LD (54562),A Store as text code at 54562
54529 LD HL,18636 Load HL with display file address corresponding to (12, 14) (characters)...
54532 LD (54110),HL ...and move bitmap virtual text cursor here
54535 LD A,32 Set character to be repeated to 32 (SPACE)...
54537 LD (54235),A ...
54540 LD HL,20 Load HL with 20 as we need to draw across 20 character blocks
54543 CALL 54231 Draw run of 20 SPACE characters (i.e. clear old "CONTROL : ..." text)
54546 LD HL,18626 Load HL with display file address corresponding to (2, 14) (characters)...
54549 LD (54110),HL ...and move bitmap virtual text cursor here
54552 LD HL,54561 Point HL at current control text (control selection screen)
54555 CALL 34733 Print text at location HL to screen using full screen width
54558 XOR A Set A to zero
54559 RET Return
Prev: 54411 Up: Map Next: 54560