Home
JAQForum Ver 20.06
Log In or Join  
Active Topics
Local Time 12:44 18 Apr 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 : Introducing the Colour Maximite 2

     Page 3 of 25    
Author Message
Grogster

Admin Group

Joined: 31/12/2012
Location: New Zealand
Posts: 9037
Posted: 02:29am 04 May 2020
Copy link to clipboard 
Print this post

Hello all.

As Geoff mentioned, yes, I will be selling into the New Zealand and Australian market, once I have some stock which I am building up slowly now.  I say slowly, as CV19 has had a rather dramatic impact on the availability of some parts and their delivery times.

I will put something up on my website in the next day or so, and people will be able to pre-order/back-order the kit, but on the understanding that I won't be able to supply until all the parts arrive.

New Zealand is in level-3 of our CV19 alerts(4 being the full lockdown, 3 being restricted trading), and international shipping is still prohibited for at least the next week or two - or more, if the virus takes off again.  This is cos to send internationally, you have to do a face-to-face transaction at the counter, and that breaks the 2m separation rules still in effect.

But hopefully, in the next few weeks I will be able to send both within NZ and internationally again.
Smoke makes things work. When the smoke gets out, it stops!
 
flasherror
Senior Member

Joined: 07/01/2019
Location: United States
Posts: 159
Posted: 02:34am 04 May 2020
Copy link to clipboard 
Print this post

  TassyJim said  
Constructive criticism - you gave the answer. That is not the chosen market.

Serial, I2C and SPI are all available on the 40 way connector.
There are plenty of options for controller boards that need more IO.


Understand the market positioning but I feel there is more potential for using this not only for games but for general interfacing. Having some easier connection options for ready made wireless modules would make it easier to attach and more reliable that cables and fiddling around trying to connect.

As an example there are addons for even the old C64 to connect via WiFi these days... and of course the Raspberry Pi boards have built-in WiFi.

Playing devil's advocate, not sure how many people will spend time developing games when there are so many other platforms around these days...

