DIY PROM Do It Yourself PROM chip burning help. No PROM begging. No PROMs for sale. No commercial exchange. Not a referral service.

Source code for dummies....Ask questions here!

Thread Tools
 
Search this Thread
 
Old 07-09-2004, 08:38 PM
  #51  
Supreme Member
 
Grumpy's Avatar
 
Join Date: Jun 2000
Location: In reality
Posts: 7,554
Likes: 0
Received 1 Like on 1 Post
Car: An Ol Buick
Engine: Vsick
Transmission: Janis Tranny Yank Converter
Originally posted by dimented24x7
.

ORG $[start addr of table in hex (or in decimal w/o the '$')]

OK, Mr Smartypants (j/k), what exactly does ORG, mean?.
Doc
Old 07-09-2004, 09:07 PM
  #52  
Supreme Member

iTrader: (2)
 
dimented24x7's Avatar
 
Join Date: Jan 2002
Location: Moorestown, NJ
Posts: 9,962
Likes: 0
Received 3 Likes on 3 Posts
Car: 88 Camaro SC
Engine: SFI'd 350
Transmission: TKO 500
Axle/Gears: 9-bolt w/ 3.23's
the pneumonic stands for ORiGin, no? I think all motorola assemblers should recognise it. I used the fill command for awhile myself untill I realized (or someone told me?) that the ORG would keep things put and ensure theyre at the right address in the bin without having to figure out how much filler id need to use.

Last edited by dimented24x7; 07-09-2004 at 09:09 PM.
Old 07-09-2004, 09:11 PM
  #53  
Supreme Member

iTrader: (2)
 
dimented24x7's Avatar
 
Join Date: Jan 2002
Location: Moorestown, NJ
Posts: 9,962
Likes: 0
Received 3 Likes on 3 Posts
Car: 88 Camaro SC
Engine: SFI'd 350
Transmission: TKO 500
Axle/Gears: 9-bolt w/ 3.23's
Originally posted by Grumpy
OK, Mr Smartypants
I wish I still had my smartypants... I lost them in the laundry a long time ago. Been feeling stupid ever since...
Old 07-10-2004, 10:50 AM
  #54  
Member

 
Cobra289's Avatar
 
Join Date: Nov 2003
Location: The Netherlands
Posts: 299
Likes: 0
Received 0 Likes on 0 Posts
Car: Cobra Kit Car
Engine: 350 HSR
Transmission: TKO 600
Axle/Gears: 3.31
The nice thing about getting so far is that you can now use your daily BIN and make a disassembling following by a change and than reassemble to a new BIN.
This way you don’t have to re-adjust your daily parameters.

In my case, I want to add the NEW Craig Moates WBO2 (Not jet available but.) There is there and available TPS2 port so I can do a mapping of the input and output.
Not that I know now how to do it, but like at the start of this thread we weren’t able to assemble and now we can start to think about the future. (WE mean, me and the other dummies and NOT you the other guy’s).


Ok the ANHT code, for the people that are interested I have made a disassembling and a reassembling.
There is a ZIP file that you can download from my site. The contents of the zip are:

(ANHT8D.BIN, ANHT8D.TXT, ANHT8D.DIS, ANHT8D.LST, ANHT8D.REL, ANHT8D.SYM, ANHT8D.S19)
http://www.donostia.demon.nl/8Da.zip

The original ANHT8D.BIN has been downloaded from the Craig Moates.

I will upload this ZIP file by Craig Moates site as a Mirror. (Under Source Code and Hacks “8Da.zip”)
I will do at the same directory the APYP files, the ZIP file will be “6Ea.zip”

Regards,
Cobra289

Last edited by Cobra289; 07-10-2004 at 01:00 PM.
Old 07-10-2004, 10:46 PM
  #55  
Supreme Member
 
Grumpy's Avatar
 
Join Date: Jun 2000
Location: In reality
Posts: 7,554
Likes: 0
Received 1 Like on 1 Post
Car: An Ol Buick
Engine: Vsick
Transmission: Janis Tranny Yank Converter
Originally posted by RBob
Look for a # that shouldn't be there. Or maybe an *, I think the as6811 assembler uses that for a particular addressing mode.
Turns out it was in fact a missing #.
Getting closer.......
Thanks.
Old 07-11-2004, 11:35 AM
  #56  
Member

 
Cobra289's Avatar
 
Join Date: Nov 2003
Location: The Netherlands
Posts: 299
Likes: 0
Received 0 Likes on 0 Posts
Car: Cobra Kit Car
Engine: 350 HSR
Transmission: TKO 600
Axle/Gears: 3.31
I have send an e-mail to “Donald Whisnant” from “Dewtronics” the maker of the Disassembler “M6811DIS” and he has point me to a new Beta version 1.2 a DOS 32-bit.
I have used and with a small changes in the “Control File” I have got the same results.

There are several implementations (capabilities) but I think that he most value will be the “Commented Part”

You get two type of comments [ ; DRef: 0x0000 ] and [ ; CRef: 0x0000 ] and those are Data-References and Code-References.

So you will se the next:

Data-Reference.

Code:
LC1F5:		.byte 	0x0F  						; DRef: 0xE595
LC1F6:		.byte 	0x30  						; DRef: 0xF4B0
LC1F7:		.byte 	0x0C  						; DRef: 0xD6D5
LC1F8:		.byte 	0x04  						; DRef: 0xED15
LC1F9:		.byte 	0x78  						; DRef: 0xED1C
LC1FA:		.byte 	0x00,0xF0   					; DRef: 0xED0C
LC1FC:		.byte 	0x01  						; DRef: 0xED21,0xED44
LC1FD:		.byte 	0x1D  						; DRef: 0xED69
LC1FE:		.byte 	0x03  						; DRef: 0xE5B3
LC1FF:		.byte 	0x28  						; DRef: 0xE5D3
LC200:		.byte 	0xF0  						; DRef: 0xE5D8
LC201:		.byte 	0x05  						; DRef: 0xE5C8
LC202:		.byte 	0x1A  						; DRef: 0xE5C1
LC203:		.byte 	0x04  						; DRef: 0xE0DB,0xE5BA
LC204:		.byte 	0xF3  						; DRef: 0xED38
LC205:		.byte 	0x78  						; DRef: 0xED3F
LC206:		.byte 	0x5E,0x80,0xB0,0xC0,0x4D,0x1A,0x0A,0x8C   	; DRef: 0xC8A2
LC20E:		.byte 	0x01  						; DRef: 0xE644
LC20F:		.byte 	0x26  						; DRef: 0xE66B
LC210:		.byte 	0x2D  						; DRef: 0xCBB4,0xE65D
LC211:		.byte 	0x60  						; DRef: 0xCBA8
LC212:		.byte 	0x0A  						; DRef: 0xE664
LC213:		.byte 	0x80  						; DRef: 0xE672
LC214:		.byte 	0x64  						; DRef: 0xCBA3,0xE652
LC215:		.byte 	0x00,0x31   					; DRef: 0xE691
Or this one with Code-Reference.

