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 7 of 30 | |||||
Author | Message | ||||
thwill Guru Joined: 16/09/2019 Location: United KingdomPosts: 4041 |
Sorry to drag this thread off topic again, but I owe Bill an answer. Actually in the latest iteration the data pointers are saved/restored to a stack (not sure how many elements) so multiple levels are now supported. Thank you Peter ... I still think my PEEK/POKE solution provides more flexibility with less code . Labelling every line of DATA (or even every piece) and being rigorous about the use of RESTORE because a 3rd party subroutine may or may not mess with the data pointer is a 'song and dance' in my book, even if it is possible. Note also that either MMBasic is storing a map of labels in which case there is a limit to the number of labels any program can contain or a label lookup is a linear search through the program which is slow. I think the CMM2 and MMB4W are both the former case. That doesn't suprise me Bill. BASIC isn't really suited for the bit/byte twiddling required to implement encryption algorithms so that code is basically just a mess of MEMORY SET|COPY, PEEK and POKE commands. This is one of those cases where code written in C would be clearer than code written in BASIC. Anyway, other than it being the code that revealed the problem with DATA it doesn't really add to the discussion. Best wishes, Tom Edited 2022-03-08 00:05 by thwill Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
Plasmamac Guru Joined: 31/01/2019 Location: GermanyPosts: 554 |
@ matherp I wonder what dll are needed to runing mmb4w? I testet up to 30 win pc in the last time without problems but Frank N Furter shows a Problem. So iam curious , can you sort it out ? Plasma |
||||
matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 9122 |
winmm..dll user32.dll gdi32.dll opengl32.dll The problem one based on his report is winmm.dll. All the others were needed to run versions he said worked |
||||
Frank N. Furter Guru Joined: 28/05/2012 Location: GermanyPosts: 830 |
Can anyone send me these DLL's? THANKS!!! Frank |
||||
thwill Guru Joined: 16/09/2019 Location: United KingdomPosts: 4041 |
Starting to look pretty good with b4: Notes: 1. I'm currently focusing on getting them all to run without crapping out ... which is what tst_mminfo is currently doing due to no OPTION SEARCH PATH being implemented. 2. Some of the FAILures are almost certainly false positives. 3. This is NOT a comprehensive set of unit-tests. Two for today before I do some "real work": 1. Is OPTION SEARCH PATH not supported in MMB4W ? Will it be ? 2. Try this: > files "a\b\c" Not found: C:\home-thwill\git_sandbox\github\a\b\\c Note the double \\ before c. Best wishes, Tom Edited 2022-03-08 20:18 by thwill Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 9122 |
Just an output formatting error, search is correct - will fix Wasn't going to given there is a full OS available to MMbasic |
||||
thwill Guru Joined: 16/09/2019 Location: United KingdomPosts: 4041 |
Hi Peter, 1. Wasn't going to given there is a full OS available to MMbasic Your rodeo Peter. I think it should be implemented and I recently did so for MMB4L. As an argument if it were implemented I could then setup MMB4W so I could just type "*sptest" wherever I was in the file-system to run my unit-test suite recursively from that point. YMMV, but if you do implement it then please also implement the corresponding MM.INFO$(OPTION SEARCH PATH). 2. You appear to have implemented OPTION CONSOLE BOTH|CONSOLE|SERIAL without telling us exactly what it is implemented to do - or did I miss that post. 3. Here's a bug for you, fairly sure we saw it on either the CMM2 or PicoMite previously: > list "timer-bug.bas" Option Base 0 Option Default None Option Explicit On Option Console Both Dim old_timer% = Timer Dim i% For i% = 0 To 200 Step 10 Timer = i% Print Timer, i% Next > run "timer-bug.bas" 0.0005 0 0.0009 10 0.0006 20 0.0005 30 0.0005 40 0.0005 50 0.0005 60 0.0009 70 0.0006 80 0.0005 90 0.0005 100 0.0005 110 0.0005 120 0.0006 130 0.0006 140 0.0005 150 Best wishes, Tom Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 9122 |
I did what you suggested What is the bug? The timings will depend on other activity. The bug on CMM2 was that it wasn't monotonically increasing How many file commands have you implmented the search path for? just RUN? |
||||
thwill Guru Joined: 16/09/2019 Location: United KingdomPosts: 4041 |
I did what you suggested Thanks, much appreciated, another thing I need to find time to test - too many balls in the air at the moment so I'm concentrating my efforts on the unit-tests as issues they reveal are the easiest to reproduce and report. For reporting bugs I *think* it would be helpful if OPTION CONSOLE BOTH was available outside a program (I notice it seems to persist when a program sets it and then exits). However YYMV. What is the bug? The timings will depend on other activity. The bug on CMM2 was that it wasn't monotonically increasing On line 9 the TIMER is set, on line 10 the TIMER is printed. It appears the TIMER has not actually been set as there is no relationship between the two numbers . RUN and LOAD. I know MMB4W doesn't have the latter and I'm not advocating it one way or the other. Best wishes, Tom Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 9122 |
Sorry missed the point of the test Here is the bug int64_t offset= getinteger(++cmdline) / 1000 * frequency; and here is the fix int64_t offset= getinteger(++cmdline) * frequency / 1000; Yes that is OK, also OPTION CONSOLE SCREEN, but not OPTION CONSOLE SERIAL |
||||
thwill Guru Joined: 16/09/2019 Location: United KingdomPosts: 4041 |
Agreed, you'd be a bit stuck if OPTION CONSOLE SERIAL persisted ... I assume you're already clearing that when a program exits ... ideally to OPTION CONSOLE BOTH as that is the nearest compatible but YMMV. Best wishes, Tom Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 9122 |
V5.07.03b5 MMBasic.zip Fixes bug in TIMER= Implements OPTION SEARCH PATH Implements MM.INFO(OPTION SEARCH PATH) Search path is used if file not found in default path in RUN and LOAD OPTION DEFAULT PATH and OPTION SEARCH PATH now both accept relative paths to the current working directory but will save a full pathname |
||||
thwill Guru Joined: 16/09/2019 Location: United KingdomPosts: 4041 |
Thank you Peter. More feedback from me tomorrow morning. Enjoy the rest of your day, Tom Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
Plasmamac Guru Joined: 31/01/2019 Location: GermanyPosts: 554 |
@Frank n.Furter dll.zip my win 10 64 bit dll files / from system32 folder gtx Edited 2022-03-09 01:32 by Plasmamac Plasma |
||||
Michal Senior Member Joined: 02/02/2022 Location: PolandPosts: 123 |
dll.zip my win 10 64 bit dll files / from system32 folder gtx MMBasic for Widdows is a 32-bit application. Michal |
||||
Frank N. Furter Guru Joined: 28/05/2012 Location: GermanyPosts: 830 |
@Plasmamac: Thank you very much - I copied your files to my MMBasic folder - unfortunately no change... Frank |
||||
matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 9122 |
You need to copy them to Windows/system32 What CPU do you have? Edited 2022-03-09 02:31 by matherp |
||||
Michal Senior Member Joined: 02/02/2022 Location: PolandPosts: 123 |
The 32-bit libraries(in Windows 64bit) are located in Windows\SysWOW64. Michal Edited 2022-03-09 03:26 by Michal |
||||
Plasmamac Guru Joined: 31/01/2019 Location: GermanyPosts: 554 |
Plasma |
||||
Rado Regular Member Joined: 27/11/2020 Location: CroatiaPosts: 59 |
Just got some time to play with this (03.b5), and it seems that there's something with fonts: in command line, as soon as I enter something invalid the font reverses to default: |
||||
Page 7 of 30 |
Print this page |