Also, the 40-pin connector orientation looks like Pi I/O boards will stick out vertically on the back of the CM2? Not sure if there is clearance for all boards with the VGA connector etc right next to the I/O connector. (It's hard to tell with the overhead photo). If so then an extension cable might be required between the CM2 and the any Pi boards?

Anyway, maybe these are some ideas for the inevitable CM2+ design  

(I am not trying to take away anything from the achievement here but just giving my 2 cents - still a great little computer)
Edited 2020-05-04 12:40 by flasherror
 
Turbo46

Guru

Joined: 24/12/2017
Location: Australia
Posts: 1587
Posted: 02:39am 04 May 2020
Copy link to clipboard 
Print this post

  Geoffg said  It was not designed to be a process controller

But it would make a good one.

   TassyJim said  There are plenty of options for controller boards that need more IO

I would still like to see a companion interface module that could cater for expanded I/O, RS232, RS485, Joystick and perhaps an area for custom circuitry.

Question: Do you know if Altronics are going to produce a kit.

Bill

PS. Grogster's post came through while I was writing this. I'll keep watching.
Keep safe. Live long and prosper.
 
flasherror
Senior Member

Joined: 07/01/2019
Location: United States
Posts: 159
Posted: 02:45am 04 May 2020
Copy link to clipboard 
Print this post

  Turbo46 said  
  Geoffg said  It was not designed to be a process controller

But it would make a good one.


Agreed.

   Turbo46 said  I would still like to see a companion interface module that could cater for expanded I/O, RS232, RS485, Joystick and perhaps an area for custom circuitry.


How about CM2+ with larger PCB, with space for optional modules I mentioned before plus your expanded I/O idea AND space for a Micromite or Arduino Nano as Slave processor for doing I/O timing sensitive stuff (or just offloading/simplifying CM2 program)?
Edited 2020-05-04 12:47 by flasherror
 
Geoffg

Guru

Joined: 06/06/2011
Location: Australia
Posts: 3165
Posted: 03:08am 04 May 2020
Copy link to clipboard 
Print this post

When you design something like this you must have a vision for it and that was NOT as a process controller.  Maybe in the future - but right now this is designed to be a fun BASIC computer.

Having said that, there is nothing wrong with designing your own PCB incorporating some of these suggestions (but on another thread).

Geoff
Geoff Graham - http://geoffg.net
 
Cyber

Senior Member

Joined: 13/01/2019
Location: Ukraine
Posts: 161
Posted: 03:08am 04 May 2020
Copy link to clipboard 
Print this post

  flasherror said  How about CM2+ with larger PCB, with space for optional modules I mentioned before plus your expanded I/O idea AND space for a Micromite or Arduino Nano as Slave processor for doing I/O timing sensitive stuff (or just offloading/simplifying CM2 program)?

By the way CircuitGizmos already did similar thing to CMM (it's called CGCOLORMAX2).
So CMM2 might receive similar mod.
 
Geoffg

Guru

Joined: 06/06/2011
Location: Australia
Posts: 3165
Posted: 03:13am 04 May 2020
Copy link to clipboard 
Print this post

  Turbo46 said  Do you know if Altronics are going to produce a kit.

No, probably not... they seem to have moved away from kits.

Silicon Chip magazine will definitely offer a kit and, from the sound of it, at a good price.

Geoff
Geoff Graham - http://geoffg.net
 
Cyber

Senior Member

Joined: 13/01/2019
Location: Ukraine
Posts: 161
Posted: 03:14am 04 May 2020
Copy link to clipboard 
Print this post

  TassyJim said  I haven't tried remote firmware updates but it might be possible.
Using STM32CubeProgrammer, you have two options applicable to the CMM2 - USB or UART.

USB is the fastest and requires a Male-Male USB cable connected to the keyboard port on the CMM2.
The other way uses the serial port and is much slower. It is that serial method that 'could' be extended over a serial bridge of some variety.

If it's serial, then it should be possible to update CMM2 firmware using any other MM or uM or any other MCU?
Of course you would need to write special software for this task to send proper commands over serial port.
 
Turbo46

Guru

Joined: 24/12/2017
Location: Australia
Posts: 1587
Posted: 04:15am 04 May 2020
Copy link to clipboard 
Print this post

I had expected that with MMBasic 5 there would be some incompatibility with MMBasic 4.5C for the CMM. I notice that there is a compatibility mode for the CMM2 but will there be a document explaining the changes needed to update a old CMM program to run on the CMM2? A cross reference table or some such?

Please don't take any of my comments as being negative. This is truly magnificent!

Bill
Keep safe. Live long and prosper.
 
Geoffg

Guru

Joined: 06/06/2011
Location: Australia
Posts: 3165
Posted: 04:39am 04 May 2020
Copy link to clipboard 
Print this post

There isn't one at this time but that is a great idea.  Watch this space.

Geoff
Geoff Graham - http://geoffg.net
 
TassyJim

Guru

Joined: 07/08/2011
Location: Australia
Posts: 5877
Posted: 05:02am 04 May 2020
Copy link to clipboard 
Print this post

  Turbo46 said  I had expected that with MMBasic 5 there would be some incompatibility with MMBasic 4.5C for the CMM. I notice that there is a compatibility mode for the CMM2 but will there be a document explaining the changes needed to update a old CMM program to run on the CMM2? A cross reference table or some such?

Please don't take any of my comments as being negative. This is truly magnificent!

Bill

The legacy mode is for graphics

OPTION LEGACY ON/OFF
This will turn on or off compatibility mode with the original Colour
Maximite. Commands such as LINE, CIRCLE and PIXEL work as
they originally did and all drawing commands will accept colours in the
range of 0 to 7. Notes:
.Keywords such as RED, BLUE, etc are not implemented so they
should be defined as constants if needed.
.The VGA display mode is not changed with this option so it
should be specifically set to MODE 4 for emulating the 480x432
resolution of the original Colour Maximite or MODE 5 for
emulating the 240x216 resolution.

For all other code, it is a case of try and see. It is probably more compatible that the micromites - provided you haven't done any strange peeking and poking in places you shouldn't.
WHILE-WEND has finally been dropped and there might be others I can't think of.

Jim
VK7JH
MMedit   MMBasic Help
 
Chopperp

Guru

Joined: 03/01/2018
Location: Australia
Posts: 1032
Posted: 06:31am 04 May 2020
Copy link to clipboard 
Print this post

Re SD Card Operation

From the manual:- "All programs reside on the SD card so it must be present for most operations."

Can the SD card be removed when running (assuming no file access at the time) to retrieve data from it? I assume it can be.

Brian
ChopperP
 
Geoffg

Guru

Joined: 06/06/2011
Location: Australia
Posts: 3165
Posted: 07:03am 04 May 2020
Copy link to clipboard 
Print this post

Yes it can, even when the program is running.

The Colour Maximite 2 relies quite heavily on the SD card.  For example, when you edit a program it will reside on the SD card and you will also run the program from there.  This is different from the original Colour Maximite where you did not need an SD card as programs were edited and run from the computer’s RAM memory.  The Colour Maximite 2 does not do this because when a program is loaded for running the firmware will perform a lot of pre processing to optimise the program for speed.  This includes inserting any include files, stripping out comments and spaces and other speed orientated changes.  

As a result the program stored in program memory is not easy for a human to read, which is why you only ever edit or list the SD card copy of the program.  As well as a considerable improvement in speed another benefit of this arrangement is that you do not have to be sparing with the use of comments in order to fit the program into memory.  On the Colour Maximite 2 comments in the program will not use up space in the program memory so you can be as lavish with them as you wish.

The compressed program is stored in flash memory but that is transparent to the user.  However it does mean that after the program has started running you can swap out the SD card with another containing the data required by the program and, if the computer restarts (perhaps due to a power failure), the program can automatically restart running regardless of what has happened with the SD card.

Geoff
Edited 2020-05-04 17:05 by Geoffg
Geoff Graham - http://geoffg.net
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 8565
Posted: 07:20am 04 May 2020
Copy link to clipboard 
Print this post

Lots of comments about I/O expansion.

The way I would see this happening is to run a 40-pin cable to a second PCB with whatever is required on that PCB.

A generic I/O PCB could be envisaged with the same footprint as the CMM2. This would allow two boxes to be stacked one on top of the other  with just a short ribbon cable connecting. This PCB could have Click ports, ESP header etc.

This is a much better approach than trying to make the main motherboard generic as it could never satisfy everyone and would end up large, expensive,  and with many redundant capabilities for any individual user.
 
Chopperp

Guru

Joined: 03/01/2018
Location: Australia
Posts: 1032
Posted: 07:24am 04 May 2020
Copy link to clipboard 
Print this post

Thanks for that Geoff.

So there would be no need to "Crunch" the program before loading. (As can be done with MMEDit etc)

Brian
ChopperP
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 8565
Posted: 07:30am 04 May 2020
Copy link to clipboard 
Print this post

Definitely no need to crunch before loading. The CMM2 does that transparently when you type RUN.

There is also an optimisation of variable handling. The CMM2 matches variable names 4 bytes at a time so there is no advantage to single letter variables. Use expressive variable names for better readability
 
panky

Guru

Joined: 02/10/2012
Location: Australia
Posts: 1094
Posted: 07:32am 04 May 2020
Copy link to clipboard 
Print this post

@Geoff,

Fantastic job Peter and Geoff (and others) - can't wait to get my hands on mine ordered from CG  

@matherp, Peter, even with the I/O expansion
  Quote  Lots of comments about I/O expansion.
there still seems to be a lot of the pins on the Waveshare CoreH743 module that are not used. Are these undefined in MMBasic?

Thanks, Doug.
... almost all of the Maximites, the MicromMites, the MM Extremes, the ArmMites, the PicoMite and loving it!
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 8565
Posted: 07:42am 04 May 2020
Copy link to clipboard 
Print this post

There are surprising few unused pins once you take into account the SDRAM chip and the I/O needed for the R2R DACs + allocated pins used by the STM32 for display control that aren't needed for VGA.

In any event it isn't possible to route out any more pins and maintain the footprint of the PCB as a double sided design and there is nowhere to route them to as the front and back panels are full.

There is also no logic to pin naming that could be applied to these pins from MMBasic. For these reasons these will not be made available through MMBasic.

You can peek and poke the I/O registers in the chip but that is a case of user beware!
Edited 2020-05-04 17:43 by matherp
 
Turbo46

Guru

Joined: 24/12/2017
Location: Australia
Posts: 1587
Posted: 08:00am 04 May 2020
Copy link to clipboard 
Print this post

  matherp said  A generic I/O PCB could be envisaged with the same footprint as the CMM2. This would allow two boxes to be stacked one on top of the other  with just a short ribbon cable connecting.

Exactly what I imagined and described in the original "Seeking Games Programmers" post. I think it would make a great project and magazine article.

Bill
Keep safe. Live long and prosper.
 
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 3828
Posted: 11:06am 04 May 2020
Copy link to clipboard 
Print this post

Bounces up and down like an over-excited child

     
Game*Mite, CMM2 Welcome Tape, Creaky old text adventures
 
     Page 3 of 25    
Print this page
© JAQ Software 2024