Code:
LC905:		ldaa  	#0xFF 					; CRef: 0xC8FE
LC907:		staa  	L0113 					; CRef: 0xC903
LC90A:		ldaa  	L4005 					; CRef: 0xC7EC
			adda  	#0x02
			staa  	L4006
			ldx   	#0x4007
			bset  	0x00,x,#0x01
			jmp   	LCC1A
irqrtn:     	ldx   	#0x4007     				; CRef: 0xFFF2
			brset 	0x01,x,#0x01,LC98E
			brclr 	0x00,x,#0x20,LC931
			brclr 	0x01,x,#0x20,LC952
			bset  	*L0046,#0x08
			jsr   	LFBB9
			rti
LC931:		brclr 	0x00,x,#0x80,LC93D			; CRef: 0xC922
			brclr 	0x01,x,#0x80,LC952

			jsr   	LFC89
			rti
LC93D:		brclr 	0x00,x,#0x40,LC952			; CRef: 0xC931
			brclr 	0x01,x,#0x40,LC952
			ldaa  	L4004
			anda  	#0xF7
			staa  	L4004
			ldaa  	#0x27
			staa  	L4007
LC952:		rti   						; CRef: 0xC926,0xC935,0xC93D,0xC941
LC953:		ldaa  	L0181 					; CRef: 0xC98E
			adda  	#0x8F
			staa  	L4006
			bclr  	*L0046,#0x01
			jsr   	LF9C2
			rti
LC962:		ldaa  	L0181 					; CRef: 0xC992
So what do you think?
I like it, and it will be a wonderful tool during commenting.
I have asked “Donald” for permission to publishing the download address and he has approved, so here it is:
http://www.dewtronics.com/pub/m6811d...1DIS_v1p20.exe

I hope that you enjoy with this.
Regards,
Cobra289

Last edited by Cobra289; 07-11-2004 at 11:37 AM.
Old 07-11-2004, 12:21 PM
  #57  
Supreme Member
 
Grumpy's Avatar
 
Join Date: Jun 2000
Location: In reality
Posts: 7,554
Likes: 0
Received 1 Like on 1 Post
Car: An Ol Buick
Engine: Vsick
Transmission: Janis Tranny Yank Converter
Originally posted by Cobra289

Ok the ANHT code, for the people that are interested I have made a disassembling and a reassembling.
There is a ZIP file that you can download from my site. The contents of the zip are:

(ANHT8D.BIN, ANHT8D.TXT, ANHT8D.DIS, ANHT8D.LST, ANHT8D.REL, ANHT8D.SYM, ANHT8D.S19)
http://www.donostia.demon.nl/8Da.zip

Doc's putting you in for two *attaboys*.
Tis, Good stuff.
Old 07-13-2004, 05:43 AM
  #58  
Senior Member
 
MTPFI-MAF's Avatar
 
Join Date: Dec 2003
Location: Point Marion PA.
Posts: 623
Likes: 0
Received 0 Likes on 0 Posts
Car: 1982 CAMARO;
Engine: 1985 LB9;
Transmission: T-5/
Ok this Is a very helpful Post. I can now dissasembal, reassembal,convert s.19 file to a bin, I used tuner pro to verify and there are no differences. ok Teach whats the next Class about.

seriously Thanks I hope this thread keeps going. I am about to try to do a ANZA on my own. I will see what I get.
Old 07-16-2004, 04:52 PM
  #59  
Member

 
Cobra289's Avatar
 
Join Date: Nov 2003
Location: The Netherlands
Posts: 299
Likes: 0
Received 0 Likes on 0 Posts
Car: Cobra Kit Car
Engine: 350 HSR
Transmission: TKO 600
Axle/Gears: 3.31
Hi Gents,

If you are interested in the commented ANHT8D.dis you can grab from my site.

http://www.donostia.demon.nl/CommentedANHT8D.DIS

Remember it is only the automatic comments from the new disassembler (m6811DIS_v1p20.exe).
DReg: means Data Reference.
CRef: means Code Reference.

I will be back on 3 weeks (Holidays) and I hope that something is developing on this thread.

Keep it alive!

Regards,
Cobra289

Last edited by Cobra289; 07-16-2004 at 04:57 PM.
Old 07-17-2004, 03:43 PM
  #60  
Senior Member
 
MTPFI-MAF's Avatar
 
Join Date: Dec 2003
Location: Point Marion PA.
Posts: 623
Likes: 0
Received 0 Likes on 0 Posts
Car: 1982 CAMARO;
Engine: 1985 LB9;
Transmission: T-5/
OK I just took a few minutes and Dissasembled my ANZA bin and While I still am having problems creating my own control file I just use the control file that was specifyed for the apyp and changed the File Names. I did get some errors but i went ahead and Reasembled and then used binconvert to convert it to a bin file. Using Tuner Pro Differenct tool, it is exactly the same, why since I had errors on the dissasembly I expected differences in the resemballed on but there were none. I will be uploading ANZA.DIS and the ANZA control file so they can be reviewed so I can figure out why they are the same.
Old 07-17-2004, 04:45 PM
  #61  
Member

 
Cobra289's Avatar
 
Join Date: Nov 2003
Location: The Netherlands
Posts: 299
Likes: 0
Received 0 Likes on 0 Posts
Car: Cobra Kit Car
Engine: 350 HSR
Transmission: TKO 600
Axle/Gears: 3.31
Originally posted by MTPFI-MAF
OK I just took a few minutes and Dissasembled my ANZA bin and While I still am having problems creating my own control file I just use the control file that was specifyed for the apyp and changed the File Names. I did get some errors but i went ahead and Reasembled and then used binconvert to convert it to a bin file. Using Tuner Pro Differenct tool, it is exactly the same, why since I had errors on the dissasembly I expected differences in the resemballed on but there were none. I will be uploading ANZA.DIS and the ANZA control file so they can be reviewed so I can figure out why they are the same.
Hi MTPFI-MAF,

I think that you are in the good track. Congratulations!

Did you get warnings of errors?
Because if you get warnings like Grumpy has explained on this post, you don’t have to worries because they are references to the memory.
Looks like this:
*** Warning: Branch Ref: 0x5800 is outside of Loaded Source File.
You can compare your ANZA.dis with the APYP.dis it should be equivalent because both are $6E mask, the differences should be only for data and not others. Code, tables, etc. structure should be the same.

25 minutes and I go to bed.
Tomorrow I will start my long awaited holidays.

Regards,
Cobra289
Old 07-17-2004, 07:19 PM
  #62  
Senior Member
 
MTPFI-MAF's Avatar
 
