Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 16:46 25 Nov 2024 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 : Picomite VGA Gems 'n' Rocks

     Page 2 of 3    
Author Message
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1113
Posted: 11:03am 16 May 2024
Copy link to clipboard 
Print this post

  Volhout said  Hi Martin,

Exciting code. You used 19 goto's. But also function's. This is a good example of how old-meets-new. MMbasic can do it all.

Volhout

Yes, I am old  
As I said before, stick to the motto: first make it work, then make it effective.
Like all the peek and poke commands, for example, that were originally Mid$s.
The Goto Weiter commands are intended to skip the rest of the queries and go to the next cell. (not elegant but fast)
This can certainly also be regulated via a SELECT CASE query.
I'll look over it when everything else is running.

Cheers
Martin
'no comment
 
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1113
Posted: 08:50am 17 May 2024
Copy link to clipboard 
Print this post

A question by the way

I have now adapted the code, so that it runs on MMB4W GameMite and PicomiteVGA without any changes
Since MMB4W/MMB4L basically behaves like CMM2, it should also run on CMM2.
So they might run on both with the MMB4W routines.

My question is, what String does CMM2 and MMB4L return if I use mm.info(device)?


Cheers
Martin
Edited 2024-05-17 18:55 by Martin H.
'no comment
 
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 4036
Posted: 09:36am 17 May 2024
Copy link to clipboard 
Print this post

  Martin H. said  My question is, what String does CMM2 and MMB4L return if I use mm.info(device)?


"Colour Maximite 2" or "Colour Maximite 2 G2", so use:
If InStr(MmDevice$, "Colour Maximite 2") Then ...


Best wishes,

Tom
Game*Mite, CMM2 Welcome Tape, Creaky old text adventures
 
twofingers
Guru

Joined: 02/06/2014
Location: Germany
Posts: 1241
Posted: 09:45am 17 May 2024
Copy link to clipboard 
Print this post

  Martin H. said  ...
My question is, what String does CMM2 and MMB4L return if I use mm.info(device)?

MMB4W = MM.Device$="MMBasic for Windows"
CMM2  = MM.Device$="Colour Maximite 2"

From CMM2 Manual p52:


Best regards
Michael
causality ≠ correlation ≠ coincidence
 
twofingers
Guru

Joined: 02/06/2014
Location: Germany
Posts: 1241
Posted: 09:53am 17 May 2024
Copy link to clipboard 
Print this post

Hi Tom.
  thwill said  "Colour Maximite 2" or "Colour Maximite 2 G2", so use:

That's interesting! The manual should get an update.
Best regards
Michael
causality ≠ correlation ≠ coincidence
 
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1113
Posted: 10:04am 17 May 2024
Copy link to clipboard 
Print this post

Thank you Tom and Michael,

Unfortunately, I can't test this, so I can only install it “blindly”.

Another possibility would be to rule out that it is neither Picomite (Game*Mite) nor PicoMiteVGA and then use the methods that MMB4W uses and hope that it works on CMM2 and MMB4L  

Thanks
Martin

