Home
JAQForum Ver 20.06
Log In or Join  
Active Topics
Local Time 17:42 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 : Source Code Archive for CMM2?

     Page 2 of 3    
Author Message
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 3807
Posted: 01:11pm 23 Jul 2020
Copy link to clipboard 
Print this post

  mkopack73 said  Personally, I want control over stuff I write. I don’t mind others copying it and using it - the whole reason I post it and make it public is for others to be able to learn and build Off what I’ve done. But I also don’t want somebody else coming in and modifying my code out from under me and checking it back in.   It’s one thing if we are collaborating on a project, it’s another if it’s mine and somebody does that to me.


I absolutely agree, and it's why my Z-MIM and MMBasic Transpiler code will stay in their own repositories (but with a link from FotS or a new MMBasic Library git repo). However I may also write shorter pieces or want to share generic/reusable parts of my projects such as my "map" and "set" implementations which might make sense in a central shared space.

  mkopack73 said  1) authors can upload code (either as .bas or .zip for larger multi-file projects). We can assign tags to help searching. And can include short descriptions that help downloaded know what they are getting. Maybe even a screen shot... uploads are date/time/version stamped in some way.
2) people can search for stuff to download.
3) supports versioning of the uploaded stuff where only the original author can upload a new version. And the system keeps track of the versions. If somebody else downloads the files, makes and change and uploads it’s a totally different upload, not a new version of the original project.


Sounds like "motherhood and apple pie" but unless someone is aware of an existing service providing all that and hosted for free I don't see it happening for our little community. Something similar could be achieved by having a github repo with disciplined gatekeepers to help keep it organised, or alternatively with disciplined use of the existing FotS (foregoing the versioning and ability to search all the source-code that github would provide). Incidentally is FotS also provided by Glenn / JAQ Software ?

  Quote  Personally I have no problem with using GIt but  with the cmm2 not having network support  any of these  options are going to require people to play the SD card swap Game both to download and upload code (which I’m finding to be a pain).


That is indeed a nuisance.

If you have a Windows box that you are prepared to hook up via the USB cable then it may be that Jim's MMEdit can assist with that otherwise for the moment you are restricted to the archaic wonders of XMODEM or SD card juggling. It must be possible to write a utility for doing ftp'like file transfer over the serial link with a bit more user-friendliness than XMODEM, but for the moment that is left as an exercise for the reader.

Best wishes,

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

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 3807
Posted: 01:14pm 23 Jul 2020
Copy link to clipboard 
Print this post

  mkopack73 said  (Currently I have my git repo cloned into a folder on my windows machine that I copy back/forth over the address card which is error prone).


I'm going to leave the rest of your question to somebody else, but why not clone your git repo to your SD card, that's what I do and would save you a step wouldn't it?

Regards,

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

Joined: 30/06/2020
Location: Australia
Posts: 341
Posted: 02:02pm 23 Jul 2020
Copy link to clipboard 
Print this post

  CaptainBoing said  New Namespace for the CMM2 has been created. Fill your boots!


I created an account on http://fruitoftheshed.com

I tried creating a new page in the new namespace but it said Access Denied.

I could click the same create page in another namespace without getting the error, so I don't think it's because my account's brand new.

Also I can't see an edit button on the pages.

  thwill said  Hi folks,

I've not even written this post yet and I'm already regretting it.

OK, the Captain setup a CMM2 area on Fruit of the Shed and code is still not being posted there, is this because:

   - we can't be bothered ?
   - it's too hard ? I find the organisation a bit wierd myself and I think that has more to do with the idiosyncrasies of the wiki software in use than anything the administrators have done.
   - a wiki with attachments isn't a great way to keep source-code ?



I just tried to create an account and either edit a page or create a new one - It was too hard/impossible for me so far.

You don't have to keep the code in attachments, for example in http://fruitoftheshed.com/MMBasic.KEYBOARD-BAS-part-of-the-original-MMBasic-library.ashx the code is visible on the page.
...

Looking again, in one of the the non-CMM2 pages, http://fruitoftheshed.com/MMBasic.Invaders-part-of-the-original-MMBasic-library.ashx I do see an edit button.
But it's missing in http://fruitoftheshed.com/MMBasic.Default.aspx and in http://fruitoftheshed.com/Colour%20MaxiMite%202%20(CMM2).Default.aspx
Edited 2020-07-24 00:03 by capsikin
 
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 3807
Posted: 02:08pm 23 Jul 2020
Copy link to clipboard 
Print this post

  capsikin said  ... I could click the same create page in another namespace without getting the error, so I don't think it's because my account's brand new ...


No doubt The Captain or one of the other long-time denizens will be able to help with these teething troubles. I imagine a new user to github would have an equivalent set of frustrations ... if not worse.

  Quote  You don't have to keep the code in attachments, for example in http://fruitoftheshed.com/MMBasic.KEYBOARD-BAS-part-of-the-original-MMBasic-library.ashx the code is visible on the page.