Join Date: Dec 2003
Location: Point Marion PA.
Posts: 623
Likes: 0
Received 0 Likes on 0 Posts
Car: 1982 CAMARO;
Engine: 1985 LB9;
Transmission: T-5/
yes I did get errors that looked like that looked like that but here is the link to everything I have. It includes the original ANZA.Bin I used also the ANZA.DIS, ANZA.lst, ANZA.Rel, ANZA.sym, ANZA.txt(control file I used)and ANZA.s19 and also the Bin File as I reassembled it. It is named ANZA Reassembled.

See what you think. http://www.f-body383.100megsfree5.co...reassembly.htm
Old 07-18-2004, 09:54 AM
  #63  
Member

 
clippjr8's Avatar
 
Join Date: Feb 2003
Location: ohio
Posts: 174
Likes: 0
Received 0 Likes on 0 Posts
I am now on the right track thanks to all of you here. A big thanks to "cobra289" for responding to my emails quickly and helping me over the hump. I will be trying to get further into this and will help as much as possible. So now that we can disassemble, reassemble, and compare bins to verify they are the same is the next step to start commenting this bin file? If so, are there any more hints as to what to comment first?
Old 07-25-2004, 08:38 AM
  #64  
Senior Member
 
MTPFI-MAF's Avatar
 
Join Date: Dec 2003
Location: Point Marion PA.
Posts: 623
Likes: 0
Received 0 Likes on 0 Posts
Car: 1982 CAMARO;
Engine: 1985 LB9;
Transmission: T-5/
Ok Here is my next question, In regards to I have heard a lot of people removing stuff in code that they don't need or use so that they have more room to expand existing Code or add new code for what they desire. I am wondering how to do This correctly.

I have taken Fan Control away from the ECM, So I no longer need any thing Fan related in the Sorce Code.

Example: if I wanted to remove the Fan 1 Duty Cycle if MPH < Minimum and A/C Pressure High Form the code, I opened my bin using TunerPro RT and by looking at this in the ECU Item Editor It says Start address 30C, Now how do I find this in my dissassembly and Remove it So as to not cause problems when I reassemble it.


anyone?

Last edited by MTPFI-MAF; 07-26-2004 at 05:37 PM.
Old 07-27-2004, 01:50 AM
  #65  
Senior Member
 
MTPFI-MAF's Avatar
 
Join Date: Dec 2003
Location: Point Marion PA.
Posts: 623
Likes: 0
Received 0 Likes on 0 Posts
Car: 1982 CAMARO;
Engine: 1985 LB9;
Transmission: T-5/
TTT
Old 07-27-2004, 11:54 AM
  #66  
Member
 
1981TTA's Avatar
 
