![]() |
Forum Index : Microcontroller and PC projects : Introducing the Colour Maximite 2
![]() ![]() ![]() ![]() |
|||||
Author | Message | ||||
Grogster![]() Admin Group ![]() Joined: 31/12/2012 Location: New ZealandPosts: 9493 |
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 StatesPosts: 159 |
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: AustraliaPosts: 1636 |
But it would make a good one. 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 StatesPosts: 159 |
Agreed. 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: AustraliaPosts: 3271 |
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: UkrainePosts: 161 |
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: AustraliaPosts: 3271 |
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: UkrainePosts: 161 |
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: AustraliaPosts: 1636 |
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: AustraliaPosts: 3271 |
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: AustraliaPosts: 6221 |
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 |
||||
Chopperp![]() Guru ![]() Joined: 03/01/2018 Location: AustraliaPosts: 1090 |
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: AustraliaPosts: 3271 |
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 KingdomPosts: 10070 |
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: AustraliaPosts: 1090 |
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 KingdomPosts: 10070 |
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: AustraliaPosts: 1111 |
@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 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 KingdomPosts: 10070 |
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: AustraliaPosts: 1636 |
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 KingdomPosts: 4251 |
Bounces up and down like an over-excited child ![]() ![]() ![]() ![]() MMBasic for Linux, Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
![]() ![]() ![]() ![]() |
![]() |
![]() |
The Back Shed's forum code is written, and hosted, in Australia. | © JAQ Software 2025 |