Skip to content

Commit

Permalink
initial commit
Browse files Browse the repository at this point in the history
  • Loading branch information
benogle committed Apr 18, 2009
0 parents commit f747cb9
Show file tree
Hide file tree
Showing 299 changed files with 82,996 additions and 0 deletions.
29 changes: 29 additions & 0 deletions README.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
The directories contained in the same directory as this README have all the
materials you shall need to develop code for your OBD0 VTEC ECU.


THE DIRECTORIES

src/ - Contains actual ECU assembly code.

src/stock - Contains disassemblies of stock PR3 and PW0 ROMS.

src/features - Contains stock ROMS with some extra feature added to the code
such as datalogging, boost, etc. If you want to develop a new
feature, put your code here.


doc/ - Contains files that will help you learn about how the processor works
and about the code in general. See the README in doc/ for more info.

bin/ - Contains the assembler and disassembler.

extra/ - Contains extra things you may want to use for ECU dev such as
textpad syntax hilighting.

STUFF YOU SHOULD KNOW ABOUT THE ECU

OBD0 VTEC ECUs use the 66301 processor. This is a very obscure 66k variant
and there is virtually no information about it. Fortunately, it is similar
to OBD1's 66201 processor which does have a decent amount of info available

15 changes: 15 additions & 0 deletions bin/README.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
Contained in this bin folder aer two applications: asm.exe, and dasm.exe.


ASM.EXE

Asm will assemble your .asm code into a usable .bin file:

> asm.exe inputCode.asm outputBin.bin


DASM.EXE

Dasm will disassemble a .bin file into assembly code:

> dasm.exe inputBin.bin outputAsm.asm 0 0
Binary file added bin/asm.exe
Binary file not shown.
Binary file added bin/dasm.exe
Binary file not shown.
Binary file added doc/66201_instruction_manual.pdf
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file added doc/66301_manual_scans/Chapter-12a.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/66301_manual_scans/Chapter-12b.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/66301_manual_scans/Chapter-12c.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/66301_manual_scans/Chapter-12d.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/66301_manual_scans/Chapter-12e.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/66301_manual_scans/Chapter-12f.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/66301_manual_scans/Chapter-12g.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/66301_manual_scans/Chapter-12h.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/66301_manual_scans/Chapter-12i.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/66301_manual_scans/Chapter-12j.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/66301_manual_scans/Chapter-12k.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/66301_manual_scans/Chapter-12l.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/66301_manual_scans/Chapter-12m.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/66301_manual_scans/Chapter-12n.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/66k_instruction_set.pdf
Binary file not shown.
41 changes: 41 additions & 0 deletions doc/README.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
This folder has docs that should help you along in you ECU dev journey.




66k_instruction_set.pdf

Doc explaining each assembly instruction. Want to know what this does?

LB A, #0123h

Use this pdf.




66201_instruction_manual.pdf

User manual for the 66201 processor. If you are curious how the timers or the
A/D converters work? Use this PDF.




pw0ram.txt

Contains all the known functions of each RAM memory location.




66201_manual_scans

Paritial image scans of a 201 instruction manual. May be useful? Dunno.




66301_manual_scans

Paritial image scans of chapter 12 of a 301 instruction manual.
192 changes: 192 additions & 0 deletions doc/obd0vtec_standards.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,192 @@
Standards for all obd0 vtec roms Ben Ogle creates.

Not all of this will be present in all roms. This document
helps me to not overwrite already used rom locations. It
is here to hopefully make ALL new asm code compatible
with all other new asm code from the editor standpoint.

-----------------------------
STOCK DATA
-----------------------------

jdm pw0
Address: 0x36e0 - 0x3fff

euro pw0
Address: 0x3700 - 0x3fff

jdm pr3
Address: 0x3744 - 0x3fff
Note: no unused space til 0x42666

-----------------------------
NEW CODE
-----------------------------

ALL NEW/NOT STOCK CODE STARTS AT 0x4270.

