; This control file is called gecudctl.txt ; input gecu.bin ;this is the binary input file output gecu.dis ;this is the disassembly source/listing file ; MEMORY MAP ; --- INTERNAL DEVICES --- ; 0x0000 to 0x001F internal registers (see MC6803U4 datasheet) label $0000 PORT1_DDR label $0001 PORT2_DDR label $0002 PORT1_DATA label $0003 PORT2_DATA label $0008 TMR_CSR label $0009 TMR_CNTd ; 16 bit label $000B TMR_OCR1d ; 16 bit label $000D TMR_ICR1d ; 16 bit label $0010 SCI_RMCR label $0011 SCI_TRCSR label $0012 SCI_RX label $0013 SCI_TX label $0015 TMR_CNTAd ; 16 bit - alternate to TMR_CNT (TOF safe) label $0017 TMR_CR1 label $0018 TMR_CR2 label $0019 TMR_SR label $001A TMR_OCR2d ; 16 bit label $001C TMR_OCR3d ; 16 bit label $001E TMR_ICR2d ; 16 bit ; 0x40 to 0xFF internal RAM ; insert symbol names here ; label $0048 cmd_throttle_valve_angle label $0049 cmd_air_temp label $004A cmd_water_temp label $004B cmd_injection_duration_msb label $004C cmd_injection_duration_lsb label $004D cmd_ignition_advance label $0054 cmd_injection_timing_angle label $0055 cmd_co_trimmer label $005F cmd_battery_voltage label $0093 cmd_vae_duty_cycle_msb label $0094 cmd_vae_duty_cycle_lsb label $00A7 cmd_param_12 label $00A8 cmd_param_13 label $00AF cmd_param_14 label $00B5 cmd_engine_period_msb label $00B6 cmd_engine_period_lsb label $00CE cmd_uniram_1 label $00CF cmd_uniram_2 label $00D7 cmd_intake_pressure label $00D8 cmd_uniram_3 ; --- EXTERNAL DEVICES --- ; 0x1800 to 0x1FFF external RAM (6116 2KX8 SRAM) ; insert symbol names here label $1819 cmd_intake_pres2 label $1821 cmd_uniram_s label $1826 int_error_1 label $1827 int_error_2 label $182F cmd_param_17msb label $1830 cmd_param_17lsb ;0x2000 to 0x2006 (MC6840 timer) label $2000 ETMR_WCR3_1 label $2001 ETMR_WCR2_RSR label $2002 ETMR_TCR1 label $2004 ETMR_TCR2 label $2006 ETMR_TCR3 ;0x4000 to 0x4002 (MC14442 A to D converter 8 bit with input mux) ; configured as 16 bit registers label $4000 ADC_DATA label $4002 ADC_CTRL ; External EPROM (27128 - 16Kx8) ; 0xC000 to 0xFFFF ; jump table ; vectors $C3F9 5 jump jumpvectors ; works but doesn't give desired result indirect $C3F9 DIAG_test_fuel_pump DIAG_jump_vectors indirect $C3FB DIAG_test_injectors indirect $C3FD DIAG_test_coil indirect $C3FF DIAG_test_vae indirect $C401 DIAG_test_overboost ; ECU parameter table words $ED65 24 CMD_REPLY_TABLE ; ; vector table (see MC6803U4 datasheet) vectors $FFFE 1 RESET RESETvector vectors $FFF0 1 SCI_irq SCIvector vectors $FFF2 1 TOF_irq TimerOverflowFlagvector vectors $FFF4 1 OCF_irq OutputCompareFlagvector vectors $FFF6 1 ICF_irq InputCompareFlagvector vectors $FFF8 1 MIR_irq MaskIntReqVector vectors $FFFA 1 SIR_irq SwIntReqvector vectors $FFFC 1 NMI_irq NMIvector