Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 05:40 02 Aug 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 : CMM2: Observations on using TURTLE graphics with a 6 year old

Author Message
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 4311
Posted: 10:46am 30 Nov 2021
Copy link to clipboard 
Print this post

And now for something completely different ...

My 6 year old had been playing with Pro-Bots at school yesterday so I decided to try and show her what the CMM2 could do with its TURTLE command. The following are some observations/suggestions that I believe would improve the experience. I provide them purely for information and with no particular expectation that other than the bug they will be addressed.

1. There is a BUG, try typing this:

     TURTLE RESET
     TURTLE FORWARD 100
     TURTLE
     TURTLE FORWARD 100

   The syntax error caused by line 3 causes line 4 to do nothing.

2. TURTLE DRAW TURTLE should, rather than just blitting a turtle to the screen be replaced by a toggle which controls whether the turtle (sprite) is shown at the current point or not. For bonus points make the sprite configurable, so it could, for example be a car. The "standard" LOGO commands would be "HIDETURTLE" / "HT" and "SHOWTURTLE" / "ST".

3. For "compatibility" with other LOGOs add support for the following aliases for the sub-commands:

   - "RIGHT" / "RT" as aliases for "TURN RIGHT"
   - "LEFT" / "LT" as aliases for "TURN LEFT"
   - "PENUP" / "PU" as aliases for "PEN UP"
   - "PENDOWN" / "PD" as aliases for "PEN DOWN"
   - "CIRCLE" as an alias for "DRAW CIRCLE"
   - "CLEARSCREEN" / "CS" as aliases for "RESET"
   - "SETXY" as an alias for "MOVE"
   - "SETHEADING" / "SETH" as aliases for "HEADING"

4. Add the following TURTLE sub-commands:

   - HOME
   - SETPENSIZE w
   - SETX x
   - SETY y
   - there are probably others, but where do you stop ?

Alas the biggest issue for a beginner, and I'm not certain how addressable it is without actually implementing a proper LOGO (in MMBasic) is that typing commands at the interactive MMBasic will ultimately scroll the VGA screen (though the turtle location stays where it is) and thus makes nonsense of whatever you are trying to draw with the TURTLE command in interactive mode.

Best wishes,

Tom
MMBasic for Linux, Game*Mite, CMM2 Welcome Tape, Creaky old text adventures
 
jirsoft

Guru

Joined: 18/09/2020
Location: Czech Republic
Posts: 533
Posted: 10:59am 30 Nov 2021
Copy link to clipboard 
Print this post

Hi Tom,
I think, it can be solved with user program, not need changes in MMBasic. I can try to visualize my ideas for solution of your suggestions in simple app and put it to CMM2.fun...
Jiri
Napoleon Commander and SimplEd for CMM2 (GitHub),  CMM2.fun
 
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 4311
Posted: 11:24am 30 Nov 2021
Copy link to clipboard 
Print this post

Hi Jiri,

Sure it's "easy" to write a user-program version of LOGO and you don't need to do so for me. My observations were based on the fact that if the CMM2/MMBasic is going to have a Turtle Graphics command then it would be nice if it had better adherance to "standard" LOGO.

I think you could make a very good argument that the CMM2 shouldn't have the TURTLE command at all, but that isn't where we are, i.e. it does, and there are several Welcome Tape examples that depend upon it.

Best wishes,

Tom
MMBasic for Linux, Game*Mite, CMM2 Welcome Tape, Creaky old text adventures
 
jirsoft

Guru

Joined: 18/09/2020
Location: Czech Republic
Posts: 533
Posted: 12:01pm 30 Nov 2021
Copy link to clipboard 
Print this post

Yes Tom,
you are right, but when already TURTLE commands are included, so user program can use them and will be much easier to write. And the idea wasn't to do it just for you, but maybe give the easier and better program experience mainly to children as yours one...

I will for sure not write LOGO in MMBasic, but more make more user friendly possibility to play with existing commands.

Have a smooth day
Edited 2021-11-30 22:06 by jirsoft
Jiri
Napoleon Commander and SimplEd for CMM2 (GitHub),  CMM2.fun
 
Print this page


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