News:

Masm32 SDK description, downloads and other helpful links
Message to All Guests

Main Menu

MasmBasic

Started by jj2007, May 23, 2012, 10:16:07 PM

Previous topic - Next topic

Antariy

Quote from: jj2007 on August 25, 2013, 09:46:26 PM@Alex: The first line of the listbox ("matches") can be used to drag it. While the listbox has the focus, cursor left exits to found text, cursor right exits to findbox. One * as in mov*edx means "find mov and edx in the same line". More stars mean "extend search to n lines".

Not drag - resize. When bottom edge of listbox is below or sometimes near of bottom edge of the screen, it is not resizable using top edge of a listbox.

qWord

oh no, I'm excluded from the best lib on net  :(

BTW: eliFoTdaolnwoDLRU?
MREAL macros - when you need floating point arithmetic while assembling!

jj2007

Quote from: qWord on August 26, 2013, 12:06:55 AM
oh no, I'm excluded from the best lib on net  :(

BTW: eliFo...

Obviously, you are not excluded ;-)

jj2007

Quote from: dedndave on August 25, 2013, 10:18:16 PM
not trying to hurry you - lol
just wanted to help you wring out the bugzzz

Thanxalot, Dave & Alex & Sinsi :icon14:

I fixed the flickering between the System Apps and Help menus, and a couple of other issues in File/New Masm source, and it should be fine now.

The installer is now on top of this thread.

dedndave


anta40

Hi jj,

I got the "Oops! It seems that MasmBasic is not good for you.."

:icon_eek:

jj2007

Quote from: anta40 on August 27, 2013, 10:33:19 PM
I got the "Oops! It seems that MasmBasic is not good for you.."

That's mean :biggrin:

What does the attached exe show as output?

anta40

This is the output:
Quote
Registry HKCR
$edi            No luck in HKCR/App...
$Err$()         The operation completed successfully.

Registry HKCU   $edi            No luck in HKCU...
Registry HKLM   $edi            No luck in HKLM...
Registry HKCR   $edi            No luck in HKCR...

FileWrite
$esi            C:\Users\CSL-NB-064\Desktop\~tmp28080107.asm
$edi            C:\Program Files\Microsoft Visual Studio 11.0\Common7\IDE\devenv
.exe
Bye...

jj2007

Quote from: anta40 on August 28, 2013, 04:08:33 AM
$edi            C:\Program Files\Microsoft Visual Studio 11.0\Common7\IDE\devenv

Ouch... that's a tough case 8)

I am really tempted to send you googling for Visual Basic, that's what you deserve :P
However, after several glasses of a good red wine I decided to give you a last chance - try again ;-)

anta40

OK, finally it asked for macros.asm
Seems to work, now  :biggrin:

jj2007

Yeah :t
The problem is to find out on which drive the valid Masm32 installation sits (and there should be one, otherwise go google for VB, script kiddie :lol:)
So the installer checks for a qeditor installation, if that fails, it asks how asm files are being opened. And you open them with a prog outside the Masm32 path, that's why it failed. So I added the "last chance" ;)

dedndave

@echo off
for %%X in (D E F G H I J K L M N O P Q R S T U V W X Y Z) do if exist %%X:\masm32\qeditor.exe set MyDrive=%%X:\
MbInstall %MyDrive%


:P

i know - you don't want a batch file

qWord

Great, now I've got a "last" chance! However, a bit strange because I didn't realized that I've had any chance before that one ;)
MREAL macros - when you need floating point arithmetic while assembling!

jj2007

#118
Quote from: dedndave on August 28, 2013, 10:21:03 PM
i know - you don't want a batch file

That's brute force, Dave :eusa_naughty:

Quote from: qWord on August 29, 2013, 01:45:46 AM
Great, now I've got a "last" chance! However, a bit strange because I didn't realized that I've had any chance before that one ;)

You found the elifo, so you had more than one chance ;-)

Update 30 August:
- default buffer for GetRegVal is now 128k
- The Gf...() family returns for index=-1 or no argument the values for the file identified by the last Exist():

GfSize, GfDate$, GfTime$, GfAgeHours, GfAgeMinutes, GfAgeMs, GfLastWrite
        GetFiles *.asm        ; get all sources in the current folder and its subfolders
        xchg eax, ecx        ; save #files
        For_ ebx=0 To ecx-1
                .if GfAgeHours(ebx)<=24                ; pick your latest code
                        mov esi, Cat$(Files$(ebx)+Space$(20))        ; we simulate LSET
                        Print Str$("\n#%i ", ebx+1), GfDate$(ebx), ", ", GfTime$(ebx), Spc2$, Str$("%i bytes", edx::GfSize(ebx))        ; edx::eax for QUADWORD size
                .endif
        Next
Rem        - all GetFiles special arrays return a DWORD in eax, except for GfLastWrite, which returns
          in xmm0 the ftLastWriteTime FILETIME member of the WIN32_FIND_DATA structure
        - GfSize returns the high quad in edx
        - Gf....(-1I or Gf...(), i.e. index -1 or no arg: all functions return data for the last Exist()
        - GfAge...() is calculated from the moment when GetFiles was launched, except for index=-1, which returns age
          relative to the time of the last Exist() call

jj2007

Update 27 September 2013:
- Fixed a rare bug in Hex$()
- Clip$(): the optional parameter is now working properly
- QSort works now also for dynamic string arrays
- ShEx for those who can't memorise the 5 ShellExecute args (=myself :biggrin:)

include \masm32\MasmBasic\MasmBasic.inc        ; download
  Init
  Dim My$()        ; create a dynamic string array
  xor ecx, ecx
  .Repeat
        Let My$(ecx)=Str$("String %i", Rand(20)+1000)
        inc ecx
  .Until ecx>=20
  QSort My$()                ; sort all elements allocated so far
  For_ ebx=0 To ecx-1
        PrintLine Str$("Line %i =\t", ebx), My$(ebx)
  Next


  if 0        ; New: ShellExecute for dummies
        FileWrite "~tmp.txt", Cat$("Hello, it's "+Time$)        ; create a text file
        ShEx "~tmp.txt"        ; you can add e.g. SW_MAXIMIZE if needed
  endif

  Exit
end start