Join Date: May 2004
Location: SE Michigan
Posts: 289
Likes: 0
Received 0 Likes on 0 Posts
Car: 81 Turbo Trans Am
Engine: 301 T
Transmission: 200-4R
You should search the code for where that address is referenced. In the case of the $6E, search for "L830C". The calibrations start at location $8000 and move down from there. (Note, not all masks are necessarily this way. So, this isn't a set-in-stone value.)

Once you find this, you'll want to look "around" the code in the area before and after this. You'll need to get an idea of what the software is doing. In general, you should see lines of assembly somewhere above L830C that do a compare with MPH and a check of A/C status. The danger lies in potentially deleting something beside the Fan specific stuff.

It's difficult to speak in generalities about things like this. (And, I got an error on the link below.) I would start (as people have mentioned above) by going through the code and commenting what's being done in each section first (as much as possible). Then, it's a little easier to see what portions of code affect a particular function.
Old 08-02-2004, 11:53 PM
  #67  
Senior Member
 
MTPFI-MAF's Avatar
 
Join Date: Dec 2003
Location: Point Marion PA.
Posts: 623
Likes: 0
Received 0 Likes on 0 Posts
Car: 1982 CAMARO;
Engine: 1985 LB9;
Transmission: T-5/
Ok After going through a Hack This is the code I find
Code:
				;>>> Cooling Fan Tables & Params <<< 
				;******************************************************
				;
LC309:	.db	0x23		;Minimum MPH for using Fan 1 Duty Cycle
LC30A:	.db	0x0B		;MPH for Fan 1 Turn on if A/C ON
LC30B:	.db	0x4B		;Minimum Fan 1 Time on
				;Val = Seconds / 0.2
LC30C:	.db	0xFF		;Fan 1 duty cycle if MPH < minimum and A/C pressure high
				;Val = %DC / 0.390625
LC30D:	.db	0xC5		;Fan 1 Turn On (A/C on)
				;Val = DegF / 1.35 + 40 ($C5 = 226 degF)
	.db	0xC1		;Fan 1 Turn Off (A/C on)
				;Val = DegF / 1.35 + 40 ($C1 = 221 degF)
LC30F:	.db	0xC5		;Fan 1 Turn On (A/C off)
				;Val = DegF / 1.35 + 40 ($C5 = 226 degF)
	.db	0xC1		;Fan 1 Turn Off (A/C off)
				;Val = DegF / 1.35 + 40 ($C1 = 221 degF)
				;--------------------------------------------------------
				;Cooling Fan Duty Cycle vs. Coolant Temp
				;
				;Val = %DC / 0.39065
				;
				;%DC	DegF
				;--------------------------------------------------------
LC311:	.db	0xFF		;100	176
	.db	0xFF		;100	198
	.db	0xFF		;100	219
	.db	0xFF		;100	241
	.db	0xFF		;100	262
	.db	0xFF		;100	284
	.db	0xFF		;100	306
no do I just Delete this and then Assemble?
Old 08-03-2004, 01:41 AM
  #68  
Supreme Member

iTrader: (2)
 
dimented24x7's Avatar
 
Join Date: Jan 2002
Location: Moorestown, NJ
Posts: 9,962
Likes: 0
Received 3 Likes on 3 Posts
Car: 88 Camaro SC
Engine: SFI'd 350
Transmission: TKO 500
Axle/Gears: 9-bolt w/ 3.23's
One thing that youll have to do before going on a deleting binge is go through and make all the addressing relative. For example...

The address accumulator X (and I think Y as well depending on the ECM) are used to load the addresses of things like tables.

Say you have a table

LD370: FCB 1
FCB 2
FCB 3


Normally with the dissasembler the address load for this table will appear as:

LDX #$D370

or...

LDX #0xD370

Which loads the number for address 0xD370, which is the start of some table, into the accumulator. Problem is that when you move stuff around the thing you want to load may no longer be at that address. You have to make it so instead of a number for the address, you have a label that points to the address of the table so no matter where the table is, X will still be loaded with the correct address.

Youll want to change the address loads to something like:

LDX #LD370

or...

LDX #SOMETABLE

SOMETABLE and LD370 both now point to the address of the table at 0xD370, or where ever it may move to. You have to do this as the addresses of tables and constants will move around when you delete stuff. I think there is also other stuff but I cant remember right now.

Secondly. You actually have to delete the code that employs teh constants. Those are there for a reason, namely the code below uses those in its decision process. Read the code over and over, do searches to see where else related things are used, and make sure you know what does what before you yank it out.

Last edited by dimented24x7; 08-03-2004 at 01:48 AM.
Old 08-03-2004, 01:45 AM
  #69  
Senior Member
 
MTPFI-MAF's Avatar
 
Join Date: Dec 2003
Location: Point Marion PA.
Posts: 623
Likes: 0
Received 0 Likes on 0 Posts
Car: 1982 CAMARO;
Engine: 1985 LB9;
Transmission: T-5/
Well I think I am probally In over my head a little right now, I will just keep researhcing and pplaying around so that when It comes time that I actually need to remove Code for a reason I can. But thank you for the excellent explanation dimented24x7
Old 08-03-2004, 07:35 AM
  #70  
Supreme Member
 
Grumpy's Avatar
 
Join Date: Jun 2000
Location: In reality
Posts: 7,554
Likes: 0
Received 1 Like on 1 Post
Car: An Ol Buick
Engine: Vsick
Transmission: Janis Tranny Yank Converter
Originally posted by MTPFI-MAF
Well I think I am probally In over my head a little right now, I will just keep researhcing and pplaying around so that when It comes time that I actually need to remove Code for a reason I can. But thank you for the excellent explanation dimented24x7
All the locations in the code area that refer to data addresses in the calibration area, need to be changed to names rather then addresses.

Again, an area where having an ecm bench saves alot of wear and tear.

As a test for making sure you have things correct you should be able to add a 00 anywhere in the calibration data, and have the .asm assemble, without errors, and depending on you .bin compare utility, see everything lines up just perfectly.

There's difference from having a .asm that assembles compared to actual source code. well as least as Doc defines them.
Old 08-03-2004, 11:22 AM
  #71  
Supreme Member

iTrader: (1)
 
JP86SS's Avatar
 
Join Date: Apr 2004
Location: Browns Town
Posts: 3,178
Likes: 0
Received 3 Likes on 3 Posts
Car: 86 Monte SS (730,$8D,G3,AP,4K,S_V4)
Engine: 406 Hyd Roller 236/242
Transmission: 700R4 HomeBrew, 2.4K stall
Axle/Gears: 3:73 Posi, 7.5 Soon to break
Dummy question here

I've really got some catching up to do.
You guys have done an excellent job of communicating this.
THANK YOU !!! :hail:
My dumb question of the day:
Why doesn't a disassembled source recompile correctly?
Is this a function of the DIS assembler not cooperating with the Re-Assembler ???
It's been bugging me.
Old 08-03-2004, 11:58 AM
  #72  
Member
 
1981TTA's Avatar
 
Join Date: May 2004
Location: SE Michigan
Posts: 289
Likes: 0
Received 0 Likes on 0 Posts
Car: 81 Turbo Trans Am
Engine: 301 T
Transmission: 200-4R
Depending on the way the disassembler disassembles, it may be possible to simply reverse the process without modification. Usually the biggest problem with that approach is that a file that can be converted back-and-forth easily has very few helpful additions (like address labels along the far left column) that make life a little easier for the human reading the code.
Old 08-03-2004, 04:52 PM
  #73  
Member
 
1981TTA's Avatar
 
Join Date: May 2004
Location: SE Michigan
Posts: 289
Likes: 0
Received 0 Likes on 0 Posts
Car: 81 Turbo Trans Am
Engine: 301 T
Transmission: 200-4R
Originally posted by Grumpy
All the locations in the code area that refer to data addresses in the calibration area, need to be changed to names rather then addresses.

Again, an area where having an ecm bench saves alot of wear and tear.

As a test for making sure you have things correct you should be able to add a 00 anywhere in the calibration data, and have the .asm assemble, without errors, and depending on you .bin compare utility, see everything lines up just perfectly.

There's difference from having a .asm that assembles compared to actual source code. well as least as Doc defines them.
Did you go through all the areas of the code that use the "INCX/INCY" command for calibrations and change them, too? As an example, I'll use the following section of code :

Code:
	
	ldX	#$C37E   ; PE Low RPM Threshold
	ldaA	L004E      ; MPH
	cmpA	$C397	; MPH Threshold for PE mode
	bcs	LDB50	; Branch if MPH < cal
	incX		; PE High RPM Threshold
LDB50	ldaA	L0046	; RPM/25
	cmpA	0, X	; Compare RPM to cal.
	bcc	LDAEB	; Branch if RPM > cal
It's obviously important to the logic that the Low and High PE RPM thresholds are at consecutive locations ($C37E/$C37F) in order for the above to work correctly. This could be changed such that the "incX" command be replaced with "ldX #$C37F" (or an appropriate calibration name) to get away from the location dependency. Is this what you've done with the $60 code? Or, do you still have areas of the calibration like this one where the order can't be changed?
Old 08-03-2004, 05:40 PM
  #74  
Supreme Member
 
Grumpy's Avatar
 
Join Date: Jun 2000
Location: In reality
Posts: 7,554
Likes: 0
Received 1 Like on 1 Post
Car: An Ol Buick
Engine: Vsick
Transmission: Janis Tranny Yank Converter
Re: Dummy question here

Originally posted by JP86SS
My dumb question of the day:
Why doesn't a disassembled source recompile correctly?
Is this a function of the DIS assembler not cooperating with the Re-Assembler ???
It's been bugging me.
Cause.
There just doesn't seem to be given standards for disassembliers and assembliers to talk to each other.

Some assemblier, give error messages, and you just have to go lint by line til ya get the errors cured.
Old 08-03-2004, 05:44 PM
  #75  
Supreme Member
 
Grumpy's Avatar
 
Join Date: Jun 2000
Location: In reality
Posts: 7,554
Likes: 0
Received 1 Like on 1 Post
Car: An Ol Buick
Engine: Vsick
Transmission: Janis Tranny Yank Converter
Originally posted by 1981TTA
Pictures, words, thousand, yada yada......

Here's what it look like:
L8000: being the claibration data entry area entries.
LFB39: being what it looks like in the code area.


L8000:
PROMID: FDB $0007 ;Prom ID
DATECODE: FDB $03FD ;Date Code
SEQNUMB: FDB $05A3 ;Sequence Number


LFB39: LDS #511 ; Set User Stx
LDX #$8000 ; Start of EPROM
JSR LFF1F ; CK Sum Routine
LDX #$0100 ; New Err Address
STY 42,X ; Save CK sum at $012A
LDD PROMID ; Save EPROM ID Word
STD 36,X ; Save at $0124
LDD DATECODE ; Save Platform ID Word 1
STD 38,X ; Save at $0126
LDD SEQNUMB ; Save Platform ID Word 2
Old 08-04-2004, 12:05 AM
  #76  
Supreme Member

iTrader: (1)
 
JP86SS's Avatar
 
Join Date: Apr 2004
Location: Browns Town
Posts: 3,178
Likes: 0
Received 3 Likes on 3 Posts
Car: 86 Monte SS (730,$8D,G3,AP,4K,S_V4)
Engine: 406 Hyd Roller 236/242
Transmission: 700R4 HomeBrew, 2.4K stall
Axle/Gears: 3:73 Posi, 7.5 Soon to break
Originally posted by Grumpy
Pictures, words, thousand, yada yada......
Here's what it look like:
L8000: being the claibration data entry area entries.
LFB39: being what it looks like in the code area.


L8000:
PROMID: FDB $0007 ;Prom ID
DATECODE: FDB $03FD ;Date Code
SEQNUMB: FDB $05A3 ;Sequence Number


LFB39: LDS #511 ; Set User Stx
LDX #$8000 ; Start of EPROM
JSR LFF1F ; CK Sum Routine
LDX #$0100 ; New Err Address
STY 42,X ; Save CK sum at $012A
LDD PROMID ; Save EPROM ID Word
STD 36,X ; Save at $0124
LDD DATECODE ; Save Platform ID Word 1
STD 38,X ; Save at $0126
LDD SEQNUMB ; Save Platform ID Word 2
edit: pasted content from last page to keep it easy to read

OK, let me see if I got this straight

1.) you defined LABLES: to the storage locations

