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 : Seeking Games Programmers
Page 2 of 9 | |||||
Author | Message | ||||
Azure Guru Joined: 09/11/2017 Location: AustraliaPosts: 446 |
If you follow the LCD and Touchpad style of setup you could add a joystick setup function and allow the pins to be defined as needed. JOYSTICK B1, B2, B3, B4, P1, P2 JOYSTICK2 B1, B2, B3, B4, P1, P2 Allow only as many buttons as needed to be defined so they are not all taken up from games with minimal buttons. That way the buttons can be set as needed (default would likely come from an example in user manual) and they can be reconfigured easily if other pins need to be used without locking anyone in. Classic arcade games used switches like: Each PLayer(1&2) UP, DOWN, LEFT, RIGHT, ACTION!, ACTION2; Common COIN1, COIN2, START1, START2. Some games had more action buttons and in this case the coin switches may not be needed, unless someone tried to build a real replica with a coin slot from this new platform. |
||||
Geoffg Guru Joined: 06/06/2011 Location: AustraliaPosts: 3165 |
Not really, the encoding and protocol is very complex and tied up with licensing issues. It could be done with an HDMI interface chip like this but that is also complex and adds a 64-pin chip to the design. Geoff Graham - http://geoffg.net |
||||
robert.rozee Guru Joined: 31/12/2012 Location: New ZealandPosts: 2289 |
i don't want to be a killjoy, but... at some point one crosses the line where a RPi zero becomes a far simpler and cheaper path to follow. it has onboard HDMI, along with the HDMI connector. while there are the issues peter pointed out earlier: no instant booting and stability, can these not be overcome with a super-stripped-down linux kernel? what if the RPi was run WITHOUT a GUI, with mmbasic hitting the video drivers directly? no networking, minimal daemons running in the background. ie, rather that starting with a 176-pin MZ processor costing us$20 and building upwards, start with a us$10 module and strip away layers? i really do love the elegant, single-chip design of the colour MAXImite (and of peter's micromite extreme), but i also love the cheap price of the RPi. and i'm afraid that price is a factor in getting hardware into the hands of users. how much will a maximite using a $20 processor end up costing the end user? cheers, rob :-) |
||||
Geoffg Guru Joined: 06/06/2011 Location: AustraliaPosts: 3165 |
Joystick input would be great, I was also thinking of support for two Nunchuks. But this is getting away from the original issue of implementing gaming primitives. I am beginning to think that the original sprites would work if they could be made any size, could overlap each other and had better collision detection. Geoff Geoff Graham - http://geoffg.net |
||||
WhiteWizzard Guru Joined: 05/04/2013 Location: United KingdomPosts: 2794 |
Yes - those points you stated would allow sprites to be very usable. Do please ensure there is a way (when in a situation of two 'overlapping' sprites) of 'defining' which sprite is in the foreground, and hence which sprite is 'behind'! Also allow for 'partially off-screen' positioning (not a feature - but more to do with error checking in your code). WW For everything Micromite visit micromite.org Direct Email: whitewizzard@micromite.o |
||||
Geoffg Guru Joined: 06/06/2011 Location: AustraliaPosts: 3165 |
Yes, the case where some of the graphics is either partially or fully off the screen is a given. All the graphics in the Micromite allow that. So far the feature set is: - any size - coloured pixels plus transparent pixels - separate collision mask - each sprite will have its own "layer" - a better method of reporting overlap with another sprite or boundary (ie, collision) I'm hoping that the faster processor and plentiful RAM in the MZ will allow all of this to work at a reasonable speed. Geoff Graham - http://geoffg.net |
||||
cosmic frog Senior Member Joined: 09/02/2012 Location: United KingdomPosts: 278 |
Will the MZ chip gradually "wear out" or will it be like the original Maximite and have the BASIC programmes on sd card? Dave. |
||||
matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 8585 |
From the datasheet: >10,000 programming cycles |
||||
Geoffg Guru Joined: 06/06/2011 Location: AustraliaPosts: 3165 |
That implies a gradual loss of performance which is a totally wrong implication. Perhaps you are implying that the limited endurance of the flash will cause the chip to fail at some point... that is also wrong. Programs can be saved to the SD card but the executable program will be saved to the MZ's flash memory which has a minimum endurance of 10,000 writes (and probably a lot more). If you work out the maths you will see that even the most enthusiastic programmer will never ever come even close to 10,000 writes in the life of the device. I have a test Micromite which I use for most development (both BASIC programs and firmware) and over the past few years I estimate that it has has less than 500 writes. Geoff Graham - http://geoffg.net |
||||
MicroBlocks Guru Joined: 12/05/2012 Location: ThailandPosts: 2209 |
A useful graphic feature would be the ability to scroll an area or layer of the screen. Scroll everything except the sprites. Or scroll the background layer and leave foregorund and sprites in place. 2d games use this a lot. A blit function could probably do that. Microblocks. Build with logic. |
||||
darthmite Senior Member Joined: 20/11/2011 Location: FrancePosts: 240 |
It exist on mmbasic : https://www.youtube.com/watch?v=5g3-ztufoNM Is just not yet implemented on PIC32 cheers Theory is when we know everything but nothing work ... Practice is when everything work but no one know why ;) |
||||
Grogster Admin Group Joined: 31/12/2012 Location: New ZealandPosts: 9064 |
A very interesting thread. I have not posted anything to it yet, as games are not really my thing. I am more interested in progaming utilities. Having said that, games are a MAJOR draw-card for newbies to just about ANY platform, and if they can have fun playing some games, that makes them want to try to program some of their own. @ Panky/Geoff Re. HDMI: If licensing is an issue, I wonder how they manage to get HDMI into the $5 Pi Zero?! Crikey.... Panky: There is always the external VGA-to-HDMI converters for those that absolutely MUST have HDMI, and they are quite affordable. See this link - Ten bucks... [Quote=robert.rozee]i don't want to be a killjoy, but... at some point one crosses the line where a RPi zero becomes a far simpler and cheaper path to follow. it has onboard HDMI, along with the HDMI connector. while there are the issues peter pointed out earlier: no instant booting and stability, can these not be overcome with a super-stripped-down linux kernel? what if the RPi was run WITHOUT a GUI, with mmbasic hitting the video drivers directly? no networking, minimal daemons running in the background. ie, rather that starting with a 176-pin MZ processor costing us$20 and building upwards, start with a us$10 module and strip away layers? i really do love the elegant, single-chip design of the colour MAXImite (and of peter's micromite extreme), but i also love the cheap price of the RPi. and i'm afraid that price is a factor in getting hardware into the hands of users. how much will a maximite using a $20 processor end up costing the end user?[/Quote] My thoughts EXACTLY. Certainly not trying to rain on any new MM development either. But I would like to ask Geoff if the Pi Zero has been considered at all for the latest version? Geoff can do what he wants - it's his puppy, but I would be interested in hearing his comments and thoughts on a Pi-based MM unit. Smoke makes things work. When the smoke gets out, it stops! |
||||
Geoffg Guru Joined: 06/06/2011 Location: AustraliaPosts: 3165 |
The Maximite was a huge success with many thousands built and I believe that its success was due to a number of factors: - You could easily build it yourself and have the satisfaction of saying "look what I built". The pre soldered chip in the Altronics kit made a huge difference there. - It was simple to understand, simple to program and best of all... it just worked. You applied power and there was the prompt where you could type something in and get a sensible result. - Another important factor was nostalgia. It appealed to anyone who had cut their teeth on a TRS-80, C64, Apple II, etc. They instantly appreciated what the Maximite could do. Running MMBasic on the bare silicon of the RPi would be wonderful BUT, from what I know of the RPi, the documentation for the processor is not available in the public domain. It seems to be some commercial in confidence thing. This means that you must run Linux, you must wait for it to boot, you must live with its vagarities, etc. Peter has done a great job of getting MMBasic to run in this environment but that is as far as it goes. Geoff Geoff Graham - http://geoffg.net |
||||
Grogster Admin Group Joined: 31/12/2012 Location: New ZealandPosts: 9064 |
Good points, well made. I'm convinced. EDIT: So is the PIC32MZ2064DAG176 with 640k the chip you are going for? EDIT: I expect that whatever the final design, it will incorporate the 1455 interface for USB-serial and easy firmware upgrading via USB? Smoke makes things work. When the smoke gets out, it stops! |
||||
robert.rozee Guru Joined: 31/12/2012 Location: New ZealandPosts: 2289 |
agreed, very good points - alas, anything using a RPi really doesn't have that 'building it yourself' aspect, it is all pretty much just plug-and-play. it is a great pity the MZ chips don't have any socket-able variants (where the socket doesn't cost an arm and a leg!), as that would mean a completely unsoldered kit could be assembled by anyone. i've talked to a linux guru, and while RPi linux could be stripped down to the bare bones with just a few seconds of boot time, it would be no easy task. hitting the hardware directly without using the Pi's proprietary 'binary blob' would be an even more complex task. geoff: what do you think of retaining the arduino shield sockets? with discussion of nunchuks and joysticks, a 'tophat' card could be created quite separately that plugged into where the shield goes to provided the sockets and any necessary electronics for both. moving such functions to an arduino shield means that: 1. for those who don't want joysticks, etc, they don't have to pay for the extra sockets or increased PCB footprint, 2. a shieled 'tophat' could be created that brings out a second 26-pin general purpose I/O connector instead, or proivides other functions (GP-IB for example), 3. these 'tophats' could possibly even be compatible with the original CMM. 4. the PCB footprint could be kept within the 100x100mm maximum for really cheap PCB fabrication in china. btw: would the 5v regulator be dropped in favour of a 5v-only supply input, or replaced with a switchmode module? these switchmode modules (from china) seem to have fairly standard footprints. similarly, the SD card socket could be replaced with a module sourced from china for a cost probably less than the cost of the socket alone. just ideas of course, cheers, rob :-) |
||||
MicroBlocks Guru Joined: 12/05/2012 Location: ThailandPosts: 2209 |
The arduino shield design is just horrible. It adds considerable size to a pcb. And for what, to use some existing arduino shields? Maybe better go with the clickboard interface. A much more elegant design, for the more civilized days.:) Or the pinout of the Pi. Matherp already did a layout for that to use 'Hats'. A design from the 'dark side', but pretty powerful. Yeah, I am a Star Wars nerd.:) Any module source from 'China' can disappear any day. If the design has to withstand some time never ever incorporate anything like that. I found the only exception to the disappearing modules effect is Mikro Electronic. Hence the suggestio to start using the click layout as it also has been already used for the micromite. Microblocks. Build with logic. |
||||
robert.rozee Guru Joined: 31/12/2012 Location: New ZealandPosts: 2289 |
in both the colour maximite and CGmaximite the arduino shield sockets take up very little space, the shield sitting over the PIC32 processor. i'm not necessarily advocating the use of existing arduino shields, but rather making use of the footprint (or some variation thereof). if geoff decided to fix up the off-grid placement of one of the sockets, for instance, that would be fine. really it is just the matter of bringing out 20 (or thereabouts) I/O lines and power to a convenient place where an add-on PCB can be situated. having the pins spread across two rows a couple of inches apart removes the need for mounting nuts and bolts. cheers, rob :-) |
||||
Geoffg Guru Joined: 06/06/2011 Location: AustraliaPosts: 3165 |
Remember that the aim is to make a BASIC computer like the Maximite, TRS-80, C64, etc... not something that is good as an embedded controller (PeterM has many boards that do that). Geoff Graham - http://geoffg.net |
||||
WhiteWizzard Guru Joined: 05/04/2013 Location: United KingdomPosts: 2794 |
. . . and for people worried about the cost of NunChuck connectors - it is ZERO. Just need to allow space on PCB, and shape it correctly, and have four tracks running to it. No I/Os taken as they are I2C devices Not to mention - this is a Games Machine concept - so NunChuck capability is a 'no brainer'. Anyone wanting to use the 'Games Machine' for 'embedded stuff' / Arduino Shields, can simply make a 'daughter board' that plugs into the GPIO connector. OR they could off-course use one of the many MicroMite modules that have been created WW For everything Micromite visit micromite.org Direct Email: whitewizzard@micromite.o |
||||
WhiteWizzard Guru Joined: 05/04/2013 Location: United KingdomPosts: 2794 |
@Geoff, Which PIC are you 'favouring' at the moment? A MZ144, or the DA176? Just curious . . . . For everything Micromite visit micromite.org Direct Email: whitewizzard@micromite.o |
||||
Page 2 of 9 |
Print this page |