Prev: 32853 Up: Map Next: 33084
32889: Routine at 8079
Used by the routines at 32853 and 37488.
32889 LD A,(23672) A=*FRAMES.
32892 LD (61436),A Write A to *61436.
32895 LD E,16 E=16.
32897 LD C,A C=A.
32898 LD A,(61439) A=*61439.
32901 BIT 1,A Test bit 1 of A.
32903 JR NZ,32981 Jump to 32981 if is not zero.
32905 BIT 0,A Test bit 0 of A.
32907 JR NZ,32971 Jump to 32971 if is not zero.
32909 BIT 2,A Test bit 2 of A.
32911 JR Z,32918 Jump to 32918 if is zero.
32913 LD B,127 B=127.
32915 JP 33052 Jump to 33052.
32918 BIT 3,A Test bit 3 of A.
32920 JR Z,32927 Jump to 32927 if is zero.
32922 LD B,63 B=63.
32924 JP 33052 Jump to 33052.
32927 BIT 4,A Test bit 4 of A.
32929 JR Z,32935 Jump to 32935 if is zero.
32931 LD A,200 A=200.
32933 JR 32961 Jump to 32961.
32935 BIT 5,A Test bit 5 of A.
32937 JR Z,32943 Jump to 32943 if is zero.
32939 LD A,120 A=120.
32941 JR 32961 Jump to 32961.
32943 BIT 6,A Test bit 6 of A.
32945 JR Z,32951 Jump to 32951 if is zero.
32947 LD A,80 A=80.
32949 JR 32961 Jump to 32961.
32951 BIT 7,A Test bit 7 of A.
32953 JR Z,32959 Jump to 32959 if is zero.
32955 LD A,50 A=50.
32957 JR 32961 Jump to 32961.
32959 HALT Halt operation (suspend CPU until the next interrupt).
32960 RET Return.
32961 LD (61438),A Write A to *61438.
32964 LD A,0 Write 0 to *61439.
32966 LD (61439),A
32969 JR 33026 Jump to 33026.
32971 SET 1,A Set bit 1 of A.
32973 LD (61439),A Write A to *61439.
32976 LD HL,36843 HL=36843.
32979 JR 32994 Jump to 32994.
32981 LD HL,61405 HL=61405.
32984 LD A,(23672) A=*FRAMES.
32987 CP (HL) Compare A with *HL.
32988 JP M,33026 Jump to 33026 M.
32991 LD HL,(61406) HL=*61406.
32994 LD A,(HL) Jump to 33006 if *HL is not equal to 0.
32995 CP 0
32997 JR NZ,33006
32999 LD HL,61439 HL=61439.
33002 LD (HL),0 Write 0 to *HL.
33004 JR 32959 Jump to 32959.
33006 INC HL Increment HL by one.
33007 LD B,(HL) B=*HL.
33008 INC HL Increment HL by one.
33009 LD (61406),HL Write HL to *61406.
33012 LD HL,61438 HL=61438.
33015 CP (HL) Compare A with *HL.
33016 LD (HL),A Write A to *HL.
33017 JR NZ,33021 Jump to 33021 if A is not zero.
33019 LD E,0 E=0.
33021 LD A,C A=C.
33022 ADD A,B A+=B.
33023 LD (61405),A Write A to *61405.
33026 LD HL,61437 HL=61437.
33029 LD A,(23672) Return if *FRAMES is not equal to C.
33032 CP C
33033 RET NZ
33034 DEC (HL) Decrease *HL by one.
33035 JR NZ,33029 Jump to 33029 if *HL is not zero.
33037 LD A,(61438) Write *61438 to *HL.
33040 LD (HL),A
33041 LD A,(39372) A=*39372.
33044 XOR E Flip the bits according to E.
33045 LD (39372),A Write A to *39372.
33048 OUT (254),A OUT 254
33050 JR 33029 Jump to 33029.
33052 AND %11110000 Keep only bits 4-7.
33054 LD (61439),A Write A to *61439.
33057 LD HL,61437 HL=61437.
33060 LD A,(23672) A=*FRAMES.
33063 CP C Return if A is not equal to C.
33064 RET NZ
33065 DEC (HL) Decrease *HL by one.
33066 JR NZ,33060 Jump to 33060 if *HL is not zero.
33068 CALL 38425 Call 38425.
33071 AND B Merge the bits from B.
33072 LD (HL),A Write A to *HL.
33073 LD A,(39372) A=*39372.
33076 XOR E Flip the bits according to E.
33077 LD (39372),A Write A to *39372.
33080 OUT (254),A OUT 254
33082 JR 33060 Jump to 33060.
Prev: 32853 Up: Map Next: 33084