I have done some looking at the registers the code uses. This is NOT finished work but rather a snap of where I am on this project...
Code:
=============================
POINTER TABLE RAM
$1600 INITIALIZE $0084
$1602 INITIALIZE $00CD
OVERWRITE $00CD OVERWRITE IN INIT ROUTINE
$1604 INITIALIZE $0279
$1606 INITIALIZE $0379
$1608 INITIALIZE $0479
$160A INITIALIZE $0579
$160C INITIALIZE $0679
$160E INITIALIZE $0779
$1610 INITIALIZE $0879
$1612 INITIALIZE $09C1
$1614 INITIALIZE $0AC1
$1616 INITIALIZE $00B5
$1618 INITIALIZE $0077
$161A INITIALIZE $007B
OVERWRITE $00C4 OVERWRITE IN INIT ROUTINE
$161C INITIALIZE $00A2
$161E INITIALIZE $00A6
SEQUENC OF 8: $1620-2E IS OVERWRITTEN BY CODE DURING OPERATION SEE $6CDA
$1620 INITIALIZE $001A
$1622 INITIALIZE $011A
$1624 INITIALIZE $021A
$1626 INITIALIZE $031A
$1628 INITIALIZE $041A
$162A INITIALIZE $051A
$162C INITIALIZE $061A
$162E INITIALIZE $071A
$1630 INITIALIZE $08C8
$1632 INITIALIZE $09C8
$1634 INITIALIZE $0AC8
$1636 INITIALIZE $0BC8
OVERWRITE $00ED OVERWRITE IN INIT ROUTINE
$1638 INITIALIZE $0C93
OVERWRITE $0C9B
$163A INITIALIZE $0D93
OVERWRITE $0D9B OVERWRITE IN INIT ROUTINE
$163C INITIALIZE $0000
$163E INITIALIZE $0000
$1640 INITIALIZE $0F38
$1642 INITIALIZE $0E91
$1644 INITIALIZE $00BB
$1646 INITIALIZE $0000
$1648 INITIALIZE $0EA9
$164A INITIALIZE $0000
$164C INITIALIZE $0000
$164E INITIALIZE $0000
END POINTER TABLE RAM
=============================
REGISTERS: WRITTEN AT INITIALIZATION, NEVER REVISED
$1680 INITIALIZE $0000
$1682 INITIALIZE $0001
$1684 INITIALIZE $0002
$1686 INITIALIZE $0003
$1688 INITIALIZE $0004
$168A INITIALIZE $0005
$168C INITIALIZE $0006
$168E INITIALIZE $0007
$1690 INITIALIZE $0008
$1692 INITIALIZE $0009
$1694 INITIALIZE $000A
$1696 INITIALIZE $000B
$1698 INITIALIZE $000C
$169A INITIALIZE $000D
$169C INITIALIZE $0000
$169E INITIALIZE $0000
REGISTER: READ ONLY
$16C2 HIGH RESOLUTION PULSE COUNT
REGISTERS: WRITTEN AT INITIALIZATION, NEVER REVISED
$16D0 INITIALIZE $C001
$16D2 INITIALIZE $0000
$16D4 INITIALIZE $0001
* INITIALIZATION SEQUENCE STARTS WITH A HARDWARE RESET
* TOGGLING PORT G BIT2 (0X04) BEGINS HARDWARE INITIALIZATION
* SOME SOFTWARE INITIALIZATION OF CONTROL REGISTERS AND TIME DELAY
* REGISTER AT $16F0 SETS TIO FOR MICROCODE LOADING
* TABLE DATE IS MOVED FOUR 16BIT WORDS AT A TIME INTO REGISTERS $16E0-E7
* MICROCODE ADDRESS IS WRITTEN INTO $1400, LOWER 8 IS MICROCODE ADDRESS TO PLACE
* 64BIT MICROCODE AT IN THE STORE
* LOOP THROUGH TABLE
* END SEQUENCE WITH SETTING $16F0 FOR NORMAL OPERATION (MICROCODE IS NOW LOADED)
$16E0 MICROCODE INITIALIZATION REGISTER 0
$16E2 MICROCODE INITIALIZATION REGISTER 1
$16E4 MICROCODE INITIALIZATION REGISTER 2
$16E6 MICROCODE INITIALIZATION REGISTER 3
$16F0 WRITTEN BEFORE LOADING THE MICROCODE $0003
WRITTEN AFTER LOADING THE MICROCODE $0000 OVERWRITE IN INIT ROUTINE
$16F4 WRITTEN BY SOFTWARE DURING OPERATION, READ IN IRQ SERVICE
SOME VALUES ARE: $3C00, $0400, $0800, $1000, $2000, $3800
ASSUMPTION BITS 2, 3, 4, 5 IN THE UPPER WORD ARE ACTIVE
$16F8 COLD RESTART $0003
CODE OVERWRITES $0003
$16FA RESTART $0000
CODE OVERWRITES $0000
$16FC INITIALIZATION $0044
$16FE INITIALIZATION $4000
OVERWRITE: OR WITH $1B1D
OVERWRITE: OR WITH $8000
The things (of use?) that have been found ...
$1492 COUNT OF SPARK EVENTS FROM EST FEEDBACK
$14D6 PARAMETER VALID FLAGS | ENABLED INJECTORS
BIT 0001 INJECTOR 0 ENABLE
BIT 0002 INJECTOR 1 ENABLE
BIT 0004 INJECTOR 2 ENABLE
BIT 0008 INJECTOR 3 ENABLE
BIT 0010 INJECTOR 4 ENABLE
BIT 0020 INJECTOR 5 ENABLE
BIT 0040 INJECTOR 6 ENABLE
BIT 0080 INJECTOR 7 ENABLE
BIT 0100 NOT USED
BIT 0200 NOT USED
BIT 0400 NOT USED
BIT 0800 NOT USED
BIT 1000 NOT USED
BIT 2000 BAROMETRIC PRESSURE VALID
BIT 4000 ENGINE COOLANT TEMPERATURE (ECT) VALID
BIT 8000 SOME_PARAMETER VALID
$15D8 HIRES COUNT AT LAST LO RES RISING EDGE
$16C2 HIGH RESOLUTION PULSE COUNT
Hope to figure out the microcode soon...
-Tom
Bookmarks