2.) LDS #511 ; Set User Stx (not sure why this is??)

3.) LDX #$8000 ; Start of EPROM
load X register with the starting address

4.) JSR LFF1F ; CK Sum Routine
jump and run the CK sum and have the result waiting in the "Y" register

5.) LDX #$0100 ; New Err Address
load the desired starting address into the "X" register.
(why called "New Err Address" ?) kind of threw me a bit.

6.) STY 42,X ; Save CK sum at $012A
Store the "Y" register (normal function is to store the MSB, then LSB in consecutive locations)
42 decimal = 2A hex added to the starting address of $100 previously.
So the Most significant Byte is at $12A, The Least Significant Byte is at $12B.


7.) load "D" with "PROMID" Yada..yada..yada !!!

I'm getting closer to catching my own fish everyday.
And the direct addressing issue that 1981TTA brought up is very good to know as well.
Thanks guys, this is great stuff !

Last edited by JP86SS; 08-04-2004 at 12:12 AM.
Old 08-04-2004, 02:38 AM
  #77  
Supreme Member

iTrader: (2)
 
dimented24x7's Avatar
 
Join Date: Jan 2002
Location: Moorestown, NJ
Posts: 9,962
Likes: 0
Received 3 Likes on 3 Posts
Car: 88 Camaro SC
Engine: SFI'd 350
Transmission: TKO 500
Axle/Gears: 9-bolt w/ 3.23's
The LDS is LoaD Stack pointer. Basically the stack is set up at the very end of the memory area. One of the first things to be done since the stack is used not only as temp storage but used to store the last address adn other stuff when a jump to subroutine is done or an interrupt happens.
Old 08-25-2004, 08:19 PM
  #78  
Supreme Member

iTrader: (1)
 
JP86SS's Avatar
 
Join Date: Apr 2004
Location: Browns Town
Posts: 3,178
Likes: 0
Received 3 Likes on 3 Posts
Car: 86 Monte SS (730,$8D,G3,AP,4K,S_V4)
Engine: 406 Hyd Roller 236/242
Transmission: 700R4 HomeBrew, 2.4K stall
Axle/Gears: 3:73 Posi, 7.5 Soon to break
back into it

I've finally found a few hours to begin with this.
I'm starting with the stock AUJP.
I've made my control file and have succesfully removed a few "chunks" of code that was reading as data.
I've run across a section that is giving me trouble (might just be the way I'm counting in hex)

The code looks like this
LB1E2: ldaa #0xFF
LB1E4: staa L011D
ldx #0xFF00
stx L400B
ldaa L4008
ldaa L4005
adda #0x02
staa L4006
ldaa L4009
ldx #0x4000
bset 0x07,x,#0x27
jmp LB6C0
.byte ,0x01,0x00,0x2A,0x03,0x7E,0xED,0x2B
.byte 0xCE,0x40,0x07,0x1E,0x01,0x01,0x3A,0x1F
.byte 0x00,0x20,0x08,0x1F,0x01,0x20,0x31,0xBD
.byte 0xEA,0x25,0x3B,0x1F,0x00,0x80,0x08,0x1F
... You get the jist of it.
From what I'm counting, the "entry" should be B1FC
That is not working.
Am I not considering a double address or something here?
Old 08-25-2004, 08:53 PM
  #79  
Supreme Member

iTrader: (1)
 
JP86SS's Avatar
 
Join Date: Apr 2004
Location: Browns Town
Posts: 3,178
Likes: 0
Received 3 Likes on 3 Posts
Car: 86 Monte SS (730,$8D,G3,AP,4K,S_V4)
Engine: 406 Hyd Roller 236/242
Transmission: 700R4 HomeBrew, 2.4K stall
Axle/Gears: 3:73 Posi, 7.5 Soon to break
FOUND IT

OK, in case you didn't catch it the way I didn't.
The #0xFF00 and similar entries are counting as two bytes.
Pretty sure anyway.
Using that mentality I'm getting through much more now.
Not sure if this is due to the addresing or just the actual command using double bytes.
If someone could clarify that, that would keep me moving in the rightdirection.
TIA.
Old 08-25-2004, 09:59 PM
  #80  
Supreme Member

iTrader: (1)
 
JP86SS's Avatar
 
Join Date: Apr 2004
Location: Browns Town
Posts: 3,178
Likes: 0
Received 3 Likes on 3 Posts
Car: 86 Monte SS (730,$8D,G3,AP,4K,S_V4)
Engine: 406 Hyd Roller 236/242
Transmission: 700R4 HomeBrew, 2.4K stall
Axle/Gears: 3:73 Posi, 7.5 Soon to break
Clarify Pleeeease !

I'm loosing my mind on counting this address.
Take a look, I'm coming up with "F112".
I know thats not right but if someone could look at this pic and give me come clarification on if I must figure in each "fuction" and figure out if they are single or double byte to come up with the ending address.

I don't want the answer!
Just some insight.
Attached Images
File Type: bmp
address.bmp (24.4 KB, 178 views)
Old 08-25-2004, 10:01 PM
  #81  
Supreme Member

iTrader: (2)
 
dimented24x7's Avatar
 
Join Date: Jan 2002
Location: Moorestown, NJ
Posts: 9,962
Likes: 0
Received 3 Likes on 3 Posts
Car: 88 Camaro SC
Engine: SFI'd 350
Transmission: TKO 500
Axle/Gears: 9-bolt w/ 3.23's
The 0xFF00 is a 16 bit, or double byte value. The value in decimal will be 255 * 256 which is equal to 65 thousand something. Itll be 0xFF and then 0x00 when the code is converted to a 'bin'. Is this what you wanted to know?
Old 08-25-2004, 10:06 PM
  #82  
Supreme Member

iTrader: (1)
 
JP86SS's Avatar
 
