Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 02:11 05 Nov 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 : MMEdit V5.3.4

     Page 1 of 2    
Author Message
TassyJim

Guru

Joined: 07/08/2011
Location: Australia
Posts: 6344
Posted: 03:47am 21 Oct 2025
Copy link to clipboard 
Print this post

The download from Geoff's site has been updated.

The accuracy of the mouse in MMCC has been improved.
It also now responds to button down and button up for left, middle and right buttons.
You might find an issue with the pop-up menu appearing with right mouse button clicks.
This should get disabled when sending mouse movements to the attached device but the pop-up occasionally has a mind of it's own.

PIO code formatting should be better.

There was a bug when copying code between tabs with large files under some conditions.
This has been fixed.

The update to syntax files and inclusion of YMODEM will be in the next update.

Jim
VK7JH
MMedit
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 5418
Posted: 07:53am 21 Oct 2025
Copy link to clipboard 
Print this post

Nice Jim,

The auto formatting of PIO commands is perfect.

Volhout
Edited 2025-10-21 17:54 by Volhout
PicomiteVGA PETSCII ROBOTS
 
IanT

Senior Member

Joined: 29/11/2016
Location: United Kingdom
Posts: 115
Posted: 10:12am 21 Oct 2025
Copy link to clipboard 
Print this post

Good, I've just updated.

Thank you Jim!

Regards,

IanT
 
circuit
Senior Member

Joined: 10/01/2016
Location: United Kingdom
Posts: 290
Posted: 06:44pm 21 Oct 2025
Copy link to clipboard 
Print this post

Gosh, how excellent!  No screams of outrage from Windows Defender; no claims of virus embedding; it just simply installs!
 
BarryH

Newbie

Joined: 05/01/2025
Location: Australia
Posts: 23
Posted: 09:52am 23 Oct 2025
Copy link to clipboard 
Print this post

Is MMCC designed to also work over TCP/IP?

I see the dropdown box where one can select a com port or TCPIP, however when trying to connect to a PicoW or Pico2W, I get "connection to <ip number> failed!!".
I get this message when trying to connect via the inbuilt VT Terminal mode or the external VT Helper mode.

I can connect successfully if just using Teraterm Pro, or if I revert to USB/serial connection and use either the inbuilt VT Terminal mode or the external VT Helper mode.

I've also checked my firewall rules to ensure MMCC is allowed.
BarryH
 
BarryH

Newbie

Joined: 05/01/2025
Location: Australia
Posts: 23
Posted: 12:21pm 23 Oct 2025
Copy link to clipboard 
Print this post

with some more perseverance I've solved my own dilemma.
I needed to put port 23 after the IP number ie 10.0.0.18:23
All is now working as expected.
BarryH
 
TassyJim

Guru

Joined: 07/08/2011
Location: Australia
Posts: 6344
Posted: 12:07am 26 Oct 2025
Copy link to clipboard 
Print this post

I have updated MMEdit to V5.3.5
Linux users now have ttyS0 to ttyS5 available
There is now support for AUTOSAVE (provided your device allows it).
Users don't have to do anything. It will be used when available and revert to the old AUTOSAVE if needed.
The upload speed improvement is significant.


Jim
VK7JH
MMedit
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 5418
Posted: 08:53am 26 Oct 2025
Copy link to clipboard 
Print this post

Hi Jim, Peter,

Amazing upload speed difference. For larger programs, I could take a sip of coffee while uploading, even take a bite out of a biscuit. No, not any more..
From 40-ish seconds to less than five with MMedit535 and V6.01.00RC7..

Thank you very much for this combined implementation.

Volhout
PicomiteVGA PETSCII ROBOTS
 
TassyJim

Guru

Joined: 07/08/2011
Location: Australia
Posts: 6344
Posted: 02:22am 28 Oct 2025
Copy link to clipboard 
Print this post

@Volhout,
could you try this MMCC
I have changed it to drop DTR 100mS before disconnecting.
I used this test program
 '
 SETPIN GP18, DOUT 'LED
 DO
   n = n + 1
   IF n MOD 500 = 0 THEN
     PIN(GP18) = p
     p = 1-p
   ENDIF
   PRINT"the quick brown fox played with his picomite all day long"
 LOOP
 

