Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 05:47 27 Nov 2024 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 : MMBasic for Windows - betas

     Page 6 of 30    
Author Message
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 9121
Posted: 03:24pm 06 Mar 2022
Copy link to clipboard 
Print this post

V5.07.03b4


MMBasic.zip

Should significantly reduce system load when the screen is not being changed and also during pause statements as long as no interrupts are set.
 
Michal
Senior Member

Joined: 02/02/2022
Location: Poland
Posts: 123
Posted: 06:32pm 06 Mar 2022
Copy link to clipboard 
Print this post

Excellent

Michal
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4239
Posted: 06:57pm 06 Mar 2022
Copy link to clipboard 
Print this post

@Peter

The efficiency increased significant. But you tuned it a bit to far, If you run the fft program and press "w" a few times slowly (do not repeat too fast) the graphics driver stops before it is finished drawing.




The top graph is drawn partially.Also some text is not drawn.
When you repeat the "w" fast and regular, the drawing completes. I guess you have an algorytm to sleep the drawing engine that could be tuned.

Volhout

P.S. this is MMBasic on Wine. Maybe this does not happen in W10/W11
Edited 2022-03-07 05:00 by Volhout
PicomiteVGA PETSCII ROBOTS
 
TassyJim

Guru

Joined: 07/08/2011
Location: Australia
Posts: 6099
Posted: 09:23pm 06 Mar 2022
Copy link to clipboard 
Print this post

Likewise here on native Windows10
Switching to mode 10 seems to be the worst.



Jim
VK7JH
MMedit   MMBasic Help
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 9121
Posted: 10:16pm 06 Mar 2022
Copy link to clipboard 
Print this post

Does this fix it?


MMBasic.zip
 
TassyJim

Guru

Joined: 07/08/2011
Location: Australia
Posts: 6099
Posted: 11:20pm 06 Mar 2022
Copy link to clipboard 
Print this post

Fixed it for me...
VK7JH
MMedit   MMBasic Help
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4239
Posted: 07:41am 07 Mar 2022
Copy link to clipboard 
Print this post

Yes Peter,

That fixed it for the FFT demo program, tested on Wine(linux) and W10.

Thanks

Volhout
PicomiteVGA PETSCII ROBOTS
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4239
Posted: 08:09am 07 Mar 2022
Copy link to clipboard 
Print this post

@Peter,

I am trying to find out why Wolf3d on CMM2 and MMB4W is behaves different.
At first I thought the Left Control key (to fire a weapon) was not handled correctly in MMB4W, but that seems to work on W10 (not sure about Wine/linux though).

I do get a (low volume) "shot" sound, but on CMM2 the gun makes a small movement while firing. This seems not happening on MMB4W. I have to double check tonight (MMB4W on W10 in the office, CMM2 at home).

How does sound volume work on MMB4W. There is an individual volume in each play command (i.e. "play sound"), and then there is a "play volume L,R" command. Is this similar of individual gain settings for the different players, and a master volume ?

I guess this is a RTFM question .... (RTFM = Read The F*cking Manual)..

And then there is the issue of the face in the lower part of the screen. The eyes move at a frightfull speed. Maybe that is poor programming from Mauro, who is runnign at the top speed of the CMM2, and MMB4W is much faster on a recent PC.
Edited 2022-03-07 18:11 by Volhout
PicomiteVGA PETSCII ROBOTS
 
Frank N. Furter
Guru

Joined: 28/05/2012
Location: Germany
Posts: 830
Posted: 08:35am 07 Mar 2022
Copy link to clipboard 
Print this post

I finally got around to testing MMBasic for Windows.

The last versions that work for me (under WIN10) are 5.07.03a1 and 5.07.03a. With all versions after that a white and a black window opens and closes again after a few seconds without any error message - that's it...
All beta versions do not work for me (same behavior).

   

Frank
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 9121
Posted: 08:41am 07 Mar 2022
Copy link to clipboard 
Print this post

  Quote  The last versions that work for me (under WIN10) are 5.07.03a1 and 5.07.03a.


All versions after a3 implement sound support. It sounds like you are missing the 32-bit winmm.dll or something similar

  Quote  How does sound volume work on MMB4W.

Should be the same as CMM2. The only difference is that it implements a logarithmic volume control which is also now in CMM2 but post-dates Mauro's code

  Quote  Maybe that is poor programming from Mauro,

Ouch Mauro controls the overall frame rate but probably not small movements. The gun it probably moving between frames, likewise the eyes
 
Frank N. Furter
Guru

