Home
JAQForum Ver 20.06
Log In or Join  
Active Topics
Local Time 09:23 29 Mar 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 : CMM2: V5.06.00b3: Limited HELP

Author Message
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 8516
Posted: 11:38am 22 Nov 2020
Copy link to clipboard 
Print this post

V5.06.00b3

http://geoffg.net/Downloads/Maximite/CMM2_Beta.zip

The version fixes a bug in drawing commands when an expression for one of the parameters is > 32 characters

In addition it includes a limited help capability

HELP [text]

e.g. HELP DO

This displays up to 3 lines of help that match the "text". text isn't quoted.
If text isn't specified you can type characters into the help command and the display will show up to three lines than match

You can use up arrow and down arrow  to move through matches (e.g. for things like MM.INFO)

Exit the help command with either ESC or F12

In addition the command can be called from within the editor using F12. In this case the HELP command is called with any characters under the cursor up to the next character that can't form part of a command or function name. So if the cursor is positioned on the 'D' of a DIM command the help will immediately show the syntax for DIM

The text in the help facility is that supplied by TassyJim (many thanks) but I will accept sensible improvements within the limit of one line per entry (Max 100 characters in MODE 1)

The intention of the facility is just to provide a quick check on command syntax and will never replace the written manual. In the picture I pressed F12 on the MATH command and then added the ' m' in the help dialogue to filter the many 'MATH' results



Edited 2020-11-22 21:43 by matherp
 
elk1984

Senior Member

Joined: 11/07/2020
Location: United Kingdom
Posts: 227
Posted: 12:32pm 22 Nov 2020
Copy link to clipboard 
Print this post

Thanks for this addition, really useful.  

Would it be possible to extend the editor help to paste a definition in at the active cursor position?  Not so much lazy as avoidance of fat fingers when transcribing.
 
vegipete

Guru

Joined: 29/01/2013
Location: Canada
Posts: 1081
Posted: 08:16pm 22 Nov 2020
Copy link to clipboard 
Print this post

What fun. LunarLander has a subroutine named 'help'. Easy to fix.

=====================
More fun : Rocks in Space (my asteroids clone) is very broken, I don't know why yet.

First problem:
"math set -1, dstcl()" doesn't work with a negative value.

Edit: found another:
play modfile "RISsound.mod" locks up my CMM2 - needs the reset button to get it back.
Note: this mod file is 'silent' -  there is no actual pattern to play. "play modsample" was used for individual sound effects. Nothing strange happens if I select "RISsound.mod" from the File Manager - just the expected silence. This worked fine before.
Edited 2020-11-23 06:36 by vegipete
Visit Vegipete's *Mite Library for cool programs.
 
Sasquatch

Senior Member

Joined: 08/05/2020
Location: United States
Posts: 296
Posted: 08:40pm 22 Nov 2020
Copy link to clipboard 
Print this post

Page OR_Pixels, Page AND_Pixels, Page XOR_Pixels are not working as before in 12bit and 16bit graphics modes.  The source pages are changed in some cases.

Try this test program:

'Test program creates overlaping squares on Page 1 and Page 2
'And then does logic operation to display combined image on page 0
'Then copies Page1, Page2 to Page0 after key press


'Mode 1,8  'Mode 1,8 works ok

'Mode 1,12 'Mode 1,12 Xor_Pixels looks like OR_Pixels? And Page 1 gets copy of Page 2 contents
         'And_Pixels Page 1 gets cleared?
         'Or_Pixels Page 1 gets copy of Page 2?

Mode 1,16 'Mode 1,16 Xor_Pixels Page 1 gets copy of Page 2?
         'And_Pixels Page 1 gets cleared?
         'Or_Pixels Page 1 gets copy of Page 2?


Page Write 1
CLS
Box 200,200,200,200,,,RGB(White)
Page Write 2
CLS
Box 300,300,200,200,,,RGB(White)
Page Write 0
CLS

Page Xor_Pixels 1,2,0
'Page And_Pixels 1,2,0
'Page Or_Pixels 1,2,0


Do While Inkey$ = "" : Loop

Page Copy 1 TO 0

Do While Inkey$ = "" : Loop

Page Copy 2 TO 0

Do While Inkey$ = "" : Loop


-Carl
 
Sasquatch

Senior Member

Joined: 08/05/2020
Location: United States
Posts: 296
Posted: 10:08pm 22 Nov 2020
Copy link to clipboard 
Print this post

  vegipete said  
=====================
More fun : Rocks in Space (my asteroids clone) is very broken, I don't know why yet.

First problem:
"math set -1, dstcl()" doesn't work with a negative value.




"math set 0-1, dstcl()"

Seems to work
-Carl
 
Sasquatch

Senior Member

