Prev: 59950 Up: Map Next: 60236
60078: Tape Sampler
Used by the routine at LoadingController.
Custom turbo sampler. It also compares the loader's additive checksum against the stored value near LoaderChecksumAndTiming.
TapeSampler 60078 PUSH DE
60079 PUSH AF
60080 LD HL,(59879)
60083 LD DE,(59877)
60087 SCF
60088 CCF
60089 SBC HL,DE
60091 JP NZ,0
60094 POP AF
60095 POP DE
60096 INC D
60097 EX AF,AF'
60098 DEC D
60099 DI
60100 LD A,0
60102 OUT (254),A
60104 LD HL,1343
60107 IN A,(254)
60109 RRA
60110 AND 32
60112 OR 2
60114 LD C,A
60115 CP A
TapeSampler_0 60116 RET NZ
TapeSampler_1 60117 CALL EdgeRoutines_0
60120 JR NC,TapeSampler_0
60122 LD HL,1045
TapeSampler_2 60125 DJNZ TapeSampler_2
60127 DEC HL
60128 LD A,H
60129 OR L
60130 JR NZ,TapeSampler_2
60132 CALL EdgeRoutines
60135 JR NC,TapeSampler_0
TapeSampler_3 60137 LD B,156
60139 CALL EdgeRoutines
60142 JR NC,TapeSampler_0
60144 LD A,166
60146 CP B
60147 JR NC,TapeSampler_1
60149 INC H
60150 JR NZ,TapeSampler_3
TapeSampler_4 60152 LD B,201
60154 CALL EdgeRoutines_0
60157 JR NC,TapeSampler_0
60159 LD A,B
60160 CP 212
60162 JR NC,TapeSampler_4
60164 CALL EdgeRoutines_0
60167 RET NC
60168 LD A,C
60169 XOR 3
60171 LD C,A
60172 LD H,0
60174 LD B,176
60176 JR TapeSampler_10
TapeSampler_5 60178 EX AF,AF'
60179 JR NZ,TapeSampler_6
60181 JR NC,TapeSampler_7
60183 LD (IX+0),L
60186 JR TapeSampler_8
TapeSampler_6 60188 RL C
60190 XOR L
60191 RET NZ
60192 LD A,C
60193 RRA
60194 LD C,A
60195 INC DE
60196 JR TapeSampler_9
TapeSampler_7 60198 LD A,(IX+0)
60201 XOR L
60202 RET NZ
TapeSampler_8 60203 INC IX
TapeSampler_9 60205 DEC DE
60206 EX AF,AF'
60207 LD B,178
TapeSampler_10 60209 LD L,1
TapeSampler_11 60211 CALL EdgeRoutines
60214 RET NC
60215 LD A,203
60217 CP B
60218 RL L
60220 LD B,176
60222 JP NC,TapeSampler_11
60225 LD A,H
60226 XOR L
60227 LD H,A
60228 LD A,D
60229 OR E
60230 JR NZ,TapeSampler_5
60232 LD A,H
60233 CP 1
60235 RET
Prev: 59950 Up: Map Next: 60236