OLD LAUNCH CONTROL
jdm pw0
Address: 0x32fb
euro pw0
Address: 0x324d
jdm pr3
Address: 0x4266

DATA LOGGING
jdm pw0
Address: 0x3310 - 0x33a8
eur opw0
Address: 0x3262 - 0x32fa
jdm pr3
Address: 0x427b - 0x4310

BOOST
jdmpw0
Address: 0x33d0
eur opw0
Address: 0x3320
jdm pr3
Address: 0x4340

ITB CODE (should be in boost code)
Address: 0x4400

DISABLE CODES
Address: 0x5000 - 0x501d

FUEL SCALING
Address: 0x502a - 0x509f

CEL ROUTINES
Address: 0x50a0 - ?

BOOST CUT
Address: ? - ?

NEW LAUNCH CONTROL
Address: ? - ?

-----------------------------
FUEL/IGN RELATED TABLES
-----------------------------

MAP VECTOR
Address: 0x63D2
Max length: 93 bytes

TPS VECTOR
Address: 0x642F
Max length: 93 bytes

RPM VECTOR IGNITION
Address: 0x648C
Max length: 93 bytes

RPM VECTOR VTEC IGNITION
Address: 0x64E9
Max length: 93 bytes

RPM VECTOR FUEL
Address: 0x6546
Max length: 93 bytes

RPM VECTOR VTEC FUEL
Address: 0x6583
Max length: 93 bytes

IGNITION MAP NON VTEC (30X30)
Address: 0x6600
Max length: 900 bytes

IGNITION MAP VTEC (30X30)
Address: 0x6984
Max length: 900 bytes

FUEL MAP NON VTEC (30X30)
Address: 0x6D08
Max length: 930 bytes

FUEL MAP VTEC (30X30)
Address: 0x70AA
Max length: 930 bytes

-----------------------------
EDITABLE STUFF
-----------------------------

ROM MOTES
Address: 0x7e80
Max length: 128 bytes

CODE DISABLE VECTOR
Address: 0x7f00
Max length: 16 bytes

DATALOGGER TABLE
Address: 0x7f10
Max length: 32 bytes

-----------------------------
OPTION BYTES
-----------------------------

BOOST CUT MAP VAL
Address: ?
Max Length: 1 byte


OUTPUT SELECTION
Address: ?
Max Length: 1 byte

ITB TPS SCALING MIN
Address: 0x7FEC (0x7FED is used too)
Max length: 1 byte

ITB TPS SCALING MAX
Address: 0x7FEE (0x7FEF is used too)
Max length: 1 byte

ITB MAP-TPS XOVER
Address: 0x7FF0
Max length: 1 byte

SHIFT LIGHT RPM
Address: 0x7FF2
Max length: 2 bytes

OUTPUT ROUTINES OPTION (01:shiftLight, 02:knock, anythingElse:off)
Address: 0x7FF4
Max length: 1 byte


DELTA_TPS FUEL SCALE (0 = 0%, 0x80 = 100%, 0xff= 200%)
Address: 0x7FF8
Max length: 1 byte

LIMP MODE FUEL SCALE (0 = 0%, 0x80 = 100%, 0xff= 200%)
Address: 0x7FF9
Max length: 1 byte

CRANKING FUEL SCALE (0 = 0%, 0x80 = 100%, 0xff= 200%)
Address: 0x7FFA
Max length: 1 byte

MAIN FUEL SCALE (0 = 0%, 0x80 = 100%, 0xff= 200%)
Address: 0x7FFB
Max length: 1 byte


NOTE: more needs to be edited than just these to add columns/rows to the maps!
COLUMNS IN MAP
Address: 0x7FFC
Max length: 1 byte

ROWS IN MAP
Address: 0x7FFD
Max length: 1 byte

COLUMNS * ROWS
Address: 0x7FFE/0x7FFF
Max length: 2 bytes
Loading

0 comments on commit f747cb9

Please sign in to comment.