Author Topic: Automated Plugin Builder plugin for qe  (Read 26084 times)

zedd151

  • Member
  • *****
  • Posts: 1957
Re: Automated Plugin Builder plugin for qe
« Reply #45 on: July 23, 2018, 07:03:48 AM »
My sophisticated test it's not builded:
Code: [Select]
aaa proc
       ret
aaa endp
Error A2049: Invalid instruction operands ;)
:biggrin:   Thats right, aaa is an instruction.   :shock:
aaa

jj's a lot sharper than I am.  :lol:
Regards, zedd.
:tongue:

HSE

  • Member
  • *****
  • Posts: 2494
  • AMD 7-32 / i3 10-64
Re: Automated Plugin Builder plugin for qe
« Reply #46 on: July 23, 2018, 07:47:31 AM »
Error A2049: Invalid instruction operands ;)

 :biggrin: I forget that because I never used AAA. In real code is rrr, wich also is another entity in the forum.
Equations in Assembly: SmplMath

zedd151

  • Member
  • *****
  • Posts: 1957
Re: Automated Plugin Builder plugin for qe
« Reply #47 on: July 23, 2018, 07:57:31 AM »

 :biggrin: I forget that because I never used AAA. In real code is rrr, wich also is another entity in the forum.


I think I used AAA a total of approximately one time. as for rrr314567890, haven't heard from lately.  :P
Regards, zedd.
:tongue:

zedd151

  • Member
  • *****
  • Posts: 1957
Re: Automated Plugin Builder plugin for qe
« Reply #48 on: July 23, 2018, 07:39:45 PM »
With information supplied by HSE, I have found that yes there is a flaw in how menus.ini is parsed.
 
While investigating the code I noticed another flaw that could mitigate a crash. Previously I had a
list box so the user can indicate the drive letter where Masm32 is installed but had for some reason
removed that code.  ::)  As this is three year old code, I don't remember my intentions for doing so. (memory leak   :icon_confused: )
 
It's possible I didn't intend for a release product for the general population, and that it was intended
for my own personal use? I don't remember. It is also possible that I had a more user friendly version
that is now lost, along with megabytes of other old code.  :(
 
Anyway a rewrite of the menus.ini processing is underway. Also checking the drive letter where Masm32
is installed and asking the user " '[drive letter]:\masm32\' is this where you want your plugin ceated? " since I know
that it is possible for a user to have more than one installation of masm32 (on multiple drives/partitions)
 
Adding some code to make a backup copy of menus.ini. Also a display of the modified menus.ini so the user can
inspect it before the program proceeds to write the new menus.ini file to disk.
 
Any suggestions for further error checking are appreciated and will be taken into account before the next version
of the Plugin Builder is posted.
 
This rewrite may take a little time to finish/debug before the next version is posted.
Regards, zedd.
:tongue:

zedd151

  • Member
  • *****
  • Posts: 1957
Re: Automated Plugin Builder plugin for qe
« Reply #49 on: July 31, 2018, 08:54:06 PM »
The PluginBuilder project is on hold for the foreseeable future. Due to the fact that I am concentrating a lot of effort in getting my code editor finished to the state I had it in three years ago. I had only an early (only partly funtional) Source code from which to work with.
 
Its design is similar to qeditor, with a few new perks that I like. Highlighting for pasted text, and highlighting(different color)  for searched words/phrases. Sorry, no Highlighting for Registers, Varibles, etc. I don't want techicolor - just a litlle highhighting will do.
 
It has a built-in plugin testbed, (for creating qeditor compatible plugins), the Search and Replace dialog is now permanently on the Toolbar.
There are too many new perks to name just yet, as only some are fully completed and 100% stable. I will update my progress in a new thread probably in the Workshop, comming soon!
 
 So, the Plugin Builder for Queen Elizabeth is on hiatus.   8) 
Regards, zedd.
:tongue:

zedd151

  • Member
  • *****
  • Posts: 1957
Re: zedds Plugins :P
« Reply #50 on: August 03, 2018, 08:49:37 PM »
The Plugin Builder project is dead
« Last Edit: September 25, 2022, 03:57:02 AM by zedd151 »
Regards, zedd.
:tongue:

zedd151

  • Member
  • *****
  • Posts: 1957
Re: zedds Plugin Builder...
« Reply #51 on: September 25, 2022, 04:07:36 AM »
The Plugin Builder project is dead
Not just yet, though. The original version had a few flaws in it so I had removed the attachment(or Dropbox link?) that contained the flawed code. I plan on revitalizing this project with better methods. Part of the problems with the original version was that the menu item for the new plugin was not always properly installed into qeditors 'menus.ini' file, or some users had altered menus.ini files.
One of the changes would be to output a string for the user to manually insert into the ini file under the desired submenu, or use qeditors menu editing function to do it there, rather than doing it internally in the plugin builder.

