Prev: 23760 Up: Map Next: 23958
23804: Custom Load Routine
Used by the routine at BootstrapEntry.
Custom edge sampler used by the bootstrap. It still calls the ROM edge routines at 1507 / 1511, but with Micromega timing thresholds rather than the standard ROM pilot. On error it restores the border from BORDCR and prints "ATTEMPTED BREAK!" or "TAPE LOADING ERROR".
CustomLoad 23804 INC D
23805 EX AF,AF'
23806 DEC D
23807 DI
23808 LD A,15
23810 OUT (254),A
23812 LD HL,23980
23815 PUSH HL
23816 IN A,(254)
23818 RRA
23819 AND 32
23821 OR 2
23823 LD C,A
23824 CP A
CustomLoad_0 23825 RET NZ
CustomLoad_1 23826 CALL 1511
23829 JR NC,CustomLoad_0
23831 LD HL,1045
CustomLoad_2 23834 DJNZ CustomLoad_2
23836 DEC HL
23837 LD A,H
23838 OR L
23839 JR NZ,CustomLoad_2
23841 CALL 1507
23844 JR NC,CustomLoad_0
CustomLoad_3 23846 LD B,156
23848 CALL 1507
23851 JR NC,CustomLoad_0
23853 LD A,166
23855 CP B
23856 JR NC,CustomLoad_1
23858 INC H
23859 JR NZ,CustomLoad_3
CustomLoad_4 23861 LD B,201
23863 CALL 1511
23866 JR NC,CustomLoad_0
23868 LD A,B
23869 CP 212
23871 JR NC,CustomLoad_4
23873 CALL 1511
23876 RET NC
23877 LD A,C
23878 XOR 3
23880 LD C,A
23881 LD H,0
23883 LD B,176
23885 JR CustomLoad_10
CustomLoad_5 23887 EX AF,AF'
23888 JR NZ,CustomLoad_6
23890 JR NC,CustomLoad_7
23892 LD (IX+0),L
23895 JR CustomLoad_8
CustomLoad_6 23897 RL C
23899 XOR L
23900 RET NZ
23901 LD A,C
23902 RRA
23903 LD C,A
23904 INC DE
23905 JR CustomLoad_9
CustomLoad_7 23907 LD A,(IX+0)
23910 XOR L
23911 RET NZ
CustomLoad_8 23912 INC IX
CustomLoad_9 23914 DEC DE
23915 EX AF,AF'
23916 LD B,178
CustomLoad_10 23918 LD L,1
CustomLoad_11 23920 CALL 1507
23923 RET NC
23924 LD A,203
23926 CP B
23927 RL L
23929 LD B,176
23931 JP NC,CustomLoad_11
23934 LD A,H
23935 XOR L
23936 LD H,A
23937 LD A,D
23938 OR E
23939 JR NZ,CustomLoad_5
23941 LD A,H
23942 CP 1
23944 RET
This entry point is used by the routine at BootstrapEntry.
CustomLoad_12 23945 LD A,1
23947 CALL 5633
23950 LD B,25
23952 LD DE,24042
23955 JP 24009
Prev: 23760 Up: Map Next: 23958