The LED is a good visual indication of what the USB is doing.
When I disconnect in MMCC, the loop runs faster suggesting that the USB knows it is "full" and stops sending data.
AS soon as I reconnect, the LED slows down and the data resumes.

My Linux serial is noticeably different to Windows but that is likely to be due to the VM.

MMCC.zip


Jim
Edited 2025-10-28 12:49 by TassyJim
VK7JH
MMedit
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 5418
Posted: 06:59am 28 Oct 2025
Copy link to clipboard 
Print this post

Yes Jim,

That totally fixed it.

Volhout
PicomiteVGA PETSCII ROBOTS
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10554
Posted: 08:46am 28 Oct 2025
Copy link to clipboard 
Print this post

For reference this is the code handling this in the latest firmware
           if (Option.SerialConsole == 0 || Option.SerialConsole > 4)
           {
               if (tud_cdc_connected() && (tud_cdc_get_line_state() & 0x01)) //check for CDC enumerated and DTR asserted
               {
                   while (!tud_cdc_write_available()) //Buffer full or other CDC problem
                   {
                       busy_wait_us(250); // USB packets are every 1000mSec so no point checking immediately
                       if (!(tud_cdc_connected() && (tud_cdc_get_line_state() & 0x01))) //recheck for CDC enumerated and DTR asserted
{
                           break; //ignore the character if CDC no longer there
}
                   tud_cdc_write_char(c);
                   if (flush)
                   {
                       tud_cdc_write_flush();
                   }
               }
           }
 
BishopXXL
Newbie

Joined: 13/01/2019
Location: Germany
Posts: 39
Posted: 11:18am 28 Oct 2025
Copy link to clipboard 
Print this post

Hello,
I don't want to hijack this thread, but I have a question about MMEdit.

Can I change the cursor?
I created a new color scheme and can't see the cursor because it's black on a dark blue background ;)

Best regards, Thomas (beginner in mmedit)
 
dddns
Guru

Joined: 20/09/2024
Location: Germany
Posts: 688
Posted: 11:56am 28 Oct 2025
Copy link to clipboard 
Print this post

Hello Jim,

your MMCC application, I tested the Linux version, seems to send chr$(27) twice, when pressing esc in the VT-100 terminal. Is there a reason? I'm new to VT-100 and don't know if it is required for some device.

Regards
 
bfwolf
Regular Member

Joined: 03/01/2025
Location: Germany
Posts: 87
Posted: 03:23pm 28 Oct 2025
Copy link to clipboard 
Print this post

  dddns said  Hello Jim,

your MMCC application, I tested the Linux version, seems to send chr$(27) twice, when pressing esc in the VT-100 terminal. Is there a reason? I'm new to VT-100 and don't know if it is required for some device.

Regards


A VT-100 (and the older VT-52) uses the ESC-character chr$(27) to introduce the control codes (escape sequences) - thus the name "escape sequence".

https://vt100.net/docs/vt100-ug/contents.html

https://fruitoftheshed.com/wiki/doku.php?id=platform_agnostic:vt100_escape_sequences

So probably to "cancel" an "escape sequence", a second ESC-character is sent which then will be passed through to the PicoMite?

Regards
 
EDNEDN
Senior Member

Joined: 18/02/2023
Location: United States
Posts: 246
Posted: 04:52pm 28 Oct 2025
Copy link to clipboard 
Print this post

  bfwolf said  
So probably to "cancel" an "escape sequence", a second ESC-character is sent which then will be passed through to the PicoMite?


That would be an interesting Escape Sequence!    An Escape Sequence that cancels a previous, inflight Escape Sequence!!!

I'm pretty sure that doesn't exist!   AndI don't think I would want to be the one responsible for coding that and getting it to work reliably.


.
Edited 2025-10-29 02:53 by EDNEDN
 
JohnS
Guru

