Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 05:38 02 Aug 2025 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 : The Pico is doomed

     Page 1 of 5    
Author Message
led-bloon

Senior Member

Joined: 21/12/2014
Location: Australia
Posts: 207
Posted: 03:58am 16 Mar 2022
Copy link to clipboard 
Print this post

Interesting...
Pico Doom
led
Miss you George
 
Grogster

Admin Group

Joined: 31/12/2012
Location: New Zealand
Posts: 9610
Posted: 05:37am 16 Mar 2022
Copy link to clipboard 
Print this post

This is amazing, and just goes to show how powerful that tiny little 2040 chip can be!

Link about developing and squeezing it into the limited RAM of the PICO...

YouTube video from the OP link..

That they were able to port this game to the PICO's relatively low RAM specs, is fascinating, and just shows how useful those PIO's are!!!!
Smoke makes things work. When the smoke gets out, it stops!
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 7937
Posted: 07:29am 16 Mar 2022
Copy link to clipboard 
Print this post

Sheesh!!!!!! That's simply stunning!
With I2C networking for up to four players too...

It goes to show what can be done when you use all the resources of that chip (with some really neat data compression).
There are some *very* clever people around. :)
Edited 2022-03-16 17:33 by Mixtel90
Mick

Zilog Inside! nascom.info for Nascom & Gemini
Preliminary MMBasic docs & my PCB designs
 
Geoffg

Guru

Joined: 06/06/2011
Location: Australia
Posts: 3292
Posted: 07:50am 16 Mar 2022
Copy link to clipboard 
Print this post

Great demo video.  

But what I find amazing is that their website spends a lot of time talking about how they built the game but there are no practical details.  For example, what are the pinouts for the VGA?  And the Audio?  Game play keys? And so on.  I could not even find a compiled .uf2 file.

I guess that you need to be a C++/Pico/Doom expert and dig through the source yourself and compile your own version.  In that case this just an exercise in hubris and making a great looking demo video.  What a pity if that is true.

If anyone does find a detailed description of how to wire it up please post it here - I was looking forward to trying it out.

Geoff
Geoff Graham - http://geoffg.net
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10315
Posted: 08:08am 16 Mar 2022
Copy link to clipboard 
Print this post

  Quote  For example, what are the pinouts for the VGA?  And the Audio?  Game play keys? And so on.  I could not even find a compiled .uf2 file.

https://github.com/kilograham/rp2040-doom/releases/tag/v0.1

Designed to run on this

Note he is clocking the Pico at 270MHz so may not run on all boards

UPDATE

Load the 4Mb uf2, you need a usb keyboard connected to the PICO USB port so will need other power. I've got it up and running - very very impressive
Edited 2022-03-16 18:23 by matherp
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 5090
Posted: 09:25am 16 Mar 2022
Copy link to clipboard 
Print this post

Absolutely fabulous. I am impressed to read how far this guy (team) has gone to proof it is possible. They actually changed everything from the vanilla game and used compression on about everything they could, just to fit it in RAM (and ROM). This is really impressive. And all this for a one-off (well, potentially 3-off: Heretic and Wolfenstein will be simple now, but then it ends...)

In retrospective .... I ran DOOM on a 66MHz 486....
With double 270MHz ARM cores doing video generation and audio you should be able to isolate 10% of that power to run the game itself and achieve similar game experience.
The challenge was not the CPU power but the memory restrictions ....

A fantastic achievement.
PicomiteVGA PETSCII ROBOTS
 
JohnS
Guru

Joined: 18/11/2011
Location: United Kingdom
Posts: 4044
Posted: 09:49am 16 Mar 2022
Copy link to clipboard 
Print this post

WOW.

John
 
Geoffg

Guru

Joined: 06/06/2011
Location: Australia
Posts: 3292
Posted: 10:21am 16 Mar 2022
Copy link to clipboard 
Print this post

Excellent Peter, thanks.  The hardware is not too expensive so worth buying outright.

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

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 4311
Posted: 10:42am 16 Mar 2022
Copy link to clipboard 
Print this post

Damn, and I'd gone a whole month without buying a piece of electronics gubbins.

