Pages: 1 2 3 [4] 5
Author Topic: What does this line of assembly code mean?  (Read 56792 times)
elRey
Hero Member
*****

Karma: +32/-1
Offline Offline

Posts: 565


« Reply #45 on: June 27, 2013, 12:40:27 PM »

wow. The whole time I'm reading r14 not rl4.  Thanks to both of you.
Logged
elRey
Hero Member
*****

Karma: +32/-1
Offline Offline

Posts: 565


« Reply #46 on: October 28, 2013, 12:52:57 PM »

I need help changing referenced mem location.

Code:
mov     [-r0], r9
mov     [-r0], r7
mov     [-r0], r6
sub     r0, #2
extp    #0E1h, #1 ; 'ß'
movb    rl4, fnwue_byte_384905
cmpb    rl4, #0FFh
jmpr    cc_NZ, loc_8A1922

in hex:
Code:
88 90 
88 70
88 60
28 02
D7 40 E1 00 
F3 F8 05 09
47 F8 FF 00
3D 10

I'd like to change it so instead of comparing fnwue_byte_384905 with #0FFh, it compares newvar_byte_380ACC.

I tried changing

F3 F8 05 09
to
F3 F8 CC 8A

but there seems to be a segment issue. It then references lamfaw_w_word_384ACC. How do I get it to 380xxx instead 384xxx ?

Thanks,
Rey
Logged
elRey
Hero Member
*****

Karma: +32/-1
Offline Offline

Posts: 565


« Reply #47 on: October 28, 2013, 01:44:16 PM »

Funny thing, this seems to point back to the original post Smiley

I nop the extp line and it worked.
« Last Edit: October 28, 2013, 01:50:08 PM by elRey » Logged
elRey
Hero Member
*****

Karma: +32/-1
Offline Offline

Posts: 565


« Reply #48 on: July 08, 2014, 08:41:55 AM »

Can someone explain why the lines circled in yellow are needed? I think I get the third circle. It's compiling the results of the mulu above.

edit: I included more of the function. Is the first circle needed because of r3 being the result of a divlu further up? Would it be needed if it were only udslsum_l_word_380E06 (move r3, udslsum_l_word_380E06) ?

This is ggdsas_ggdsl

Thanks,
Rey

« Last Edit: July 08, 2014, 11:10:17 PM by elRey » Logged
phila_dot
Hero Member
*****

Karma: +171/-11
Offline Offline

Posts: 1709


« Reply #49 on: July 09, 2014, 02:05:31 PM »

The first one is making input voltage and DSLGRAD like factors.

The last two are converting 32 to 16 bit.
Logged
elRey
Hero Member
*****

Karma: +32/-1
Offline Offline

Posts: 565


« Reply #50 on: July 09, 2014, 02:38:47 PM »

Thank you! So if I start with 'like factors' I don't need that first one. Got it.
Logged
terminator
Sr. Member
****

Karma: +15/-4
Offline Offline

Posts: 425


« Reply #51 on: August 25, 2014, 12:18:58 PM »

Seg0x209@824000:5C1C                 mov     r10, r14
Seg0x209@824000:5C1E                 extp    r13, #1
Seg0x209@824000:5C20                 mov     r14, [r12+]
Seg0x209@824000:5C22                 mov     r4, #0
Seg0x209@824000:5C24                 mov     r5, #0

Please give me a hint what does [r12+] mean?
Logged
dream3R
Hero Member
*****

Karma: +18/-8
Offline Offline

Posts: 1194


« Reply #52 on: August 25, 2014, 02:21:42 PM »

Add indirect word memory to direct GPR and post-increment source pointer by 2.

(From the manual) Smiley
Logged



How to work out values from an A2L Smiley

http://nefariousmotorsports.com/forum/index.php?topic=5525.msg52371#msg52371


Starting Rev's http://nefariousmotorsports.com/forum/index.php?topic=5397.msg51169#msg51169

noobs read this before asking http://nefariousmotorsports.com/forum/index.php?topic=9014.0title=


ORGORIGINAL 05 5120 creator for Volvo
ORIGINAL Datalogger (Freeware) Author
ORGINAL finder of the 'extra' torque' limits
I don't have ME7.01 A2L I just use ID
terminator
Sr. Member
****

Karma: +15/-4
Offline Offline

Posts: 425


« Reply #53 on: August 25, 2014, 02:31:21 PM »

Thanks!) Couldnt find it)
Logged
terminator
Sr. Member
****

Karma: +15/-4
Offline Offline

Posts: 425


« Reply #54 on: September 23, 2014, 02:23:23 PM »

I know its a noob question but extp changes only op2? Or both op1 and op2?

For example,
extp r13, #1;
mov op1, op2






Logged
terminator
Sr. Member
****

Karma: +15/-4
Offline Offline

Posts: 425


« Reply #55 on: September 23, 2014, 04:32:22 PM »

This is part of LDRXN subroutine:

extp    r13, #3 ; I dont understand it. Because if there are 20Ah pages (r13) after subtraction the final result will be 0, I mean without 20A pages, and looks like no sense to use EXTP in that case?
sub     r4, [r2]        ; nmot - LDRXN RPM
mov     r5, [r2+2]      ; LDRXN RPM to r5
sub     r5, [r2]
« Last Edit: September 23, 2014, 04:34:45 PM by terminator » Logged
phila_dot
Hero Member
*****

Karma: +171/-11
Offline Offline

Posts: 1709


« Reply #56 on: September 23, 2014, 05:20:52 PM »

I know its a noob question but extp changes only op2? Or both op1 and op2?

For example,
extp r13, #1;
mov op1, op2

No op1 is the page and op2 is the number of lines affected.

This is part of LDRXN subroutine:

extp    r13, #3 ; I dont understand it. Because if there are 20Ah pages (r13) after subtraction the final result will be 0, I mean without 20A pages, and looks like no sense to use EXTP in that case?
sub     r4, [r2]        ; nmot - LDRXN RPM
mov     r5, [r2+2]      ; LDRXN RPM to r5
sub     r5, [r2]

r13 is the page and it is applied to the address that r2 points to for all three lines
Logged
terminator
Sr. Member
****

Karma: +15/-4
Offline Offline

Posts: 425


« Reply #57 on: September 24, 2014, 12:56:42 AM »

Thank you! I got it.
Logged
terminator
Sr. Member
****

Karma: +15/-4
Offline Offline

Posts: 425


« Reply #58 on: October 11, 2014, 01:51:28 PM »

Please help me with [-r0].

r15, byte_81ED35;        the offset contains 6
mov     [-r0], r15;           move 6 to r0, then r0 offset =  81ED33 Huh
Logged
phila_dot
Hero Member
*****

Karma: +171/-11
Offline Offline

Posts: 1709


« Reply #59 on: October 11, 2014, 02:33:27 PM »

No, that is a stack pointer
Logged
Pages: 1 2 3 [4] 5
  Print  
 
Jump to:  

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines Page created in 2.709 seconds with 18 queries. (Pretty URLs adds 0s, 0q)