Menu
JAQForum Ver 19.10.27

Forum Index : Microcontroller and PC projects : MMBasic for Windows - betas

   Page 30 of 30    
Posted: 11:40pm
23 Dec 2023
Copy link to clipboard
matherp
Guru

It is a limitation, not a bug,  live with it or use something else
 
Posted: 03:12am
24 Dec 2023
Copy link to clipboard
panky
Guru


Without trying to flog a dead horse, the area of interest appears to be the asynchronous interaction between the underlying OS (serial hardware handler and Windows itself), OLC and MMBasic. That is, if you do any form of serial read and IMMEDIATELY follow with a serial close, confusion reigns!

Two solutions/workarounds:-

1. Don't open a comport, do a read then immediately close the com port in any loop (not recommended anyway as all you are doing is wasting system resources in repetitively creating buffers then freeing them);

2. If you MUST do 1 above out of sheer stubbornness, put a PAUSE 1 immediately above the CLOSE statement and live with the performance hit ( on my i7 laptop, a pause of 500uS appears to be the crossover between conflict (lockup) and reliable operation).

The ' works with MMBasic for DOS ' overlooks the complexity added through OLC.

Sorry to butt in Peter but I'm with you - live with it!

Doug.
 
Posted: 03:42am
24 Dec 2023
Copy link to clipboard
Turbo46
Guru


  Quote  Without trying to flog a dead horse

I have put my whip away I can live with it and will let sleeping dogs lie.  

I was just a bit frustrated when people were trying something different and claiming not to to find a problem. It IS a bit of a shock when MMB4W just crashes with no warning.

To try to avoid another kerfuffle over this happening again to someone else in the future, is it worth putting something in the manual to describe the cause and the work around(s)?

Bill
 
Posted: 10:08am
24 Dec 2023
Copy link to clipboard
phil99
Guru


  Quote  when people were trying something different and claiming not to to find a problem.

My apologies for that.
In my blissful ignorance I was unaware of the difference, imagining serial data is all the same. If it's shoved in one end and comes out the other, job done.
After messing about with it on this I see there is more to it.
 
Posted: 01:10am
25 Dec 2023
Copy link to clipboard
panky
Guru


  Turbo46 said  
To try to avoid another kerfuffle over this happening again to someone else in the future, is it worth putting something in the manual to describe the cause and the work around(s)?
Bill


Cheers Bill,

Will put a note in Appendix A on serial.

Regards,
Doug.
 
Posted: 06:48pm
25 Dec 2023
Copy link to clipboard
Turbo46
Guru


Thanks Doug and Phil,

I hope you enjoyed Christmas Day.

Bill
 
Posted: 04:43am
19 Jan 2024
Copy link to clipboard
panky
Guru


OPTION CONTROLS appears not to be implemented?
Default appears to be 80 but I need a few more
Is this an omission or not implemented in 5.07.03b23?
 
Posted: 05:01am
19 Jan 2024
Copy link to clipboard
phil99
Guru


OPTION GUI CONTROLS perhaps?

Edit.
No that isn't in the manual either.
Edited 2024-01-19 15:04 by phil99
 
Posted: 06:13am
19 Jan 2024
Copy link to clipboard
Turbo46
Guru


Is this what you want?

  The GUI Manual said  The memory required by the GUI controls must be allocated by using the command OPTION
MAXCTRLS n. Typically you would use the command: OPTION MAXCTRLS 100
This will set the maximum number of controls that you can define to 100. This option is permanent (ie,
it will be remembered on power down). By default the maximum number of controls is set to zero, in
this case the GUI features are not available and no memory will be used


Bill
 
Posted: 04:56am
20 Jan 2024
Copy link to clipboard
panky
Guru


Thanks guys, had a look through the source and I think it defaults to 1000 in MMB4W and there is no OPTION to change it - as memory is not an issue in a PC, there is no need to scrimp on memory usage by changing the value.
Cheers,
Doug.
 
Posted: 08:31am
02 Oct 2025
Copy link to clipboard
matherp
Guru

V5.07.03b25


MMB4WV5.07.03b25.zip


Includes the new TRIM$ function

TRIM$(source$ [,mask$] [,where/where$])


This function can remove characters from the beginning or end of a string or both
source$ is the input string
mask$ is a string containing a list of character to be removed. If omitted it defaults to space
where/where$ can be L, R, or B or a string beginning with L, R, or B to specify characters should be removed from the left of the source, the right of the source or both. If omitted defaults to L

Enhancement to 3D modelling

Rendering of the 3D object works by Painters algorithm. This works by sorting the faces and drawing those further away first. In addition the MMBasic firmware supports "back face culling". This doesn't draw faces that are pointing away from the camera. In order to sort the faces the current MMbasic code uses the Z axis position of the face centroid. This works in many situations but in some 3D models it is better to use the furthest vertex and sort on that. I've added that as an option to DRAW3D SHOW and DRAW3D WRITE
DRAW3D SHOW n, x, y, z [,nocull][,usefurthest]
DRAW3D WRITE n, x, y, z [,nocull][,usefurthest]



set 1 to use the furthest vertex and zero (default) to use the centroid.
Edited 2025-10-02 18:32 by matherp
 
Posted: 01:42am
03 Oct 2025
Copy link to clipboard
phil99
Guru


On Win10 are any special Windows settings needed for b25?
When double clicking the .exe the first window opens and the second tries to open then both vanish. No error message from Windows.
Running as admin. makes no difference.

b23 and b24 run ok.
 
Posted: 02:34am
03 Oct 2025
Copy link to clipboard
Geoffg
Guru


Yes, exactly the same for me on Win 11.

Geoff
 
Posted: 02:55am
03 Oct 2025
Copy link to clipboard
TassyJim
Guru


Opens OK for me on W11 but opens then closes immediately on W10
I tried updating the MSVCRT but that didn't help.

Edit: Also runs OK on my W11 laptop.

Jim

Edit 2:
Windows event log:

Faulting application name: MMBasic.exe, version: 0.0.0.0, time stamp: 0x68dd6300
Faulting module name: MSVCP140.dll, version: 14.24.28127.4, time stamp: 0x5d8e68c4
Exception code: 0xc0000005
Fault offset: 0x00017817
Faulting process ID: 0x143c
Faulting application start time: 0x01dc3412c73c1074
Faulting application path: C:\apps\mmbasic\MMBasic.exe
Faulting module path: C:\WINDOWS\SYSTEM32\MSVCP140.dll
Report ID: 75e9ee34-d88f-4103-a337-aea900278b60
Faulting package full name:
Faulting package-relative application ID:

Edit 3:

I installed the latest VC runtime x86 version and this time, the main MMB4W window opens and appears to be alive.
It give the FPS which varies but no sign-on banner and no program output.
Edited 2025-10-03 14:41 by TassyJim
 
Posted: 05:16am
03 Oct 2025
Copy link to clipboard
disco4now
Guru


OK on my win11 and win10. Both using default  mode 9.
 
Posted: 07:24am
03 Oct 2025
Copy link to clipboard
phil99
Guru


Thanks Jim, followed your lead and this fixed it.
https://aka.ms/vs/17/release/vc_redist.x86.exe

Elite Ships COBRA_MK_3 3D demo runs well.
Edited 2025-10-03 17:40 by phil99
 
Posted: 08:29am
03 Oct 2025
Copy link to clipboard
Geoffg
Guru


  phil99 said  Thanks Jim, followed your lead and this fixed it.
https://aka.ms/vs/17/release/vc_redist.x86.exe

Thanks, that did it!

Geoff
 
   Page 30 of 30    


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