Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 09:01 01 Aug 2025 Privacy Policy
Jump to

Notice. New forum software under development. It's going to miss a few functions and look a bit ugly for a while, but I'm working on it full time now as the old forum was too unstable. Couple days, all good. If you notice any issues, please contact me.

Forum Index : Microcontroller and PC projects : MM Edit update

Author Message
TassyJim

Guru

Joined: 07/08/2011
Location: Australia
Posts: 6283
Posted: 07:15am 08 Nov 2020
Copy link to clipboard 
Print this post

I have posted an update to MMEdit.
There are a few big changes to the behind-the-scenes.

All INF files for the main program combined into MMedit4.inf - This means that your preferences will need to be re-configured.
Syntax help changed to a common CSV file and a series of HTML files.
F1 with the cursor over a 'word' will give you a brief tooltip syntax hint and shift-F1 will open a new mini-browser with the full syntax.

MMEdit help changed to HTML using the same mini-browser.
Both the MMEdit help and the Syntax help are also available on my website and I will try to keep them up to date.

Save as HTML option added. This was needed while creating examples for the help files.

Normal 'load and run' uses temp.bas as before but shift- 'load and run' saves file with it's own name on relevant devices.
Likewise, shift-load in the chat window uses the file name instead of temp.bas

Find now continually cycles through the file.
Variable report has option (In INF file) to set the long line warning level. and report layout width.
If you don't want the long line warning, set it high.

In Chat window, option to filter VT control codes in ASCII view. That makes viewing the CMM2 output easier.

File Manger resizes directory lists when resizing window.

If you edit the INF file to change colours, you may notice the first lines:
[Styling]
Editor Font                      = Courier New

If you do change the editor font, make sure that it's a mono-spaced font or things will not go well.

And a few other cleanups. I managed to remove over 1000 lines of code so I hope I didn't go too far!

If you want to tidy up the data files, delete (or backup) the data folder before installing.

Your antivirus will most likely complain. Microsoft have me as an "unknown publisher" so you have to go down the "more info/run anyway" route to install it.

Jim
VK7JH
MMedit
 
Chopperp

Guru

Joined: 03/01/2018
Location: Australia
Posts: 1097
Posted: 08:04am 08 Nov 2020
Copy link to clipboard 
Print this post

Thanks Jim.
Much appreciated.
I couldn't find the "Buy You a Beer" Button.
Brian
ChopperP
 
CircuitGizmos

Guru

Joined: 08/09/2011
Location: United States
Posts: 1427
Posted: 04:49pm 08 Nov 2020
Copy link to clipboard 
Print this post

"Normal 'load and run' uses temp.bas as before but shift- 'load and run' saves file with it's own name on relevant devices.
Likewise, shift-load in the chat window uses the file name instead of temp.bas"

Love!
Micromites and Maximites! - Beginning Maximite
 
disco4now

Guru

Joined: 18/12/2014
Location: Australia
Posts: 1003
Posted: 03:48am 09 Nov 2020
Copy link to clipboard 
Print this post

Hi Jim,
Trying the latest version in stand alone mode I get errors for the following menu items. I have included a sample from the error log. Can you see the same thing or is it me?

Regards
Gerry


Advanced/Set Clock
Advanced/Run on Load
Advanced/Auto Crunch
Advanced/Delete Blank
Advanced/CLS on load




Error log timestamp Monday 09/11/20 02:32:53 PM

Runtime error: invalid branch label: [cfgCB14x]

Error(Exception)>>defaultAction
ExceptionHandler>>findHandler: <anError>
Error(Exception)>>activateHandler: <anExceptionHandler>
Error(Exception)>>handle
Error(Exception)>>signal
Error class(Exception class)>>signal: <'invalid branch label...'>
BasicRunProgram(Object)>>error: <'invalid branch label...'>
BasicRunProgram(BasicProgram)>>goto: <'[cfgCB14x]'>
BasicRunProgram>>goto: <'[cfgCB14x]'>
BasicRunProgram(BasicProgram)>>gotoAndIfStoppedBegin: <'[cfgCB14x]'>
BasicRunProgram(BasicProgram)>>handlerName: <'[cfgCB14x]'> evaluate: <aBlockClosure> callParameters: <anOrderedCollection>
BasicRunProgram>>handlerName: <'[cfgCB14x]'> evaluate: <aBlockClosure> callParameters: <anOrderedCollection>
BasicRunProgram(BasicProgram)>>submitHandlerName: <'[cfgCB14x]'> evaluate: <aBlockClosure> callParameters: <anOrderedCollection>
BasicRunProgram(BasicProgram)>>submitHandlerName: <'[cfgCB14x]'> callParameters: <anOrderedCollection>
BasicMenuWrapper>>perform: <'[cfgCB14x]'>
BasicMenuWrapper>>evaluateString: <'[cfgCB14x]'>
String>>evaluateFor: <aBasicMenuWrapper>
[] in MenuWindow>>performMenuItem:
ExceptionHandler>>evaluateProtectedBlock: <aBlockClosure>
[] in ExceptionHandler>>activateDuring:
ProtectedFrameMarker(BlockClosure)>>setUnwind: <aBlockClosure>
BlockClosure>>invisibleEnsure: <aBlockClosure>
ExceptionHandler>>activateDuring: <aBlockClosure>
ExceptionHandler class>>handle: <aMessageNotUnderstood class> with: <aBlockClosure> during: <aBlockClosure>
BlockClosure>>on: <aMessageNotUnderstood class> do: <aBlockClosure>
MenuWindow>>performMenuItem: <2317>
BasicApplicationWindow(ApplicationWindow)>>performMenuItem: <2317>
Message>>perform
NotificationManager>>empty
NotificationManager>>runPendingEvents
NotificationManager>>runEventLoop
Message>>perform
Message>>evaluate
Process>>safelyEvaluate: <aMessage>
Process>>evaluate: <aMessage>