Best wishes,

Tom
MMBasic for Linux, Game*Mite, CMM2 Welcome Tape, Creaky old text adventures
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 5090
Posted: 10:49am 16 Mar 2022
Copy link to clipboard 
Print this post

They must use GP20 and GP21 for the I2C interconnect in multiplayer.



PicomiteVGA PETSCII ROBOTS
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 5090
Posted: 10:53am 16 Mar 2022
Copy link to clipboard 
Print this post

  thwill said  Damn, and I'd gone a whole month without buying a piece of electronics gubbins.

Best wishes,

Tom


Too bad.... It's like smoking.... very addictive...
PicomiteVGA PETSCII ROBOTS
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 7937
Posted: 11:04am 16 Mar 2022
Copy link to clipboard 
Print this post

The thing is, is using an I2C sound chip cheating?  ;)
Mick

Zilog Inside! nascom.info for Nascom & Gemini
Preliminary MMBasic docs & my PCB designs
 
Michal
Senior Member

Joined: 02/02/2022
Location: Poland
Posts: 125
Posted: 12:05pm 16 Mar 2022
Copy link to clipboard 
Print this post

Or maybe someone would be tempted to write an IBM PC/XT emulstor?
In the end, it's 128kB RAM, 4.77MHz and CGA.

Michal
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 5090
Posted: 12:07pm 16 Mar 2022
Copy link to clipboard 
Print this post

  Mixtel90 said  The thing is, is using an I2C sound chip cheating?  ;)


The board has PWM audio
PicomiteVGA PETSCII ROBOTS
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10315
Posted: 12:36pm 16 Mar 2022
Copy link to clipboard 
Print this post

  Quote  The board has PWM audio


The code uses the DAC on the board not PWM

   struct audio_i2s_config config = {
           .data_pin = PICO_AUDIO_I2S_DATA_PIN,
           .clock_pin_base = PICO_AUDIO_I2S_CLOCK_PIN_BASE,
           .dma_channel = 6,
           .pio_sm = 0,
   };
 
Geoffg

Guru

Joined: 06/06/2011
Location: Australia
Posts: 3292
Posted: 01:12pm 16 Mar 2022
Copy link to clipboard 
Print this post

  matherp said  The code uses the DAC on the board not PWM


I'm amazed that they put in such a huge effort to write a brilliant program and then leave people to dig through the code to figure out details like this.
Geoff Graham - http://geoffg.net
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 7937
Posted: 02:40pm 16 Mar 2022
Copy link to clipboard 
Print this post

I just accept that all such things are done through profound wizardry, Geoff. I know nothing of these C magik spells (and not much of anything else either!). :)
Mick

Zilog Inside! nascom.info for Nascom & Gemini
Preliminary MMBasic docs & my PCB designs
 
JohnS
Guru

Joined: 18/11/2011
Location: United Kingdom
Posts: 4044
Posted: 02:58pm 16 Mar 2022
Copy link to clipboard 
Print this post

  Geoffg said  
  matherp said  The code uses the DAC on the board not PWM


I'm amazed that they put in such a huge effort to write a brilliant program and then leave people to dig through the code to figure out details like this.

I suppose people could read the copious documentation.

I suspect not everything someone might ask is yet in there, but that has applied to every system's documentation I've ever met I think, MMBasic included.

John
 
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 4311
Posted: 06:47pm 17 Mar 2022
Copy link to clipboard 
Print this post

Just got it up and running myself - absolutely no fuss.

It's amazing what the little Pico can do.

Peter given this board is available off the shelf (and it sounds like you have one) have you considered a PicoMite port/fork for it ? - the answer "No" is fine, you can't port to everything.

Best wishes,

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

Joined: 18/11/2011
Location: United Kingdom
Posts: 4044
Posted: 07:24pm 17 Mar 2022
Copy link to clipboard 
Print this post

Port in what sense?

I'm wondering what features in particular?

(Obviously not the graphics etc which use both cores flat out highly overclocked and all the RAM & flash.)

John
 
     Page 1 of 5    
Print this page
The Back Shed's forum code is written, and hosted, in Australia.
© JAQ Software 2025