this is where it uses the idle timing tables
Z31
CR31886B : D6 20 " " ldab TP_MSB__(FREE)
886D : 85 20 " " bita #$20
886F : 27 02 "' " beq L8873
8871 : CB 08 " " addb #$08
8873 L8873:
8873 : F1 BF 70 " p" cmpb XBF70 ; TP_TIMING_CHECK
8876 : 25 21 "%!" bcs L8899 ; IDLE TIMING TABLE
8878 L8878:
8878 : D6 13 " " ldab COOLANT_TEMP
887A : 85 20 " " bita #$20
887C : 27 02 "' " beq L8880
887E : CB 05 " " addb #$05
8880 L8880:
8880 : F1 BF 71 " q" cmpb XBF71 ; TEMP_TIMING_CHECK
8883 : 25 14 "% " bcs L8899 ; IDLE TIMING TABLE
8885 : F6 BF 72 " r" ldab XBF72
8888 : 85 20 " " bita #$20
888A : 27 02 "' " beq L888E
888C : CB 10 " " addb #$10
888E L888E:
888E : D1 48 " H" cmpb X0048 ; RPM MSB
8890 : 25 07 "% " bcs L8899 ; IDLE TIMING TABLE
8892 : 8A 20 " " oraa #$20
8894 : 97 3E " >" staa X003E
8896 : 7E 89 13 "~ " jmp L8913
;
8899 L8899: ; USE IDLE_TIMING TABLE
8899 : 84 DF " " anda #$DF
889B : 8A 40 " @" oraa #$40
889D : 97 3E " >" staa X003E
889F : 96 48 " H" ldaa X0048
88A1 : CE BE A0 " " ldx #$BEA0 ; IDLE_TIMING
88A4 : BD 80 D2 " " jsr L80D2 INTERPX16
88DC : D6 20 ldab TP_MSB__(FREE)
88DE : 85 20 bita #$20
88E0 : 27 02 beq L88E4
88E2 : CB 08 addb #$08
88E4 L88E4:
88E4 : F1 BF 3A cmpb XBF3A TP_TIMING_CHECK
88E7 : 25 21 bcs L890A // USE IDLE_TIMING_TABLE
88E9 : D6 13 ldab COOLANT_TEMP
88EB : 85 20 bita #$20
88ED : 27 02 beq L88F1
88EF : CB 05 addb #$05
88F1 L88F1:
88F1 : F1 BF 3B cmpb XBF3B TEMP_TIMING_CHECK
88F4 : 25 14 bcs L890A // USE IDLE_TIMING_TABLE
88F6 : F6 BF 3C ldab XBF3C TEMP_TIMING_SET
88F9 : 85 20 bita #$20
88FB : 27 02 beq L88FF
88FD : CB 10 addb #$10
88FF L88FF:
88FF : D1 48 cmpb X0048 RPM_MSB_COPY
8901 : 25 07 bcs L890A // USE IDLE_TIMING_TABLE
8903 : 8A 20 oraa #$20
8905 : 97 3E staa X003E
8907 : 7E 89 F0 jmp L89F0
;
890A L890A: // USE IDLE_TIMING_TABLE
890A : 84 DF anda #$DF
890C : 97 3E staa X003E
890E : 96 48 ldaa X0048 RPM_MSB_COPY
8910 : CE BE A0 ldx #IDLE_TIMING