That's fine if it's a single .bas file, but not if there are also multiple .inc files and a bunch of assets (graphics, sound, etc. files)

Regards,

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

Guru

Joined: 24/12/2017
Location: Australia
Posts: 1584
Posted: 03:07pm 23 Jul 2020
Copy link to clipboard 
Print this post

If you haven't found it yet there is tutorial link on the bottom of the main page (root). It can't be that hard - I've done it.

You are right about the age of some of the code. Some of it goes back to the original mono Maximite, long before this denizen started lurking. MMBasic has evolved an awful lot since then. Some of them won't work without updating.

I'm happy to share stuff I write, if Geoff and Peter didn't we wouldn't have the 'mites at all.

Even though it's supposed to be a wiki I am not comfortable modifying other people's code.

Bill

Edit: you can have multiple listings on the page for the .inc files or add them as attachments.
Edited 2020-07-24 01:13 by Turbo46
Keep safe. Live long and prosper.
 
mkopack73
Senior Member

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

  thwill said  
  mkopack73 said  (Currently I have my git repo cloned into a folder on my windows machine that I copy back/forth over the address card which is error prone).


I'm going to leave the rest of your question to somebody else, but why not clone your git repo to your SD card, that's what I do and would save you a step wouldn't it?

Regards,

Tom


Yeah I should... Just haven't gotten around to it yet.. Even then it's a pain swapping the card back and forth...

I was looking at trying to use one of those WiFiSD cards, but the one I picked up works fine in my Prusa 3D printer (just shows up as a network shared drive that I can drag/drop files into from Windows across the network, and to the prusa it is just an SD card), when I try it in the CMM2 (or any other SD device I've tried) it never establishes the Wifi connection to the base..  This would be the ideal situation if I could get it to work... Open to other suggestions that would be similar in capability...
 
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 3807
Posted: 03:29pm 23 Jul 2020
Copy link to clipboard 
Print this post

  mkopack73 said  ... when I try it in the CMM2 (or any other SD device I've tried) it never establishes the Wifi connection to the base..  This would be the ideal situation if I could get it to work...


That's a damn shame, I've been crossing my fingers that you'd get that to work before I invested in one myself.

Regards,

Tom
Game*Mite, CMM2 Welcome Tape, Creaky old text adventures
 
jeff510
Newbie

Joined: 19/07/2020
Location: United States
Posts: 13
Posted: 03:37pm 23 Jul 2020
Copy link to clipboard 
Print this post

I'm not sure how to post to thefruitoftheshed.  I tried reading the tutorial.  Am I supposed to create a new page?  If I'm just supposed to upload to file management, which folder?

Edit: Well I'm certainly not supposed to create a new page, because access is denied.
Edited 2020-07-24 02:09 by jeff510
 
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 3807
Posted: 04:03pm 23 Jul 2020
Copy link to clipboard 
Print this post

  jeff510 said  I'm not sure how to post to thefruitoftheshed.  I tried reading the tutorial.  Am I supposed to create a new page?  If I'm just supposed to upload to file management, which folder?


From examining the existing pages I believe you create a new page and then either copy & paste your code to it or add it as an attachment ... I'm not sure what "File Management" is for and unfortunately the help links for "ScrewTurn Wiki" are all borked ...

... because it looks like it became defunct in 2012: https://devio.wordpress.com/2012/06/29/goodbye-screwturn-wiki/

I'm inclined to think that FotS may not be the droids we are looking for

Regards,

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

Joined: 18/11/2011
Location: United Kingdom
Posts: 3641
Posted: 04:14pm 23 Jul 2020
Copy link to clipboard 
Print this post

The page http://www.fruitoftheshed.com/MainPage.ashx mentions File Management if that helps.

Are the SD wifi cards the sort of thing in https://hackaday.com/2013/08/12/hacking-transcend-wifi-sd-cards/ ?

John
 
jeff510
Newbie

Joined: 19/07/2020
Location: United States
Posts: 13
Posted: 04:25pm 23 Jul 2020
Copy link to clipboard 
Print this post

  thwill said  
From examining the existing pages I believe you create a new page and then either copy & paste your code to it or add it as an attachment ... I'm not sure what "File Management" is for and unfortunately the help links for "ScrewTurn Wiki" are all borked ...

... because it looks like it became defunct in 2012


I can't create a new page with the login I made.

I'm new here, so I don't want to overstep my boundaries.

But I'm reading that what's holding the community back from github are essentially proprietary issues.

Perhaps what the community needs is two repositories.  

One would be for personal projects with authorship.  In that repo, others wouldn't be permitted to alter code. (Maybe all that's needed is a web page with a list of user repos, and a simple submission process.)

Another would be for trivial examples of an educational nature, designed for people new to the language.  In this repo, there would be no authorship.  A list of introductory examples could be chosen by the group, and then volunteers could work to develop them.  Volunteer maintainers would be responsible for editing the code to some simple style specs.

This would have an end date, with deadlines. That way we don't have to rely on having consistent maintainer(s) indefinitely.  We can publish the examples in line with the current CMM2 version, and future maintainers can deal with it if they want to port or improve it.
Edited 2020-07-24 02:26 by jeff510
 
mkopack73
Senior Member

Joined: 03/07/2020
Location: United States
Posts: 261
Posted: 06:05pm 23 Jul 2020
Copy link to clipboard 
Print this post

  JohnS said  The page http://www.fruitoftheshed.com/MainPage.ashx mentions File Management if that helps.

Are the SD wifi cards the sort of thing in https://hackaday.com/2013/08/12/hacking-transcend-wifi-sd-cards/ ?

John


Yup...  

The frustrating thing is that they seem to be marketed 100% towards cameras and so all the info is about how to set them up for photo/video sharing.  

I know the toshiba FlashAir cards can be set up to work with any sort of file and set up to basically act as a shared folder, but I don't know if they're out of production or what because they are very hard to find and the prices are insane on them.

I gave this one a try: https://www.amazon.com/BIGTREETECH-Direct-Wireless-Transmission-Cleality/dp/B088SZQF4Y   And if I plug it into my Prusa 3D printer, it works perfectly fine. IF I plug it into the CMM2, the CMM2 can see the SD card data just fine, but the Wifi never connects. If I plug it into my computer same thing.   If I plug in the Usb port (without plugging it into the SD slot) I can get the wifi to connect up but of course then I can't access the files...  So I'm kinda stumped.  Don't know if it needs a connection on a pin that the SD slot doesn't always permit or what.

The EZ-Flash brand stuff seems to only work with image and video files, which is unfortunate because they are low cost and readily available.
 
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 3807
Posted: 06:40pm 23 Jul 2020
Copy link to clipboard 
Print this post

Hi Jeff,

  jeff510 said  I'm new here, so I don't want to overstep my boundaries.


LOL, I'm pretty new here myself. If you overstep the boundaries you can join me on the naughty step.

  jeff510 said  But I'm reading that what's holding the community back from github are essentially proprietary issues.


I think it's more than that:

1) There are only half a dozen people participating in this conversation, though many of the denziens are in the antipodes and thus have an excuse for not been active at the moment.

