Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 09:30 24 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 : Game for PicoMiteVGA: Pico Frog

Author Message
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1264
Posted: 07:24am 22 Apr 2023
Copy link to clipboard 
Print this post

Because of the clarity and if that got lost in the other thread.
The playable version of a Fogger style game for the PicoMite VGA.

The concept of Frogger is simple. Just get that frog from A to B. Yet it’s a challenge to execute.

The Game:
Move your frog carefuly. Avoid the moving vehicles. On the river, jump across the logs to get your frog to its “frog home”. There are five of these homes, so you have to repeat this four more times.



The Program:
This is the basic structure of the game. What is missing  in this Version are levels, lady-frog, crocodiles, Beaver, Flies and diving Turtles. So there is a lot of room for improvement. Developed on PicoMite Version 5.07.05RC..
Tested on Firmaware 5.07.06 and 5.07.07RC6

Actually there are 2 versions of this Game:
On for Mixtel90s Pico Game Console, which supports Atari joysticks, NES controllers and/or PS2 keyboard.
(many thanks to thwill)
picofrog_Game.zip

And a Keyboard only Version, for PS2 and Terminal Keyboard control.
(thanks to Volhout)
picofrog_keyb.zip

Thanks to everyone who supported me in this project,
matherp and Geoffg for keeping BASIC uptodate

Take care
 Mart!n
Edited 2023-04-22 17:34 by Martin H.
'no comment
 
Turbo46

Guru

Joined: 24/12/2017
Location: Australia
Posts: 1642
Posted: 01:12am 21 Mar 2024
Copy link to clipboard 
Print this post

Martin, have you considered a version for the Game*Mite and possibly the CMM2?

I have fond memories of playing this game on the C64 with my daughter way back when.

Bill
Keep safe. Live long and prosper.
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 5166
Posted: 07:31am 20 Aug 2025
Copy link to clipboard 
Print this post

@Martin,

Please find attached versions that have been patched to run on Picomite MMBasic 6.
Tested on 6.01.00 on both RP2040 and RP2350.

I had to "assume" a game speed that is determined by variable h_beat%
Change to value to your liking. This was introduced since Peters speed improvements, and the 2350 caused the game to be unplayable (too fast).

I have not tested all controllers in the controller version since I do not own a Atari joystick. I will patch up something tonight and confirm that also works (or issue an update to this release). The keyboard version is fully tested.

picofrog_6.zip

The game is (even without all the added finesse) fun to play...

Volhout

P.S. Martin, can I persuade you to add some of the finesse (i.e. flies, diving turtles, crocodiles) now. ??
P.P.S. below is a partial patch that runs on Game*Mite. It has achitectural changes because FRAMEBUFFER MERGE needed for LCD corrupts music (delays settick). The game can only be controlled from console keyboard (like the VGA game). Next task is supporting the Game*Mite buttons.
picofrog_GM_6b1.zip
Edited 2025-08-21 04:13 by Volhout
PicomiteVGA PETSCII ROBOTS
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 5166
Posted: 06:18pm 20 Aug 2025
Copy link to clipboard 
Print this post

Martin, Tom,

Below is a port that runs on Game*Mite. It has achitectural changes because FRAMEBUFFER MERGE needed for LCD corrupts music (delays settick). The game can be controlled from console keyboard, or Game*Mite keys

picofrog_GM_6b2.zip


Volhout
Edited 2025-08-21 04:44 by Volhout
PicomiteVGA PETSCII ROBOTS
 
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 4318
Posted: 08:40am 21 Aug 2025
Copy link to clipboard 
Print this post

Thank you @Volhout, some many interesting things to do and look at, and so little time  .

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

Joined: 05/03/2018
Location: Netherlands
Posts: 5166
Posted: 09:05am 21 Aug 2025
Copy link to clipboard 
Print this post

Hi Tom,

It runs fine on GM with RP2350 as is.

If you want to run it at GM with RP2040, it is better to change the CPUSPEED to 300MHz. Reason is that at 300MHz, the SPI speed to the LCD is increased from 42 to 50MHz, which makes the FRAMEBUFFER MERGE fit in 23ms. And 23ms is the "tick" of the melody playing. So the tune sounds as good as possible (*).

I tried 200MHz as well (also SPI=50MHz) but then the ARM is too slow to process al the data.