Joined: 08/05/2020
Location: United States
Posts: 296
Posted: 11:25pm 22 Nov 2020
Copy link to clipboard 
Print this post

Here is a screen-shot of vegipete's 3D Maze demo.  As you can see, there are artifacts from the prevously run program (Gauntlet).  This seems different than before? V5.06.00b3

Adding a CLS before loading the graphics to Page 2 fixes the problem.  I suppose it's a philosophical question about which Pages should be cleared when a program is run or a NEW command issued?






Edited 2020-11-23 09:26 by Sasquatch
-Carl
 
vegipete

Guru

Joined: 29/01/2013
Location: Canada
Posts: 1081
Posted: 12:08am 23 Nov 2020
Copy link to clipboard 
Print this post

I thought I fixed that screen corruption long ago. Perhaps the fix is in my new version, with chests and ladders ... which I haven't released.

  Sasquatch said  I suppose it's a philosophical question about which Pages should be cleared when a program is run or a NEW command issued?

No philosophy required. The programmer is responsible for initializing all data structures. Period. I didn't in my 3D maze program. Bad me.

Just like the programmer is responsible for sanitizing all input and handling buffer under and overflow properly.
Visit Vegipete's *Mite Library for cool programs.
 
Sasquatch

Senior Member

Joined: 08/05/2020
Location: United States
Posts: 296
Posted: 02:40am 23 Nov 2020
Copy link to clipboard 
Print this post

  vegipete said  I thought I fixed that screen corruption long ago. Perhaps the fix is in my new version, with chests and ladders ... which I haven't released.

  Sasquatch said  I suppose it's a philosophical question about which Pages should be cleared when a program is run or a NEW command issued?

No philosophy required. The programmer is responsible for initializing all data structures. Period. I didn't in my 3D maze program. Bad me.

Just like the programmer is responsible for sanitizing all input and handling buffer under and overflow properly.


While I can agree that initializing everything to a known state within a program is good practice, I wouldn't anticipate artifacts from a previously run program in an interpreted BASIC environment!
-Carl
 
vegipete

Guru

Joined: 29/01/2013
Location: Canada
Posts: 1081
Posted: 03:48am 23 Nov 2020
Copy link to clipboard 
Print this post

I wonder if this particular case has something to do with transparency. I'll have to go look how I originally made the graphics images
Visit Vegipete's *Mite Library for cool programs.
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 8516
Posted: 08:28am 23 Nov 2020
Copy link to clipboard 
Print this post

  Quote  "math set -1, dstcl()" doesn't work with a negative value.


I went one step too far in removing unnecessary spaces when I do the load. Forgot about unary operators - will fix

  Quote  play modfile "RISsound.mod" locks up my CMM2 - needs the reset button to get it back.


Please post file or link to program

  Quote  As you can see, there are artifacts from the previously run program (Gauntlet).  This seems different than before? V5.06.00b3


Only page 0 is cleared with a RUN same as before but the memory layout is different so you are seeing a different bit of uncleared memory - will look at clearing all video memory when RUN

  Quote  Page OR_Pixels, Page AND_Pixels, Page XOR_Pixels are not working as before in 12bit and 16bit graphics modes.  


Typo in code - will fix

Other known issue is that PAGE commands AND, OR, XOR, and STITCH won't work properly in modes 3,5,6,7,12, and 13 if one of the pages is 0 (all colours) or 1 (just 12-bit). Also on the list to fix
 
mkopack73
Senior Member

Joined: 03/07/2020
Location: United States
Posts: 261
Posted: 01:02pm 23 Nov 2020
Copy link to clipboard 
Print this post

  elk1984 said  Thanks for this addition, really useful.  

Would it be possible to extend the editor help to paste a definition in at the active cursor position?  Not so much lazy as avoidance of fat fingers when transcribing.


Agreed this would be extremely helpful.  Keep us from screwing up the parameters, almost as good as auto completion.
 
RetroJoe

Senior Member

Joined: 06/08/2020
Location: Canada
Posts: 290
Posted: 01:11pm 23 Nov 2020
Copy link to clipboard 
Print this post

So, how do you guys envision this working? You type a valid command or function name  into the editor, press a certain key, and the editor pastes the parameter signature to the right of the cursor?
Edited 2020-11-23 23:11 by RetroJoe
Enjoy Every Sandwich / Joe P.
 
elk1984

Senior Member

Joined: 11/07/2020
Location: United Kingdom
Posts: 227
Posted: 07:29pm 23 Nov 2020
Copy link to clipboard 
Print this post

  RetroJoe said  So, how do you guys envision this working? You type a valid command or function name  into the editor, press a certain key, and the editor pastes the parameter signature to the right of the cursor?


Basically as Peter has implemented today in 5.06b4.
 
Print this page


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

© JAQ Software 2024