2) There appear to have only been half a dozen contributors to FotS.

So it's possible there aren't enough people who care.

3) There are denziens who have been here a long time and may be reluctant to change their ways. I have no desire to antagonise them (more than I do already) and I doubt you do either.

4) Many of the denziens do not appear to come from a software development background and "git" is not exactly beginners material.

5) It's also possible that "all of this has happened before" when the original CMM was released, and that there was a rush of new blood to TBS who made a lot of noise and then drifted off to their Spectrum Nexts, Gigatrons and Commander x16s. It would be good to get some historical perspective from the Old Guard.

  Quote  Perhaps what the community needs is two repositories.  

One would be for personal projects with authorship.  In that repo, others wouldn't be permitted to alter code. (Maybe all that's needed is a web page with a list of user repos, and a simple submission process.)


I'm not convinced that first repository is needed at all, you could just have a bunch of links from the top-level README.md of the proposed "educational" repository to other personal repositories and also FotS.

  Quote  Another would be for trivial examples of an educational nature, designed for people new to the language.  In this repo, there would be no authorship.  A list of introductory examples could be chosen by the group, and then volunteers could work to develop them.  Volunteer maintainers would be responsible for editing the code to some simple style specs.

This would have an end date, with deadlines. That way we don't have to rely on having consistent maintainer(s) indefinitely.  We can publish the examples in line with the current CMM2 version, and future maintainers can deal with it if they want to port or improve it.


That sounds good and would I volunteer my services for such an effort.

What would you suggest about other code that people wish to share but were not publishing from their own git repositories or websites, e.g. implementations of basic datastructures and algorithms, simple games, interfaces to hardware, etc.

Regards,

Tom
Game*Mite, CMM2 Welcome Tape, Creaky old text adventures
 
jeff510
Newbie

Joined: 19/07/2020
Location: United States
Posts: 13
Posted: 07:13pm 23 Jul 2020
Copy link to clipboard 
Print this post

  thwill said  
What would you suggest about other code that people wish to share but were not publishing from their own git repositories or websites, e.g. implementations of basic datastructures and algorithms, simple games, interfaces to hardware, etc.