Join Date: Apr 2004
Location: Browns Town
Posts: 3,178
Likes: 0
Received 3 Likes on 3 Posts
Car: 86 Monte SS (730,$8D,G3,AP,4K,S_V4)
Engine: 406 Hyd Roller 236/242
Transmission: 700R4 HomeBrew, 2.4K stall
Axle/Gears: 3:73 Posi, 7.5 Soon to break
Thanks Dimented24x7, but what I'm tring to do is come up with the actual value (address location) for that " .byte..." section.
It needs to be defined in the control file for the bin to disassemble correctly.
I'm just not counting the address locations Vs. the instructions in the list (not correctly anyway).

edit:
The rts is not part of it (at the top) and the blank spaces are just Crefs.

Last edited by JP86SS; 08-25-2004 at 10:08 PM.
Old 08-25-2004, 10:20 PM
  #83  
Supreme Member

iTrader: (2)
 
dimented24x7's Avatar
 
Join Date: Jan 2002
Location: Moorestown, NJ
Posts: 9,962
Likes: 0
Received 3 Likes on 3 Posts
Car: 88 Camaro SC
Engine: SFI'd 350
Transmission: TKO 500
Axle/Gears: 9-bolt w/ 3.23's
Ok, I guess you want to get an offset from the known location to determine the address of 'byte ...'

In machine code, each of the pneumonics themselves should be one byte. Each of the double byte values following the pneumonic will be two bytes. All of the single bytes after the pneumonics will be one byte apeice. (come to think of it im not entirely sure either, never bothered to manually calculate addresses)

An easier way to do it would be just to assign it as well as the commands that use it a label and let the assembler calculate the actual address. I find it too hard to calculate addresses.

re-EDIT: NVM

Last edited by dimented24x7; 08-25-2004 at 10:53 PM.
Old 08-25-2004, 10:30 PM
  #84  
Supreme Member

iTrader: (1)
 
JP86SS's Avatar
 
Join Date: Apr 2004
Location: Browns Town
Posts: 3,178
Likes: 0
Received 3 Likes on 3 Posts
Car: 86 Monte SS (730,$8D,G3,AP,4K,S_V4)
Engine: 406 Hyd Roller 236/242
Transmission: 700R4 HomeBrew, 2.4K stall
Axle/Gears: 3:73 Posi, 7.5 Soon to break
Originally posted by dimented24x7
Ok, I guess you want to get an offset from the known location to determine the address of 'byte ...'

In machine code, each of the pneumonics themselves should be one byte. Each of the double byte values following the pneumonic will be two bytes. All of the single bytes after the pneumonics will be one byte apeice. (come to think of it im not entirely sure either, never bothered to manually calculate addresses)
...
I find it too hard to calculate addresses.
I agree, it is a PITA !
but to get my file to properly Dis-assemble, I needto do it to remove missing parts of code that are being interpeted as data.
Problem as I see it is reconizing which of the pneumonics ARE the double byte values
Then I can count correctly and put the "entry" location in the control file.
BTW, I'm playing with more of the disassembler settings to see if I can't get it to output ALL adresses. (that would be cool)
Old 08-25-2004, 10:33 PM
  #85  
Supreme Member

iTrader: (2)
 
dimented24x7's Avatar
 
Join Date: Jan 2002
Location: Moorestown, NJ
Posts: 9,962
Likes: 0
Received 3 Likes on 3 Posts
Car: 88 Camaro SC
Engine: SFI'd 350
Transmission: TKO 500
Axle/Gears: 9-bolt w/ 3.23's
one word... hex workshop. I just looked at the actual bin to get the address. Learned (but forgot) most of the machine code for the pneumonics so I jsut found the right one, clicked it to get an address offset, and that was it. Although the dis-assembler should have outputted all the addresses you need if you decompiled everything as commands after the bin part. There will be some extra addresses from the data that you wont need in addition to those.

When you go through to comment it, all the stuff thats not commands will look like random garbage pneumonics. Once youve determined that its a table or something (an address load followed by a jump to do a lookup will usually give the table away), you delete the junk in the code you have and look up all the hex values in a hex editor. Once youve found all the hex that constitutes the table, you put that into your source code as a table.

Its a little tricky, though. One thing that helped was to compile various lines of code to see what the machine code looks like. Once you can ID various pneumonics like branch commands and such, youll be able to find your location in the bin. The machine code for the pneumonics is listed in the motorola reference manual.

Last edited by dimented24x7; 08-25-2004 at 10:44 PM.
Old 08-25-2004, 10:44 PM
  #86  
Supreme Member

iTrader: (1)
 
JP86SS's Avatar
 
Join Date: Apr 2004
Location: Browns Town
Posts: 3,178
Likes: 0
Received 3 Likes on 3 Posts
Car: 86 Monte SS (730,$8D,G3,AP,4K,S_V4)
Engine: 406 Hyd Roller 236/242
Transmission: 700R4 HomeBrew, 2.4K stall
Axle/Gears: 3:73 Posi, 7.5 Soon to break
And the answer is " F10D"

I cheated and got the disassembler to output every address of everything! More you do, the more you learn.
Thanks for your help.
Really nice to bounce things off others to keep your sanity.
Not that I was really stable to begin with.
Time for bed.:lala:


edit: Can't believe I went through all but 2 entries NOT using the "addresses ON" in the control file.
Anybody new doing this, USE IT.
It will save you hours of counting

Last edited by JP86SS; 08-25-2004 at 10:51 PM.
Old 08-25-2004, 10:53 PM
  #87  
Supreme Member

iTrader: (2)
 
dimented24x7's Avatar
 
Join Date: Jan 2002
Location: Moorestown, NJ
Posts: 9,962
Likes: 0
Received 3 Likes on 3 Posts
Car: 88 Camaro SC
Engine: SFI'd 350
Transmission: TKO 500
Axle/Gears: 9-bolt w/ 3.23's
make sure your final copy of the source code is the one that only has the addresses you need. If not, youll have to go back and delete all the unecessary ones when it comes time to compile.
Old 08-26-2004, 02:28 PM
  #88  
Member

 
Cobra289's Avatar
 
Join Date: Nov 2003
Location: The Netherlands
Posts: 299
Likes: 0
Received 0 Likes on 0 Posts
Car: Cobra Kit Car
Engine: 350 HSR
Transmission: TKO 600
Axle/Gears: 3.31
Hi JP86SS,
I am glad that you found the solution.
Sorry that I could help you yesterday, you know the time factor with Europe.

I did mention in previous post to Grumpy the use of the setting "address".
It is very help full and at the end you switch off and you are finish.

Regards,
Cobra289

PS
Car is on hold due to clutch failure and need to wait for the parts coming from the USA.
Old 08-27-2004, 05:51 PM
  #89  
Supreme Member

iTrader: (1)
 
JP86SS's Avatar
 