Latest F4 Latest H7 FotS
 
TassyJim

Guru

Joined: 07/08/2011
Location: Australia
Posts: 6283
Posted: 05:16am 09 Nov 2020
Copy link to clipboard 
Print this post

No, I didn't change a few pointers.
You should be able to set them in Preferences until I fix it.

I will update with a fix in a day or so.


I knew there would be a few things I missed.

Jim
VK7JH
MMedit
 
disco4now

Guru

Joined: 18/12/2014
Location: Australia
Posts: 1003
Posted: 05:28am 09 Nov 2020
Copy link to clipboard 
Print this post

OK, thanks.
Latest F4 Latest H7 FotS
 
TassyJim

Guru

Joined: 07/08/2011
Location: Australia
Posts: 6283
Posted: 06:08am 09 Nov 2020
Copy link to clipboard 
Print this post

I have fixed the problem and the current version on my website 'should' be OK.

To save downloading the full program, you can replace the mmedit.tkn file in the program folder with the one in this zip. (only do this if you were running V4.1.0)

MMedit.zip

Jim
VK7JH
MMedit
 
Chopperp

Guru

Joined: 03/01/2018
Location: Australia
Posts: 1097
Posted: 07:16am 09 Nov 2020
Copy link to clipboard 
Print this post

Hi Jim

Been getting this error fairly regularly for a number of weeks now in Chat mode from the CMM2. (A & VT modes)
Just updated the TKN file to see if the fault was still there. It was.
(The date stamp on the Log had me fooled for a tick or two).

Been using Tera Term instead as you suggest with no problems.

(Only just found the Error.Log file yesterday after reading the new help files)

a non-continuable protection violation has occurred. Check ERROR.LOG file.

Error log timestamp 11/9/2020 16:58:35

The registers were:
EIP =  0x0245a88c
ESP =  0x0019e8d4
EBP =  0x0019e8e4
EAX =  0x104c325c
EBX =  0xffffe5bb
ECX =  0x66303b30
EDX =  0x000128a1
EDI =  0x1007e18c
ESI =  0x101af6c4
CS  =  0x00000023
DS  =  0x0000002b
ES  =  0x0000002b
SS  =  0x0000002b
End Registers

ChopperP
 
TassyJim

Guru

Joined: 07/08/2011
Location: Australia
Posts: 6283
Posted: 08:05pm 09 Nov 2020
Copy link to clipboard 
Print this post

  Quote  a non-continuable protection violation has occurred.


I haven't seen that one for a long time...
This is the standard response I usually give:
  Quote  A non-continuable protection violation is Windows' way of protecting us from rouge software and to make life difficult for program developers.
Visa made the setting too tight but they relaxed things a bit for Windows7 and later.
My W7 and W10 had the default setting and all is well but some PC suppliers have things set tight.
You can either change your settings or install MMedit into a folder that is NOT in 'Program Files'
Please check you DEP settings and if is not set to essential Windows programs only, that is the problem. If you want to leave it set for all programs you can add MMedit as an exception or go the other folder method.

The easiest way to find DEP is to search Windows Help for DEP.

DEP stands for Data Execution Prevention.

I did add a "manifest" which is supposed to stop this from happening but as you have seen, Windows wins the battle some times.


Windows might have changed something. They are always changing something.

The Chat window uses a lot of memory at times and I have no control over it's memory management which could be why you are seeing it there.

Jim
VK7JH
MMedit
 
Chopperp

Guru

Joined: 03/01/2018
Location: Australia
Posts: 1097
Posted: 10:28am 10 Nov 2020
Copy link to clipboard 
Print this post

Thanks for that Jim.

I will look into your suggestions.

It did settle down a bit last night.


Brian
ChopperP
 
vegipete

Guru

Joined: 29/01/2013
Location: Canada
Posts: 1132
Posted: 07:16pm 12 Nov 2020
Copy link to clipboard 
Print this post

What does MMEdit do behind the scenes to upload a basic program to a CMM2?

Are there a sequence of commands such as
[Ctrl-C] [Carriage Return]
AUTOSAVE "<filename>.BAS" [Carriage Return]
or something like that?

Are there serial port pacing settings that work best?

Thanks.
Visit Vegipete's *Mite Library for cool programs.
 
TassyJim

Guru

Joined: 07/08/2011
Location: Australia
Posts: 6283
Posted: 08:43pm 12 Nov 2020
Copy link to clipboard 
Print this post

  vegipete said  What does MMEdit do behind the scenes to upload a basic program to a CMM2?

Are there a sequence of commands such as
[Ctrl-C] [Carriage Return]
AUTOSAVE "<filename>.BAS" [Carriage Return]
or something like that?

Are there serial port pacing settings that work best?

Thanks.


It depends on what method you choose.
I prefer 'load' from within the chat window.
It uses AUTOSAVE and relies on you to do the ctrl-C and NEW if desired first.
There is a line delay which is user-configurable. The actual delay used with AUTOSAVE is double the set value. In my case that's 10x2=20mS
It has to cater for all the slower micromites as well as the CMM2.

If you use 'load and run' from the editor, there are a number of options you can choose to do during the upload such as set the time. This method uses XMODEM instead of AUTOSAVE.

Jim
VK7JH
MMedit
 
Cyber

Senior Member

Joined: 13/01/2019
Location: Ukraine
Posts: 161
Posted: 04:54am 14 Nov 2020
Copy link to clipboard 
Print this post

Thank you very much, Jim!
All changes are so cool!
 
Print this page


To reply to this topic, you need to log in.

The Back Shed's forum code is written, and hosted, in Australia.
© JAQ Software 2025