I think we should move the discussion to a new topic, but I think as a general outline it should probably include:
-Keyscan (arrows, arrows w/ wasd, all keys)
-Basic Movement (directional, grid, thrust)
-Sprite Groups
-Collisions
-Turtle Graphics Examples
-Some demos of the color system
-Text animation
-Bullets (single and group)
-And some basic games: a 2-player chase game, asteroids, a shmup (simpler than space invaders), tic-tac-toe, snake.
 
mkopack73
Senior Member

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

  jeff510 said  
  thwill said  
What would you suggest about other code that people wish to share but were not publishing from their own git repositories or websites, e.g. implementations of basic datastructures and algorithms, simple games, interfaces to hardware, etc.


I think we should move the discussion to a new topic, but I think as a general outline it should probably include:
-Keyscan (arrows, arrows w/ wasd, all keys)
-Basic Movement (directional, grid, thrust)
-Sprite Groups
-Collisions
-Turtle Graphics Examples
-Some demos of the color system
-Text animation
-Bullets (single and group)
-And some basic games: a 2-player chase game, asteroids, a shmup (simpler than space invaders), tic-tac-toe, snake.


Add to that list:

* Sound and music
* Joystick interfacing (although I have already put together code for that)
* Best practices (coding style, structure, etc)
* Game loop principles
* using data files (sequential files/random access files) for storing/loading game data on the fly
* CSubs (I would love a good tutorial on this!)

A good (and would seem to be very simple to do) game that could use a lot of this is a Frogger clone... - drawing backgrounds, sprites with scrolling, collision detections, background music + sound effects...joystick+keyboard input routines.


Ideally I'd like to see us put together small code snippets for literally EVERY single command/function in the manual and every variation of the them... That way it would be easy for a newbie to look in the manual, see something like "See lines 35-70  of drawingprimitives.bas for demonstration" and they'd know exactly where to go to see that command being called and used.
 
Turbo46

Guru

Joined: 24/12/2017
Location: Australia
Posts: 1584
Posted: 11:35pm 23 Jul 2020
Copy link to clipboard 
Print this post

I love the enthusiasm shining through.
  Quote  There appear to have only been half a dozen contributors to FotS.

So it's possible there aren't enough people who care.

Or perhaps not care enough. Sadly we have been through it before see this post.

Many people are happy to share some of their work on this site but that last step of adding it to the library seems too hard. There are so many gems hidden away in the bowels of the TBS. I bookmark them for my own reference but don't seem to have the time or enthusiasm to put them in the library (with permission of course).

Yes, the wiki is a bit daunting and maybe the Captain's level of documentation is also a bit intimidating but really all is needed is a copy and paste from the forum page and a bit of a tidy up.

Sadly also, many people visit the site only seeking information or help and when it is given, don't even acknowledge if the help was useful or tell why it wasn't. They are unlikely to contribute to the library.

Bill
Keep safe. Live long and prosper.
 
capsikin
Guru

Joined: 30/06/2020
Location: Australia
Posts: 341
Posted: 12:29am 24 Jul 2020
Copy link to clipboard 
Print this post

I was able to create a new page here:
http://fruitoftheshed.com/MMBasic.Colour-Maximite-2.ashx?NoRedirect=1&NS=MMBasic

It's specifically the CMM2 namespace I can't create pages in.
  jeff510 said  

I can't create a new page with the login I made.


I suspect it's a permission issue with the new namespace.

Can you see if you can edit the page I made, which is on a different one? I don't want to put too much content there if we're supposed to use the new namespace, but a little bit and a link should be fine (it's on the MMBasic namespace, so it's relevant).

(no hurry, hopefully it will get resolved anyway)
Edited 2020-07-24 10:30 by capsikin
 
jeff510
Newbie

Joined: 19/07/2020
Location: United States
Posts: 13
Posted: 04:23am 24 Jul 2020
Copy link to clipboard 
Print this post

  capsikin said  
I suspect it's a permission issue with the new namespace.

Can you see if you can edit the page I made, which is on a different one?


Yes, I can.  I added an unnecessary etc to it.
 
capsikin
Guru

Joined: 30/06/2020
Location: Australia
Posts: 341
Posted: 08:35am 24 Jul 2020
Copy link to clipboard 
Print this post

  jeff510 said  
  capsikin said  
I suspect it's a permission issue with the new namespace.

Can you see if you can edit the page I made, which is on a different one?


Yes, I can.  I added an unnecessary etc to it.


Hmm, now I get the warning when editing the page "Warning: this Page is being edited by another user (Jeff). The Administrators don't allow to save this Page." and indeed I can't save it.

update: I can edit the existing CMM2 page now, just not create new ones.
Edited 2020-07-25 12:21 by capsikin
 
capsikin
Guru

Joined: 30/06/2020
Location: Australia
Posts: 341
Posted: 05:25am 26 Jul 2020
Copy link to clipboard 
Print this post

Making new pages for CMM2 works now.
 
     Page 2 of 3    
Print this page
© JAQ Software 2024