CPUSPEED = 378MHz also works.

Volhout
(*) although the tune is very close to original (compliments to Martin) there is at least 1 location where a note comes too early. Could be perfected. Maybe I will. And .. maybe I'll add "the fly" myself. Seems do-able. And I am beginning to find my way in Martin's code. His code is very compact, and only has minor comments. The other features (crocodiles and diving turtles) require additional sprites. And Martin is already using 31 sprites (the max for Pico). More levels..? Maybe...
Edited 2025-08-21 19:28 by Volhout
PicomiteVGA PETSCII ROBOTS
 
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1264
Posted: 09:41am 21 Aug 2025
Copy link to clipboard 
Print this post

Cant realy test.
I still havethe problem that my display often freeses while FRAMEBUFFER MERGE, I tested it with several Displays so I think I have to replace the Pico with another one or Pico2
'no comment
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 8015
Posted: 09:57am 21 Aug 2025
Copy link to clipboard 
Print this post

Wow.....
One of the early programs I typed into a Nascom was Lollypop Lady Trainer. It was a version of Frogger written in Z80 assembler (although it might well have been hand coded at that time). It was rather cool as when the lollypop lady had been hit an ambulance came across to remove the body. :)
Mick

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

Joined: 05/03/2018
Location: Netherlands
Posts: 5166
Posted: 10:22am 21 Aug 2025
Copy link to clipboard 
Print this post

Hi Martin,

Do you have a display that does NOT have touch ? All displays on my 3 Game*Mite's do not have a touch chip (2 x 3.2" and 1 x 2.8"). Maybe that touch chip causes problems at 50MHz SPI bus (although the touch chip is not driven at 50MHz, it is attached to that fast bus).

If you run at 252MHz and a 2040, you would only have irregular audio, but it should run. The SPI speed is then lower (default for game mite)

I run version 6.01.00b9 on it, and used the 1.31 install package and instructions from this thread to install the Game*Mite on version 6.00.02 and later (in stead of the 6.00.02 in that post, use the last 6.01.00b9 image in the 6.01.00 thread).

Instructions
Instructions

1.31 install package

Volhout
Edited 2025-08-21 20:35 by Volhout
PicomiteVGA PETSCII ROBOTS
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 5166
Posted: 09:48am 22 Aug 2025
Copy link to clipboard 
Print this post

@Martin,

Do you think it would be possible to bring the ADSR from 10 to 5 ,6, or 7 steps ?
That would allow a slower SETIICK (from 23ms to 46/38/33ms) which is less CPU intense in relation to the FRAMEBUFFER MERGE. It may be able to run on a GM at 252MHz then.

Volhout

EDIT: I tried ADSR of 5, and it sounds a bit raw, but runs perfect at a Game*Mite 2040  at 252MHz. So maybe I'll keep this as an Game*Mite options (platform based select).
Edited 2025-08-22 19:59 by Volhout
PicomiteVGA PETSCII ROBOTS
 
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1264
Posted: 11:30am 22 Aug 2025
Copy link to clipboard 
Print this post

These were values used to approximate the envelope curve.
It therefore describes the volume of a tone over time as it is played.
The fewer values you use, the closer you get to a simple rectangle,
but you can try this if it makes music run more smoothly.

Edited 2025-08-22 21:33 by Martin H.
'no comment
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 5166
Posted: 11:44am 22 Aug 2025
Copy link to clipboard 
Print this post

Please find attached version that uses a 7 stage ADSR for the main music for RP2040, and 10 stage for RP2350. This works well for sound on both Game*Mite platforms.
Both platforms use the default Game*Mite CPUSPEED = 252000.

picofrog_GM_6b3.zip

Volhout
Edited 2025-08-22 21:45 by Volhout
PicomiteVGA PETSCII ROBOTS
 
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1264
Posted: 02:20pm 22 Aug 2025
Copy link to clipboard 
Print this post

  Volhout said   This works well for sound on both Game*Mite platforms.
Both platforms use the default Game*Mite CPUSPEED = 252000.

Volhout
thank you,Game and Music timing works verry well,  
Game*Mite doesn't freeze
good job  
Edited 2025-08-23 22:09 by Martin H.
'no comment
 
Print this page


To reply to this topic, you need to log in.

The Back Shed's forum code is written, and hosted, in Australia.
© JAQ Software 2025