![]() |
Forum Index : Microcontroller and PC projects : The Pico is doomed
![]() ![]() ![]() ![]() |
|||||
Author | Message | ||||
Mixtel90![]() Guru ![]() Joined: 05/10/2019 Location: United KingdomPosts: 7938 |
Even the extra colour depth would cause problems - the PicoMite VGA uses a frame buffer so it would need appreciably more RAM. The graphics system for Doom doesn't have to cope with a BASIC interpreter. Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
thwill![]() Guru ![]() Joined: 16/09/2019 Location: United KingdomPosts: 4311 |
A version of the VGA PicoMite that runs on this particular off the shelf breakout board's VGA, SD card and audio arrangement though not necessarily using all 15 VGA lines independently. I may be talking sh*t, remember, "not a hardware guy" ![]() Best wishes, Tom MMBasic for Linux, Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
JohnS Guru ![]() Joined: 18/11/2011 Location: United KingdomPosts: 4044 |
I'm not a hardware guy either but the board / Doom looks to use just about every GPIO leaving essentially none for the user. The GPIOs for colour are mixed on the VGA board before going off to the VGA monitor so I don't see it as useful for MMBasic (but I could be wrong). John Edited 2022-03-18 05:50 by JohnS |
||||
Mixtel90![]() Guru ![]() Joined: 05/10/2019 Location: United KingdomPosts: 7938 |
The existing PicoMite VGA frame buffer is 38,400 bytes That works with 640*480*1-bitcolour or 320*240*4-bitcolours If you want 320*240*16-bitcolours (RGB565 = 16 bits) (and I've worked this out right) then you need 320*240*16/8 = 153,600 bytes of RAM for the frame buffer - which doesn't leave much on a Pico. That's why the video system for Doom is so complicated - it doesn't use a full size frame buffer. Edited 2022-03-18 06:15 by Mixtel90 Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
JohnS Guru ![]() Joined: 18/11/2011 Location: United KingdomPosts: 4044 |
You're so right!! The way it creates data just ahead of "the beam" (the thing drawing on the monitor) is scary / impressive / insert your own description here. The way it uses DMA is ... similar. Mind-boggling. The detailed write-up is a tough read (for me). John Edited 2022-03-18 06:45 by JohnS |
||||
Mixtel90![]() Guru ![]() Joined: 05/10/2019 Location: United KingdomPosts: 7938 |
And me... lol! I don't understand half of it TBH. :) Some things, like the vertical pixel strips, I can understand now. It seemed illogical at first but it's not. However, using a mix of display lists and two small frame buffers really does my head in. :) Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
thwill![]() Guru ![]() Joined: 16/09/2019 Location: United KingdomPosts: 4311 |
Ignore Doom. Ignore the fact that this may not be the optimum hardware arrangement for the VGA PicoMite - no spare pins for a start. Don't feel obliged to produce more than 16? colours or any particular resolution. Do take note that the board in question is an off the shelf implementation of a standard/reference design - more people are likely to have a compatible board than they are to have Peter or Mick's creations. Can some semblance of the VGA PicoMite firmware be produced to run on it? Best wishes, Tom MMBasic for Linux, Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
thwill![]() Guru ![]() Joined: 16/09/2019 Location: United KingdomPosts: 4311 |
... ah, it's missing a keyboard unless you can get the Pico working as a USB host ... which obviously the Doom "author" has. Tom Edited 2022-03-18 08:04 by thwill MMBasic for Linux, Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
JohnS Guru ![]() Joined: 18/11/2011 Location: United KingdomPosts: 4044 |
I was definitely ignoring Doom (other than being impressed/stunned), as you were asking about MMBasic. I reckon probably but someone will have to figure hardware for the RGB etc. My _guess_ is you'd either butcher the VGA board (cut tracks or whatever) to use VGA PicoMite's VGA output (on far fewer CPU pins) or adapt MMBasic to drive more pins (if that's even doable bearing in mind memory etc constraints). Again guessing, I suspect lots of the hardware people on here could figure the former but maybe only Peter the latter. It might result in a VGA PicoMite with almost no I/O other than the VGA & (hopefully) the keyboard, so fairly crippled? Maybe a good start would be flying leads / butcher the VGA board as proof of concept? John Edited 2022-03-18 08:50 by JohnS |
||||
matherp Guru ![]() Joined: 11/12/2012 Location: United KingdomPosts: 10315 |
No |
||||
Grogster![]() Admin Group ![]() Joined: 31/12/2012 Location: New ZealandPosts: 9610 |
LOL!!! ![]() I saw that post from Peter coming from miles away! ![]() Smoke makes things work. When the smoke gets out, it stops! |
||||
robert.rozee Guru ![]() Joined: 31/12/2012 Location: New ZealandPosts: 2442 |
peter - could the USB keyboard code be uplifted? cheers, rob :-) |
||||
Mixtel90![]() Guru ![]() Joined: 05/10/2019 Location: United KingdomPosts: 7938 |
If what you want is a small (80x65mm) board to take a PicoMite VGA, then I already have a design - but it's the existing VGA system, not some enhanced version so sorry, no Doom. If you need more IO then just leave some of the other stuff off. :) You can do the same with Peter's (more expandable and a little larger) design. PicoMiteVGA22_gerber.zip Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
matherp Guru ![]() Joined: 11/12/2012 Location: United KingdomPosts: 10315 |
Possibly, but the host support in tinyusb gets such bad press I've shied away from touching it. The PicoMite source is available on GitHub if anyone wants to try Correct, which would defeat the object of using a not-cheap ready built board |
||||
Mixtel90![]() Guru ![]() Joined: 05/10/2019 Location: United KingdomPosts: 7938 |
Hmmm... wonders if there would be a case for putting the I2S audio chip on the above board. Would anyone support such a beast from MMBasic? I2S has the advantage of much better audio, but is completely different to either I2C or PWM. Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
JohnS Guru ![]() Joined: 18/11/2011 Location: United KingdomPosts: 4044 |
Correct, which would defeat the object of using a not-cheap ready built board A ready-made board is the only realistic option for those of us with no or limited build skills (or tools, etc). Is anyone offering any ready-built board for the PicoMite? John Edited 2022-03-18 20:02 by JohnS |
||||
Mixtel90![]() Guru ![]() Joined: 05/10/2019 Location: United KingdomPosts: 7938 |
I have none of the above boards at the moment, but I could probably get some made easily enough (China, of course!). Would you be interested? I have most of the components too so I could build one up. Not a Doom machine though - you'd need the suggested board for that. Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
JohnS Guru ![]() Joined: 18/11/2011 Location: United KingdomPosts: 4044 |
I've ordered one of those boards (out of curiosity really, I never got into Doom) but could do with one (2 if they're cheap enough) suitable for VGA PicoMite. What sort of price would they be? John Edited 2022-03-18 21:51 by JohnS |
||||
Mixtel90![]() Guru ![]() Joined: 05/10/2019 Location: United KingdomPosts: 7938 |
Depends on what you want. :) The bare boards wouldn't be much, but components would obviously depend on what you wanted. Is anyone else interested? I'll sort out the manual, which has a BOM in it. The bare boards aren't cut - they just have cut lines drawn on the screen printing as they are unsuitable for panelizing unless I split then up into four different boards. That's not financially viable unless I'm doing a lot. I can (usually!) cut them reasonably accurately. Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
thwill![]() Guru ![]() Joined: 16/09/2019 Location: United KingdomPosts: 4311 |
I saw that post from Peter coming from miles away! Me too, but these days I mentally translate that to "I won't be doing it!" or "I'm saying that I won't do it, but then I will do it anyway in a couple of weeks." Hey Mick, I don't *want* anything in particular ... well I'd quite like world peace, a solution to climate change and an end to poverty, disease, famine, etc. and on a more personal note (a) my youngest to eat her meals without being a bloody nuisance about it, (b) more free time, and (c) the RPi 4 with 8GB to be back in stock. What I *thought* was that this standard/reference off-the-shelf design looks like a potential standard for retro computing projects with the Pico and seems to provide most of the hardware required (PS/2 keyboard omitted) so I was wondering aloud whether the VGA PicoMite firmware might be modified to run on it - I naively thought it would be possible for the firmware to tie together the output to some of the VGA pins so that they could be driven from and emulate the VGA PicoMite's more limited colour-depth. I definitely wasn't proposing any board butchering or a VGA PicoMite with better colour-depth or higher resolution. Anyway, I'll shut up about it now. Best wishes, Tom 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 |