Join Date: Apr 2004
Location: Browns Town
Posts: 3,178
Likes: 0
Received 3 Likes on 3 Posts
Car: 86 Monte SS (730,$8D,G3,AP,4K,S_V4)
Engine: 406 Hyd Roller 236/242
Transmission: 700R4 HomeBrew, 2.4K stall
Axle/Gears: 3:73 Posi, 7.5 Soon to break
Thanks Cobra, Dimented was keeping me thinking long enough to get me moving again.
I have ALL of the ".byte... " items gone now
(as of lunchtime today)
Reassembly will start later tonight.
sorry I didn't get over to see you when I was there in July, Maybe on my next trip later this year.
Hope the clutch parts come soon.
Old 08-27-2004, 07:08 PM
  #90  
Supreme Member

iTrader: (1)
 
JP86SS's Avatar
 
Join Date: Apr 2004
Location: Browns Town
Posts: 3,178
Likes: 0
Received 3 Likes on 3 Posts
Car: 86 Monte SS (730,$8D,G3,AP,4K,S_V4)
Engine: 406 Hyd Roller 236/242
Transmission: 700R4 HomeBrew, 2.4K stall
Axle/Gears: 3:73 Posi, 7.5 Soon to break
Back to the subject,

If an "entry" is the begining of a block of code (not data), then what is an "indirect" ?
or just in general, What is the difference?
I think I may need to use the indirects because I have tons of errors when trying to assemble.
I used "entry" to remove all of the ".byte..." items I had left after disassembling.
I don't think that was the correct thing to use in all instances of the ".byte..." output.
Old 08-27-2004, 11:24 PM
  #91  
Supreme Member

iTrader: (2)
 
dimented24x7's Avatar
 
Join Date: Jan 2002
Location: Moorestown, NJ
Posts: 9,962
Likes: 0
Received 3 Likes on 3 Posts
Car: 88 Camaro SC
Engine: SFI'd 350
Transmission: TKO 500
Axle/Gears: 9-bolt w/ 3.23's
The 'byte' and garbage looking command stuff where actual table entries or other items. Youll need those bytes. There are several tables in the code itself that the ecm uses. Youll have to find the actual hex values from the 'bin' and reconstruct the table in the code. If you have a hac of the same mask to work off of then you can just cut and paste the tables in place of the byte stuff. Alternatively, you can comment the code and use the commands themselves to point you to all the stuff thats not 'code'. I ended up just commenting my code without removing anything and then when I was sure what something was I formatted the table or whatever it was properly.

What do you mean by 'indirect'? Not sure I follow, or maybe I just dont know myself.

EDIT: I just saw the 'indirects' from the above post. I used a different disassembler that just did pure lables. Maybe theyre just pointers that point to the actual location of the item?

Last edited by dimented24x7; 08-27-2004 at 11:29 PM.
Old 08-28-2004, 10:40 AM
  #92  
Member

 
Cobra289's Avatar
 
Join Date: Nov 2003
Location: The Netherlands
Posts: 299
Likes: 0
Received 0 Likes on 0 Posts
Car: Cobra Kit Car
Engine: 350 HSR
Transmission: TKO 600
Axle/Gears: 3.31
Re: Back to the subject,

Originally posted by JP86SS
If an "entry" is the begining of a block of code (not data), then what is an "indirect" ?
or just in general, What is the difference?
I think I may need to use the indirects because I have tons of errors when trying to assemble.
I used "entry" to remove all of the ".byte..." items I had left after disassembling.
I don't think that was the correct thing to use in all instances of the ".byte..." output.
According the dissembler information it is:
"Most all jump tables and vector tables on any processor are done by using indirect addressing. An indirect address is a memory location that contains a memory address to other location. These “indirect addresses” can be data or code, but in most cases are code pointers. A prime example of an indirect address on the HC11 is 0xFFFE, which is the reset vector for the processor. Immediately after power-on, the HC11 reads the 2 bytes starting at 0xFFFE and uses those 2-bytes as the address for starting the execution of the HC11 startup code."

To come back to your problem I think that you put to much "entry’s" if that is the case your assembly will be loaded with errors. I meant that you put “entry’s” of places that are tables.
Don't forget to remove the address before you try to assemble.

Don't worry about the July trip to Holland. Do you frequent travel to Holland? We can arrange and appointment went you can.

Last edited by Cobra289; 08-28-2004 at 10:45 AM.
Old 08-28-2004, 11:17 AM
  #93  
Supreme Member

iTrader: (1)
 
JP86SS's Avatar
 
Join Date: Apr 2004
Location: Browns Town
Posts: 3,178
Likes: 0
Received 3 Likes on 3 Posts
Car: 86 Monte SS (730,$8D,G3,AP,4K,S_V4)
Engine: 406 Hyd Roller 236/242
Transmission: 700R4 HomeBrew, 2.4K stall
Axle/Gears: 3:73 Posi, 7.5 Soon to break
You are correct that I overdid the entrys in the control file.
I'm going to back up and restart from the beginning and only look at the disassembler errors rather than looking at the "dis" file.

I designed and installed a hydraulic component testing system at Schipohl airport for KLM.
I made ten trips to Amsterdam in the last year, most were 12-18 hr days debugging everything.
I'll look you up if I return.

It does seem that "indirects" can be put in as "entry" but there may be some better explaination of the two terms. I've read that statement several times in the documentation, but still is not real clear to me the difference.
Old 08-28-2004, 12:51 PM
  #94  
Member

 
Cobra289's Avatar
 
Join Date: Nov 2003
Location: The Netherlands
Posts: 299
Likes: 0
Received 0 Likes on 0 Posts
Car: Cobra Kit Car
Engine: 350 HSR
Transmission: TKO 600
Axle/Gears: 3.31
Originally posted by JP86SS
You are correct that I overdid the entrys in the control file.
I'm going to back up and restart from the beginning and only look at the disassembler errors rather than looking at the "dis" file.

I designed and installed a hydraulic component testing system at Schipohl airport for KLM.
I made ten trips to Amsterdam in the last year, most were 12-18 hr days debugging everything.
I'll look you up if I return.

It does seem that "indirects" can be put in as "entry" but there may be some better explaination of the two terms. I've read that statement several times in the documentation, but still is not real clear to me the difference.
When you get a ?? Question mark during disassembling in one of the entry’s that you are trying that means that this chunk is not a real data chunk but a table.

Sorry that I don’t have a better explanation for the “Indirects” I am not a expert in the area.
You can take contact with “Donald Whisnant” from “Dewtronics” the maker of the Disassembler “M6811DIS”

12-18 hr a day is to much! But any way you are welcome.
Regards,
Cobra289
Old 08-28-2004, 02:39 PM
  #95  
Supreme Member

iTrader: (2)
 
dimented24x7's Avatar
 
Join Date: Jan 2002
Location: Moorestown, NJ
Posts: 9,962
Likes: 0
Received 3 Likes on 3 Posts
Car: 88 Camaro SC
Engine: SFI'd 350
Transmission: TKO 500
Axle/Gears: 9-bolt w/ 3.23's
Out of curiosity I actually downloaded the disassembler and read some of the help file.