Joined: 28/05/2012
Location: Germany
Posts: 830
Posted: 10:25am 07 Mar 2022
Copy link to clipboard 
Print this post

Hmm, winmm.dll is on my system - but it takes longer until the windows just close when I copy the DLL to MMBasic for Windows...

Too bad !!!  

Frank
 
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 4040
Posted: 10:28am 07 Mar 2022
Copy link to clipboard 
Print this post

Good morning Peter,

Thanks to your recent changes I've almost got my unit-test framework up and running and things are mostly green.

However here's a blocker for running the entire suite in a single command.

Setup:

1. MKDIR "execute-run-test"
2. CHDIR "execute-run-test"
3. Create a file "one.bas" in this directory:
Print "One"
Execute "RUN " + Chr$(34) + "two.bas" + Chr$(34)

4. Create a file "two.bas" in this directory:
Print "Two"


Now observe the following:



On the CMM2 this would have worked and output:
One
Two


This is because on the CMM2 when you run one program from another the relative path to the new program is "correctly" resolved from the directory containing the running program, whereas on MMB4W it looks like it is resolved from the current working directory.

EDIT: Though for the life of me I can't make head or tail of the CMM2's file opening code, does your keyboard only have the letters i, p & q on it

Best wishes,

Tom
Edited 2022-03-07 21:07 by thwill
Game*Mite, CMM2 Welcome Tape, Creaky old text adventures
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4239
Posted: 10:50am 07 Mar 2022
Copy link to clipboard 
Print this post

  matherp said  
Ouch Mauro controls the overall frame rate but probably not small movements. The gun it probably moving between frames, likewise the eyes


Sorry, that wasn't meant to hurt (neither you neither Mauro), just to say that it is work in progress, and this may not be finished.

Volhout
PicomiteVGA PETSCII ROBOTS
 
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 4040
Posted: 11:14am 07 Mar 2022
Copy link to clipboard 
Print this post

  thwill said  On the CMM2 this would have worked and output:
One
Two


This is because on the CMM2 when you run one program from another the relative path to the new program is "correctly" resolved from the directory containing the running program, whereas on MMB4W it looks like it is resolved from the current working directory.


Ignore me (for the moment), I may be wrong about this as it seems to fail in the same way on the CMM2 ... something else must be in play.

EDIT: It honestly looks like I "made this sh*t up" in MMB4L, very strange. I wonder how/why ... I must have assumed it was the behaviour of the CMM2 and just implemented it. I guess I'm not sleeping enough .

Best wishes,

Tom
Edited 2022-03-07 21:30 by thwill
Game*Mite, CMM2 Welcome Tape, Creaky old text adventures
 
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 4040
Posted: 11:34am 07 Mar 2022
Copy link to clipboard 
Print this post

Back in the land of sanity (I hope), is MM.INFO$(PATH) not implemented ?

Best wishes,

Tom
Game*Mite, CMM2 Welcome Tape, Creaky old text adventures
 
Pluto
Guru

Joined: 09/06/2017
Location: Finland
Posts: 358
Posted: 12:11pm 07 Mar 2022
Copy link to clipboard 
Print this post

MM.INFO$(DIRECTORY) may help??
 
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 4040
Posted: 12:14pm 07 Mar 2022
Copy link to clipboard 
Print this post

  Pluto said  MM.INFO$(DIRECTORY) may help??


I'm afraid not.

MM.INFO$(DIRECTORY) returns the current working directory (like CWD$ but not identical in all circumstances).

MM.INFO$(PATH) retuns the directory containing the currently running program, i.e. the parent of MM.INFO$(CURRENT).

Best wishes,

Tom
Edited 2022-03-07 22:50 by thwill
Game*Mite, CMM2 Welcome Tape, Creaky old text adventures
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 9121
Posted: 01:13pm 07 Mar 2022
Copy link to clipboard 
Print this post

mm.info(current) gives the current program with the full pathname. If I implement mm.info(path) do you want the final "\"?
 
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 4040
Posted: 01:25pm 07 Mar 2022
Copy link to clipboard 
Print this post

  matherp said  mm.info(current) gives the current program with the full pathname. If I implement mm.info(path) do you want the final "\"?


Yes please Peter, because that is what the CMM2 does.

Best wishes,

Tom
Game*Mite, CMM2 Welcome Tape, Creaky old text adventures
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 9121
Posted: 01:48pm 07 Mar 2022
Copy link to clipboard 
Print this post

MMBasic.zip


 
     Page 6 of 30    
Print this page
© JAQ Software 2024