Author Topic: ObjAsm Tools  (Read 1574 times)

HSE

  • Member
  • *****
  • Posts: 1148
  • <AMD>< 7-32>
Re: ObjAsm Tools
« Reply #15 on: June 17, 2019, 01:22:29 AM »
Hi Biterider|

Setup is perfect now  :thumbsup:

Code: [Select]
Utilizar anotaciones
Las modificaciones tienen efecto en las ventanas nuevas
Seleccionar el idioma de la aplicaciĆ³n

Biterider

  • Moderator
  • Member
  • *****
  • Posts: 392
  • ObjAsm32 + ObjAsm64 = ObjAsm
    • ObjAsm
Re: ObjAsm Tools
« Reply #16 on: June 17, 2019, 04:37:37 AM »
Hi JJ, HSE
Thanks for testing. I think everything works now.  :thumbsup:
I hope this tool will help us to find the most common programming problems.


I'll keep the download up for a few more days and then integrate the tool into the OA package.


Regards, Biterider

sinsi

  • Member
  • *****
  • Posts: 1187
Re: ObjAsm Tools
« Reply #17 on: June 17, 2019, 08:02:00 AM »
Is this specific to ObjAsm only or any MASM source?

Quote
Working...
ERROR: possibly unpreserved register(s) detected.
  Code block:  desktopinit (106)
  Register(s): ebx esi

Code: [Select]
desktopinit proc public uses ebx esi pst:PTR IStream
I can walk on water but stagger on beer bourbon.

Biterider

  • Moderator
  • Member
  • *****
  • Posts: 392
  • ObjAsm32 + ObjAsm64 = ObjAsm
    • ObjAsm
Re: ObjAsm Tools
« Reply #18 on: June 17, 2019, 04:20:38 PM »
Hi Sinsi
I'm not able to find something wrong here.  :rolleyes:
I'm testing with
Code: [Select]
desktopinit proc public uses ebx esi pst:PTR IStream
  push ebx
  pop esi
  ret
desktopinit endp

Make sure you habe selected 32 bit code in the setup dialog (press F2 for quick access). A wrong setting here may produce this message.
If the setting is correct, can you send me or post the whole file that contains this procedure?

Thank you!
Biterider

sinsi

  • Member
  • *****
  • Posts: 1187
Re: ObjAsm Tools
« Reply #19 on: June 20, 2019, 09:27:23 AM »
OK, the problem seems to be the case used
Code: [Select]
MyProc proc uses ebx ;lower case
    xor ebx,ebx      ;matching case, no problem
    ret
MyProc endp

MyOtherProc proc USES EBX ;upper case
    xor ebx,ebx           ;lower case, triggers warning
    ret
MyOtherProc endp
Quote
ERROR: possibly unpreserved register(s) detected.
  Code block:  MyOtherProc (10)
  Register(s): ebx
Working
WARNING: possibly unnecessary register preservation detected.
  Code block:  MyOtherProc (10)
  Register(s): EBX

One other small complaint, having to load the file every time to check it.
I can walk on water but stagger on beer bourbon.

jj2007

  • Member
  • *****
  • Posts: 9794
  • Assembler is fun ;-)
    • MasmBasic
Re: ObjAsm Tools
« Reply #20 on: June 20, 2019, 05:17:47 PM »
OK, the problem seems to be the case used

Right, the tool should issue a warning "lousy and inconsistent coding style" :badgrin:

Quote
One other small complaint, having to load the file every time to check it.

True. CommandLineToArgvW and WM_DROPFILES (DragQueryFile, DragFinish) are your friends.

Biterider

  • Moderator
  • Member
  • *****
  • Posts: 392
  • ObjAsm32 + ObjAsm64 = ObjAsm
    • ObjAsm
Re: ObjAsm Tools
« Reply #21 on: June 20, 2019, 07:49:25 PM »
Hi Sinsi
Quote
MyOtherProc proc USES EBX
That was a good one. Thank your for investigating the issue.  :thumbsup:
It was easy to correct. A new version can be downloaded (build 79).

Quote
One other small complaint, having to load the file every time to check it.
I'm not sure if you tried the child window context menu. It has 2 items to open the analysed file and to recheck it.

Regards, Biterider

Biterider

  • Moderator
  • Member
  • *****
  • Posts: 392
  • ObjAsm32 + ObjAsm64 = ObjAsm
    • ObjAsm
Re: ObjAsm Tools
« Reply #22 on: June 20, 2019, 07:55:57 PM »
Hi JJ
Quote
Right, the tool should issue a warning "lousy and inconsistent coding style" :badgrin:
I agree with you  :wink2:

Quote
CommandLineToArgvW and WM_DROPFILES
Dropping files dosn't make much sense atm, since you have to trigger the check type from the menu.  :sad:
Command line arguments may be a good option.  :icon_idea:

Some questions remain for this operation mode:
- single file analysis or batch mode?
- output to window or console?

Regards, Biterider

LiaoMi

  • Member
  • ****
  • Posts: 593
Re: ObjAsm Tools
« Reply #23 on: June 20, 2019, 08:11:05 PM »
Dropping files dosn't make much sense atm, since you have to trigger the check type from the menu.  :sad:

It would be convenient if a single window with the choice of architecture appears when dragging a file  :icon_idea:

Biterider

  • Moderator
  • Member
  • *****
  • Posts: 392
  • ObjAsm32 + ObjAsm64 = ObjAsm
    • ObjAsm
Re: ObjAsm Tools
« Reply #24 on: June 21, 2019, 04:17:26 AM »
Hi JJ, LiaoMi
I took LiaoMis idea and implemented the code to drop files into the application.  :thumbsup:

The new release (build 80) can be downloaded.

Regards, Biterider