An 'entry' gives the code seeking part of this disassembler a place to start. In the ecms with the entire calibration on one prom the only entry you should need to use will be the last vector in the vector table at the end of the bin. This is the reset vector.

An 'indirect' tells the disassembler that the data at that point in the bin is actually a stored address of some other portion of the code or maybe a table. The compiler will see this and go to that address and also assign it a name or something if its specified so you dont have to do it manually. The only place youll need to use this is in the vector table. The source file you create should then have the code pointed to marked with labels.
Old 09-07-2004, 08:16 PM
  #96  
Supreme Member

iTrader: (1)
 
JP86SS's Avatar
 
Join Date: Apr 2004
Location: Browns Town
Posts: 3,178
Likes: 0
Received 3 Likes on 3 Posts
Car: 86 Monte SS (730,$8D,G3,AP,4K,S_V4)
Engine: 406 Hyd Roller 236/242
Transmission: 700R4 HomeBrew, 2.4K stall
Axle/Gears: 3:73 Posi, 7.5 Soon to break
Noob mistake found !

I drove myself crazy on this.
DO NOT try to remove the "lumps" from the data area !
They are data, not code.

Correct me if I'm wrong...
The "Code" portion starts at b000, anything prior to this is supposed to be ".byte... " data and not interpeted as code.
Adding "entry" to a point prior to the code section will cause you undue stress of trying to figure out what went wrong.

OK, question time.
1.) Is there any code between the "load" address and the b000 address ? (load 8000 and B000in my case)

2.) I have one part of code that I cannot get the lump out of.
It has a BVS (Branch if set) that is to goto B631, B631 goes to L0000.
The assembler states that this has two errors, u and a.
(a) Indicates a machine specific addressing or addressing mode error.
(u) Undefined symbol encountered during assembly.

Can this be an instruction that this particular assembler does not understand?

If I DO NOT un-lump this, it assembles and compare exactly.
If I put in the "entry to remove the ".byte.." it changes to code that I can follow but will not assemble because of the error.
(only 1 there is)
This is AUJP, in case you wondered.

I feel I'm getting real close but am over doing it somewhat.
I have only a few more questions on if it's needed to really add all of the vector interrupt returns, but that's later.
TIA

Last edited by JP86SS; 09-07-2004 at 08:24 PM.
Old 09-07-2004, 08:25 PM
  #97  
Supreme Member

iTrader: (1)
 
JP86SS's Avatar
 
Join Date: Apr 2004
Location: Browns Town
Posts: 3,178
Likes: 0
Received 3 Likes on 3 Posts
Car: 86 Monte SS (730,$8D,G3,AP,4K,S_V4)
Engine: 406 Hyd Roller 236/242
Transmission: 700R4 HomeBrew, 2.4K stall
Axle/Gears: 3:73 Posi, 7.5 Soon to break
Picture of the culprit, if it helps.
Attached Images
File Type: bmp
problem chunk.bmp (96.1 KB, 176 views)
Old 09-08-2004, 06:18 AM
  #98  
Moderator

iTrader: (1)
 
RBob's Avatar
 
Join Date: Mar 2002
Location: Chasing Electrons
Posts: 18,432
Likes: 0
Received 225 Likes on 211 Posts
Car: check
Engine: check
Transmission: check
Your 'lump' is a lookup table. There are sixteen addresses consisting of 2 bytes each. The first address is $CE64, the next is $CEC5, the next $D129. . .

RBob.
Old 09-08-2004, 10:40 AM
  #99  
Supreme Member

iTrader: (1)
 
JP86SS's Avatar
 
Join Date: Apr 2004
Location: Browns Town
Posts: 3,178
Likes: 0
Received 3 Likes on 3 Posts
Car: 86 Monte SS (730,$8D,G3,AP,4K,S_V4)
Engine: 406 Hyd Roller 236/242
Transmission: 700R4 HomeBrew, 2.4K stall
Axle/Gears: 3:73 Posi, 7.5 Soon to break
So that really is not code, but actual data.
No wonder it worked with it left alone.
Thanks for the help on that one.Now I'm going to begin the commenting of it and learn what is happening.
Old 09-08-2004, 11:45 AM
  #100  
Member

 
Cobra289's Avatar
 
Join Date: Nov 2003
Location: The Netherlands
Posts: 299
Likes: 0
Received 0 Likes on 0 Posts
Car: Cobra Kit Car
Engine: 350 HSR
Transmission: TKO 600
Axle/Gears: 3.31
Originally posted by JP86SS
So that really is not code, but actual data.
No wonder it worked with it left alone.
Thanks for the help on that one.Now I'm going to begin the commenting of it and learn what is happening.
Hi JP86SS,
Don't forget to use the new dissembler it will help you with “Commenting”

http://www.dewtronics.com/pub/m6811d...1DIS_v1p20.exe

This version will give you the “Data Reference address” and the “Code Reference address”

Code:
LC1F5:		.byte 	0x0F  						; DRef: 0xE595
LC1F6:		.byte 	0x30  						; DRef: 0xF4B0
LC1F7:		.byte 	0x0C  						; DRef: 0xD6D5
LC1F8:		.byte 	0x04  						; DRef: 0xED15
LC1F9:		.byte 	0x78  						; DRef: 0xED1C
LC1FA:		.byte 	0x00,0xF0   					; DRef: 0xED0C
LC1FC:		.byte 	0x01  						; DRef: 0xED21,0xED44
LC1FD:		.byte 	0x1D  						; DRef: 0xED69
---------------------------------------------------------------------------------------------------
LC905:		ldaa  	#0xFF 					; CRef: 0xC8FE
LC907:		staa  	L0113 					; CRef: 0xC903
LC90A:		ldaa  	L4005 					; CRef: 0xC7EC
			adda  	#0x02
			staa  	L4006
			ldx   	#0x4007
			bset  	0x00,x,#0x01
			jmp   	LCC1A
irqrtn:     	ldx   	#0x4007     				; CRef: 0xFFF2
			brset 	0x01,x,#0x01,LC98E
			brclr 	0x00,x,#0x20,LC931
			brclr 	0x01,x,#0x20,LC952
			bset  	*L0046,#0x08
			jsr   	LFBB9
			rti
As you see on the right side, you get the “DRef:” or the “CRef:” this address refers to the linked position. So it will be easy to find the links.
Your problems with “lumps” identification of Data or Code will be also solved because you get the information from the software.

When I used the new dissembler I was forced to change a little of the “Control file” (txt)

Well done JP86SS you are in business.
I am now involved with my gearbox and clutch, drive shafts U-joints and all the little things prior to winter. During the winter I will pick-up this activity and try to learn more of the commands.

Check my “DIS” file with the commented data and code reference.
http://www.donostia.demon.nl/CommentedAPYP6E.DIS


Regards,
Cobra289


Quick Reply: Source code for dummies....Ask questions here!



All times are GMT -5. The time now is 01:39 PM.