Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 06:36 28 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 : WebMite and PicoMite firmware release V5.07.07

     Page 4 of 4    
Author Message
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 9129
Posted: 07:24am 31 Jul 2023
Copy link to clipboard 
Print this post

  Quote  Is the only reason the "layer" exists to create colission groups ?


Yes. Use FRAMEBUFFER LAYER in the VGA version to create a true second layer

Re something else you commented on. You should never see artifacts when moving sprites IFF you move them in the right order. i.e. if you place one sprite on top of another then move the bottom one when you then move the top one you will get an artefact. If necessary use SPRITE SHOW SAFE and SPRITE HIDE SAFE or code to always hide then restore the sprites in order (performance impact though). The safe commands use a LIFO to achieve this.

So
show sprite 1
show sprite 2 overlapping 1

I now want to move 1 so:
hide 2
show 1 in new location
show 2 in original location

NB: none of this applies to the PicoMite or WebMite. SPI displays are too slow (particularly in reading) to implement sprites in any useful way without a memory framebuffer and this would be too large for the Pico Memory
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4247
Posted: 12:30pm 31 Jul 2023
Copy link to clipboard 
Print this post

Hi Peter,

Thank you for this information. If I where to write a new game, this would be the way to do it.
The MAXITREK game is not set up to do this very well. There are several locations in the code where sprites are drawn and removes and moved. And lines (simulating laser beams) are drawn in the same plane at random times.

There is no overall sequencer, everything depends on PAUSE and SETTICK times with counters. (i.e. syncronisation audio = settick + counters, synchronisation video is PAUSE based, except when events happen, then it is also SETTICK driven).

This is all tuned on the speed the CMM1 has, and with pico the time for processing statements between the PAUSE is different. So... imagine...

Most anoying are the reboots. I don't know what went wrong. So I can't even ask for help here.

Second anoying is the OPTION LEGACY ON that translates some commands (LINE/CIRCLE) and allows for color numbers. But some it does not convert (sound and sprites for instance).

It is an adventure, and I will finish it. But it costs...a lot of time...

Volhout
PicomiteVGA PETSCII ROBOTS
 
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1114
Posted: 12:42pm 31 Jul 2023
Copy link to clipboard 
Print this post

  Volhout said  
It is an adventure, and I will finish it. But it costs...a lot of time...

Volhout

Maybe, it is easier to look, what those Maximite special routines do and rewrite those parts for the Pico.
Edited 2023-07-31 22:45 by Martin H.
'no comment
 
vegipete

Guru

Joined: 29/01/2013
Location: Canada
Posts: 1109
Posted: 03:48pm 31 Jul 2023
Copy link to clipboard 
Print this post

  Volhout said  And lines (simulating laser beams) are drawn in the same plane at random times.
Would an optional modifier to the LINE command that performs an XOR be useful (and possible?) Draw the line the second time, and it is erased, if nothing was changed underneath it.
Visit Vegipete's *Mite Library for cool programs.
 
     Page 4 of 4    
Print this page


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

© JAQ Software 2024