Joined: 18/11/2011
Location: United Kingdom
Posts: 4113
Posted: 05:28pm 28 Oct 2025
Copy link to clipboard 
Print this post

Some comms protocols are along those lines (*) but I think seeing an Esc as an Esc was to detect that the next character didn't arrive in time (or was not a valid char for any recognised esc sequence).

(*) e.g. DLE STX for the start of a packet, DLE ETX for the end, and DLE DLE to mean one DLE - it's known as byte stuffing

John
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 8263
Posted: 06:35pm 28 Oct 2025
Copy link to clipboard 
Print this post

You never could "cancel" an escape sequence. You typed in the sequence then terminated it with CRLF or whatever and it was actioned. A couple of backspaces will take out Esc[ without actioning it as it isn't an escape sequence at that point. After the CRLF it's gone - too late to change anything. :)
Mick

Zilog Inside! nascom.info for Nascom & Gemini
Preliminary MMBasic docs & my PCB designs
 
bfwolf
Regular Member

Joined: 03/01/2025
Location: Germany
Posts: 87
Posted: 07:09pm 28 Oct 2025
Copy link to clipboard 
Print this post

  EDNEDN said  
  bfwolf said  
So probably to "cancel" an "escape sequence", a second ESC-character is sent which then will be passed through to the PicoMite?


That would be an interesting Escape Sequence!    An Escape Sequence that cancels a previous, inflight Escape Sequence!!!

I'm pretty sure that doesn't exist!   AndI don't think I would want to be the one responsible for coding that and getting it to work reliably.
.


  Mixtel90 said  You never could "cancel" an escape sequence. You typed in the sequence then terminated it with CRLF or whatever and it was actioned. A couple of backspaces will take out Esc[ without actioning it as it isn't an escape sequence at that point. After the CRLF it's gone - too late to change anything. :)


"Cancel" wasn't meant to undo an already executed escape sequence!
By "cancel," I meant the following: When the VT-100 receives an ESC, it assumes that an escape sequence is about to be started and waits for the next character, which then further specifies what should be done—e.g., a '[', which many escape sequences begin with. The output is therefore initially after the first ESC character. If another ESC character follows, it's clear that there is no escape sequence, because there is no "ESC ESC" sequence! Just like you write "\\" in C strings when you want to insert a '\' into the string. '\' is the escape character, and this is canceled out by another '\'.

https://vt100.net/docs/vt100-ug/chapter3.html

"The processing of the control sequence then continues with the next character received. The exceptions are: if the character ESC occurs, the current control sequence is aborted, and a new one commences beginning with the ESC just received. If the character CAN (308) or the character SUB (328) occurs, the current control sequence is aborted."

Perhaps many "compatible" terminal programs just abort when a 2nd ESC received within the sequence?

Regards
 
TassyJim

Guru

Joined: 07/08/2011
Location: Australia
Posts: 6344
Posted: 08:37pm 28 Oct 2025
Copy link to clipboard 
Print this post

  Quote  Can I change the cursor?
I created a new color scheme and can't see the cursor because it's black on a dark blue background ;)


You cannot change the colour but you can change the width

about line 130 in MMEdit.inf
Insert cursor width = 2

Make any changes with MMEdit shut down.

Jim
VK7JH
MMedit
 
TassyJim

Guru

Joined: 07/08/2011
Location: Australia
Posts: 6344
Posted: 09:17pm 28 Oct 2025
Copy link to clipboard 
Print this post

MMCC only sends one <ESC> for each key-press
<ESC> is also used to escape from some sequences such as AUTOLOAD so is treated slightly differently to normal keys.
This might result in a line feed on the MMCC terminal but nothing extra is being sent.

Depending on the device, you may be seeing escape sequences that the pico is sending.

Jim

Edit
dddns is correct, the Linux version is sending most of the control characters twice.
It uses the same source code as Windows so I am not sure how that can happen.

I will investigate further.
Edited 2025-10-29 09:36 by TassyJim
VK7JH
MMedit
 
     Page 1 of 2    
Print this page
The Back Shed's forum code is written, and hosted, in Australia.
© JAQ Software 2025