; Speed Trap: ; How fast must the cop go to catch the speeding driver? BR main ;GLOBAL VARIABLES: cop: .BLOCK 2 ;// cop at rest driver: .BLOCK 2 ;// driver speed ;CONSTANTS: chase: .EQUATE 10 ;// Cop speeds up by 10 faster: .EQUATE 5 ;// Driver speeds up by 5 ;TEXT: prompt: .ASCII "How fast was the driver going? " .BYTE 0 caught: .ASCII "Caught! " .BYTE 0 ;MAIN PROGRAM: main: LDA 0,i ;cop = 0 STA cop,d STRO prompt,d DECI driver,d do: LDA cop,d ; cop += 10 ADDA chase,i STA cop,d LDA driver,d ; driver += 5 ADDA faster,i STA driver,d DECO cop,d ; // show speeds CHARO ',',i DECO driver,d CHARO 10,i ; // newline LDA cop,d CPA driver,d BRLT do ;while (cop < driver) STRO caught,d DECO cop,d ;cout << cop STOP .END ; For a simpler example (without I/O), see ;File: fig0612.pep