Prev: 50148 Up: Map Next: 50197
50179: Set The Printer Motor Speed Via Port 251
Used by the routine at 50148.
The game's copy of the ROM COPY_LINE code: writes 2 to port 251 when the count in B is below three (slowing the printer motor for the last two pixel lines), and 0 otherwise, then waits until a read from that port comes back negative.
SetPrinterMotorSpeed 50179 LD A,B Compare B with 3 and leave 255 in A when the count is below.
50180 CP 3
50182 SBC A,A
50183 AND %00000010 Keep just bit 1, giving 2 (slow the printer motor) when the count is below three and 0 otherwise.
50185 OUT (251),A Send that strobe to the ZX Printer on port 251.
50187 LD D,A Keep the motor value just sent in D.
SetPrinterMotorSpeed_0 50188 IN A,(251) Read port 251 and return if the ZX Printer is busy.
50190 ADD A,A
50191 RET M
50192 JR NC,SetPrinterMotorSpeed_0 Go back to SetPrinterMotorSpeed_0 while the ZX Printer is not ready.
50194 JP 3858 Jump to COPY_LINE at 3858.
Prev: 50148 Up: Map Next: 50197