I'll be on the road for the coming Whitsun weekend, so I won't have access to Picos during that time, only my laptop.
(another reason why I try to use a standardized source code for all devices

Edited 2024-05-17 20:10 by Martin H.
'no comment
 
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 4036
Posted: 10:15am 17 May 2024
Copy link to clipboard 
Print this post

  Martin H. said  Unfortunately, I can't test this, so I can only install it “blindly”.


I'm sure someone will test it for you.

  Martin H. said  Another possibility would be to rule out that it is neither Picomite (Game*Mite) nor PicoMiteVGA and then use the methods that MMB4W uses and hope that it works on CMM2 and MMB4L  


MMB4L only works like a CMM2 (or a PicoMiteVGA, or a Game*Mite) if you explicitly tell it to, otherwise it works like MMB4L.

e.g. In native mode MMB4L can support multiple windows (though God knows why as I won't be implementing a GUI toolkit) and the intention is that all windows and graphics buffers (pages / frame buffers / sprites) are equal so all graphics commands can use them as source or destination ... though sprites will have additional features to match CMM2 sprites.

Best wishes,

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

Joined: 05/03/2018
Location: Netherlands
Posts: 4223
Posted: 01:18pm 17 May 2024
Copy link to clipboard 
Print this post

Hi Martin,

Since I have no memory of this game, also the music is unknown to me.
You have a nice (probably genuine) sound track, but this is a bit more modern.
Maybe you like it..

vp-boulderdash.zip

Regards,

Volhout
PicomiteVGA PETSCII ROBOTS
 
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1113
Posted: 03:12pm 17 May 2024
Copy link to clipboard 
Print this post

  Volhout said  Hi Martin,

Since I have no memory of this game, also the music is unknown to me.
You have a nice (probably genuine) sound track, but this is a bit more modern.
Maybe you like it..

vp-boulderdash.zip

Regards,

Volhout

Harm,
Thank you for your suggestion
The soundtrack i use in the Game is written by me   and has nothing to do with the original Boulderdash music. I wanted background music that was just as annoying but catchy as in Tetris or BubbleBobble  .
The levels do not correspond to those of Boulderdash either.
Gems'n'Rocks is a stand-alone game which is, however, based on the principle of Boulderdash.
And if you want, you can insert the original Levels.
'Level Data
'Empty    0
'Miner    1
'Earth    2
'Border   3
'Rock     4
'Gem      5
'Butterfly6
'FireFly  7
'Water    8
'Door     9

Edited 2024-05-18 01:15 by Martin H.
'no comment
 
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1113
Posted: 03:29pm 17 May 2024
Copy link to clipboard 
Print this post

Next Beta (pre release)



Playable on
 Picomite (Game*Mite)
 PicomiteVGA with NES Controller support (PicoGameBoard Port A)
 MM Basic for Windows and hopefully Color Maximite 2

ToDo:
Game-over sequenz
Time out routine if timer reaches 0 (Lose 1 Live)
Make touching FireFly and Butterfly lethal
Game end or restart sequenz after the last map


GNRBeta3.zip


Have fun
Edited 2024-05-18 02:08 by Martin H.
'no comment
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4223
Posted: 08:52pm 17 May 2024
Copy link to clipboard 
Print this post

This is great Martin.
Also quite an achievement to create your own soundtrack for the game.
I am impressed.

Volhout
PicomiteVGA PETSCII ROBOTS
 
Amnesie
Guru

Joined: 30/06/2020
Location: Germany
Posts: 396
Posted: 09:26pm 17 May 2024
Copy link to clipboard 
Print this post

Just wow! Impressive work and soundtrack!
 
homa

Guru

Joined: 05/11/2021
Location: Germany
Posts: 351
Posted: 03:28pm 18 May 2024
Copy link to clipboard 
Print this post

  Martin H. said  Next Beta (pre release)

Playable on
 Picomite (Game*Mite)
 PicomiteVGA with NES Controller support (PicoGameBoard Port A)
 MM Basic for Windows and hopefully Color Maximite 2


Hello Martin,

I ran the beta on the CMM2 and can confirm that I was able to play. I try level 1 and 2. However, I only used the keyboard.
Nice realisation. Continue good luck.

Matthias
 
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1113
Posted: 09:45am 20 May 2024
Copy link to clipboard 
Print this post

So here we have it:
* GEMS 'n' ROCKS *
a vintage maze puzzler in which player collect diamonds before time runs out.
Principle based of the BoulderDash published in 1984 by First Star Software

Game and Music written by Martin Herhaus 2024
Game-Controller support by Thomas Huga Williams (thwill)
For picomiteVGA V5.0708 or later and supports PicoGameBoard NES Controller on Port A
Game*Mite, CMM2 and MMBasic for Windows 5.07

Terms of use:
This program is free to use software and may be redistributed as long as this
text is not modified or deleted but feel free to cange or add Caves


  Quote     WELCOME TO GEMS'N'ROCKS!
GET READY TO NAVIGATE THROUGH INTRICATE CAVE SYSTEMS, COLLECT PRECIOUS
GEMS AND OUTSMART TRICKY OBSTACLES.
SHARPEN YOUR REFLEXES AND PREPARE FOR AN ADVENTURE LIKE NO OTHER"
   PRESS SPACE OR START TO LET THE FUN BEGIN!    

Have Fun
GemsNRocks.zip

Cheers
Martin
Edited 2024-05-20 19:55 by Martin H.
'no comment
 
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 4036
Posted: 10:42am 20 May 2024
Copy link to clipboard 
Print this post

Many thanks Martin, I haven't played it in earnest yet, but it is proving very useful for sorting out MMB4L game controller emulation.

Best wishes,

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

Joined: 05/03/2018
Location: Netherlands
Posts: 4223
Posted: 09:43am 21 May 2024
Copy link to clipboard 
Print this post

Hi Martin,

You can also make the game run on the PicoMiteVGA reference design when you comment out line 474 and 475. The VGA reference design uses GP14/GP15 for system I2C (RTC).
And Tom/Mick 's PicoGameVGA board do not typically need to set GP14 high. The NES controller will also work with 150 ohm to +3.3V.

Regards,

Volhout
PicomiteVGA PETSCII ROBOTS
 
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1113
Posted: 11:45am 21 May 2024
Copy link to clipboard 
Print this post

  Volhout said  Hi Martin,

You can also make the game run on the PicoMiteVGA reference design when you comment out line 474 and 475. The VGA reference design uses GP14/GP15 for system I2C (RTC).
And Tom/Mick 's PicoGameVGA board do not typically need to set GP14 high. The NES controller will also work with 150 ohm to +3.3V.

Regards,

Volhout


Hi Volhout,
Thanks, I took the code from the Petscii source code for simplicity. I have now tested this on the GameBoard with lines 474 and 475 commented out and it still works, so they are unnecessary and GP14 can be used for other for other things.

Cheers
Martin
'no comment
 
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 4036
Posted: 02:06pm 26 May 2024
Copy link to clipboard 
Print this post

Hi Martin,

I've got it 95% working with MMB4L's PicoMiteVGA simulation now ... still a very nice game .

Can I suggest the following modifications to the status line:

- precede gem count by an icon of a gem - and show the count immediately, instead of after the first gem is collected.
- precede the life counter with an icon of a man
- precede timer with an icon of an analog clock

Best wishes,

Tom
Edited 2024-05-27 00:25 by thwill
Game*Mite, CMM2 Welcome Tape, Creaky old text adventures
 
Plasmamac

Guru

Joined: 31/01/2019
Location: Germany
Posts: 554
Posted: 04:14pm 26 May 2024
Copy link to clipboard 
Print this post

Lovely 👍
Plasma
 
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1113
Posted: 04:22pm 26 May 2024
Copy link to clipboard 
Print this post

  thwill said  Hi Martin,

I've got it 95% working with MMB4L's PicoMiteVGA simulation now ... still a very nice game .

thats good news

  thwill said  Can I suggest the following modifications to the status line:
- precede gem count by an icon of a gem - and show the count immediately, instead of after the first gem is collected.
- precede the life counter with an icon of a man
- precede timer with an icon of an analog clock

Best wishes,

Tom

Hi Tom,
thank you for your suggestions. In my opinion, this is not a big deal.
I'll see if I can misuse a few letters as symbols in the character set (because this is easierto handle than creating additional symbols for it in the tileset).

Cheers,
Martin
'no comment
 
     Page 2 of 3    
Print this page
© JAQ Software 2024