Anyway I look forward to making plugins for qeditor again and posting them for others to use, if they choose to do so.
« Last Edit: December 29, 2022, 03:12:36 PM by zedd151 »
Regards, zedd.
:tongue:

zedd151

  • Member
  • *****
  • Posts: 1957
Re: qEditor Plugin to sort and remove duplicates
« Reply #52 on: December 26, 2022, 12:58:07 PM »
This plugin sorts (ascending) the selected lines of text in qEditor, and removes duplicate entries after sorting. This one replaces my original version that is lost to time. Uses Masm32 library sorting algorithms. One caveat is that empty lines will be removed.


attachment removed will be posted in my new plugin thread... zedds qeditor plugins
« Last Edit: December 29, 2022, 03:13:01 PM by zedd151 »
Regards, zedd.
:tongue:

jj2007

  • Member
  • *****
  • Posts: 13944
  • Assembly is fun ;-)
    • MasmBasic
Re: Automated Plugin Builder plugin for qe
« Reply #53 on: December 26, 2022, 09:39:30 PM »
Works like a charm :thumbsup:

Before:
Code: [Select]
WndProc proc uses edi ebx hWnd:HWND, uMsg:UINT, wParam:WPARAM, lParam:LPARAM
LOCAL ButTop, rc:RECT,  hInst, buffer[107]:BYTE ; 107 + 4 + 16 = 127
mrm hInst, hInstance
mov edx, lParam ; edx because Switch...
SWITCH uMsg ; ... trashes eax
CASE WM_CREATE
; -------------------- create keyboard shortcuts ----------------------------
; no m2m hWin, hWnd ; a global copy for MsgBox etc
frsx equ [edi.FINDREPLACE]
mov edi, offset frs
movi frsx.lStructSize, sizeof FINDREPLACE
m2m frsx.hwndOwner, hWnd
movi frsx.Flags, FR_DOWN ; enter once, let user keep settings
mov edx, offset BufFind ; back to back with BufRepl
mov frsx.lpstrFindWhat, edx
mov frsx.wFindWhatLen, sizeof BufFind ; word
add edx, sizeof BufFind
mov frsx.lpstrReplaceWith, edx
mov frsx.wReplaceWithLen, sizeof BufFind
; we need a dirty trick against the Masm 9.0 bug: bye bye to invoke, push by hand...!
push dword ptr ((LastAccel-MyAccels)/(SIZEOF ACCEL)+1)
push offset MyAccels
call CreateAcceleratorTable
mov hAccT, eax

After:
Code: [Select]
; -------------------- create keyboard shortcuts ----------------------------
; no m2m hWin, hWnd ; a global copy for MsgBox etc
; we need a dirty trick against the Masm 9.0 bug: bye bye to invoke, push by hand...!
add edx, sizeof BufFind
call CreateAcceleratorTable
frsx equ [edi.FINDREPLACE]
m2m frsx.hwndOwner, hWnd
mov edi, offset frs
mov edx, offset BufFind ; back to back with BufRepl
mov frsx.lpstrFindWhat, edx
mov frsx.lpstrReplaceWith, edx
mov frsx.wFindWhatLen, sizeof BufFind ; word
mov frsx.wReplaceWithLen, sizeof BufFind
mov hAccT, eax
movi frsx.Flags, FR_DOWN ; enter once, let user keep settings
movi frsx.lStructSize, sizeof FINDREPLACE
push dword ptr ((LastAccel-MyAccels)/(SIZEOF ACCEL)+1)
push offset MyAccels
CASE WM_CREATE
SWITCH uMsg ; ... trashes eax
mov edx, lParam ; edx because Switch...
mrm hInst, hInstance
LOCAL ButTop, rc:RECT,  hInst, buffer[107]:BYTE ; 107 + 4 + 16 = 127
WndProc proc uses edi ebx hWnd:HWND, uMsg:UINT, wParam:WPARAM, lParam:LPARAM

zedd151

  • Member
  • *****
  • Posts: 1957
Re: qEditor Plugin to sort and remove duplicates
« Reply #54 on: December 26, 2022, 11:03:56 PM »
Works like a charm :thumbsup:
Of course in your test example (using an asm source), I wouldn't try to assemble the result.  :tongue:
Useful for lists that is known to contain duplicates. It's had it's uses for me, and sometimes the need comes up on the forum; perhaps others may find a use for it as well.  :biggrin:
Regards, zedd.
:tongue:

zedd151

  • Member
  • *****
  • Posts: 1957
Re: Automated Plugin Builder plugin for qe
« Reply #55 on: December 28, 2022, 02:24:11 AM »

I will no longer post new plugins to this thread. For new plugins, see the thread: zedds qeditor plugins

The 'Plugin Builder' project is most likely not going to be finished any time soon, if ever. R.I.P.
« Last Edit: December 29, 2022, 03:13:49 PM by zedd151 »
Regards, zedd.
:tongue: