Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 13:32 27 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 : CMM2/Windows PETSCII

Author Message
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1113
Posted: 02:22pm 21 Oct 2023
Copy link to clipboard 
Print this post

branch from the Pico PETSCII Post.
  matherp said  CMM2 has multiple PAGES (framebuffers available). All the images can be loaded into background pages and then blitted onto the main screen like the Pico - it handles transparency. If you use ARGB4444 graphics modes you have the two layers exactly like the Pico.
Suggest you get the Pico fully working and then it shouldn't be a big deal to translate to the CMM2 even if I have to "update" the CMM2 firmware to deal with any little wrinkles. Certainly worth doing  


Fine, sounds like a good approach.

for the start, I rearanged the PSP Tileset for CMM into 2 Pages (Mode 7 - 320x240)
Tile 00-7f


Tile 80-ff



CMM-tileset.zip


If someone dares to adapt Harm's program for the CMM2, that's a start
Edited 2023-10-22 00:26 by Martin H.
'no comment
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 9122
Posted: 04:04pm 21 Oct 2023
Copy link to clipboard 
Print this post

Also, on the CMM2 there is a very powerful framebuffer command and the framebuffer can be as big as the memory allows. This would allow you to have the whole map drawn at all times. Then you use the command "framebuffer window" to copy the area you want to a page

"FRAMEBUFFER WINDOW x,y, page [,I or B]"
"This command copies an area MM.HRES by MM.VRES from the
framebuffer with top left at x,y to the page specified, The optional parameter
specifies if the copy is Immediate or during frame Blanking"

You can also save and restore the framebuffer so you could, for example, save it, write changed items onto it, then window it to the screen, then restore it. All this is extremely fast as I have some highly optimised memory moving algorithms that can move 128 bytes in a single instruction
Edited 2023-10-22 02:07 by matherp
 
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1113
Posted: 04:57pm 21 Oct 2023
Copy link to clipboard 
Print this post

Sounds tempting, but don't forget the animated tiles.

I think the method of redrawing the 11*7 tiles every 120 ms has proven its worth.
Especially since one don't have to worry about the animated tiles.
At the Pico I simply exchange the LIB source address of the tile for that of the animation. If we have Pages forthe Tile in the CMM2 version, one could achieve something similar when working with source coordinate array, in which for every Tile   Page,x,y are stored, which also could be exchanged verry fast with those for the animated Tiles. And one dont have to pay attention to it in the program.

Edit
here are the Sprites AniTiles and Items


ATiles_Sprites_Items.zip
Edited 2023-10-22 03:45 by Martin H.
'no comment
 
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1113
Posted: 11:53am 27 Oct 2023
Copy link to clipboard 
Print this post

I can't find it in the Manual or other programs. Or I probably missed it.
Can someone from the CMM2 experts tell me, if and how I can set up a transparent "layer" similar to the Layer on the Pico, on CMM2?
Edited 2023-10-27 21:55 by Martin H.
'no comment
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 9122
Posted: 01:35pm 27 Oct 2023
Copy link to clipboard 
Print this post

See this thread on 12-bit modes and this document
Please do also look at the framebuffer command on the CMM2 in the pdf. Very powerful for exactly this sort of application
 
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1113
Posted: 02:18pm 27 Oct 2023
Copy link to clipboard 
Print this post

Thank you
at the moment, I use 3 Pages as Framebuffer to store all the Tiles and Sprites
and use Blit to draw them to page 0
like blit SP_Index(i,0),SP_Index(i,1),xs,ys,24,24,TP1
which works also very powerful (on Windows)
I blit the "sprites" to PAGE 1  (but they are still hidden as PAGE 1 is no "Layer")

this is how it looks at the Moment...
Not all of Harms routines have been adapted yet. (for example Items wapon health are missing). So don't be surprised by any error messages

This is just a snapshot of where I am right now.
you can wander through the levels using Cursor keys and
(ESC)to quit
W-PET20.zip
Edited 2023-10-28 00:30 by Martin H.
'no comment
 
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1113
Posted: 10:57am 28 Oct 2023
Copy link to clipboard 
Print this post

Ok, i solved the Sprite Problem the easy way.
Using Framebuffer on MMB4W causes it to close regularly, but that's how it works.

I cutout the Sprite Background and saved the Picture as PNG with tranceparency.
Now all the drawing is done at page 1, BG and Sprites, and copy it do Page 0 when done.


'no comment
 
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1113
Posted: 06:45pm 28 Oct 2023
Copy link to clipboard 
Print this post

so far so good

W-PET20_2.zip

Maybe a CMM2 Expert will continue converting it



Edited 2023-10-29 16:53 by Martin H.
'no comment
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4243
Posted: 10:59am 29 Oct 2023
Copy link to clipboard 
Print this post

MMB4W is fast. 2ms for a loop.
This is around 50ms on the pico for pet20.bas
And the graphics look way better on MMB4W.

I understand your desire to implement it on a PC.

But I have set my target for picoMiteVGA. And the way it is progressing now, it will be finished before Xmas. Not the full year I feared, but only. 4 months.

Volhout
Edited 2023-10-29 21:00 by Volhout
PicomiteVGA PETSCII ROBOTS
 
Martin H.

Guru

Joined: 04/06/2022
Location: Germany
Posts: 1113
Posted: 01:29pm 29 Oct 2023
Copy link to clipboard 
Print this post

  Volhout said  MMB4W is fast. 2ms for a loop.
This is around 50ms on the pico for pet20.bas
And the graphics look way better on MMB4W.

I understand your desire to implement it on a PC.

But I have set my target for picoMiteVGA. And the way it is progressing now, it will be finished before Xmas. Not the full year I feared, but only. 4 months.

Volhout

The graphic was 1:1 transferred from the PSP version.
My challenge was that I had to completely rewrite the graphic output of the Pico version for the CMM2 and make it fast enough. Without spending hours torturing myself through manuals for a system that I don't even own.
The experiment has shown that it can be adapted very well for the CMM2 and I will certainly create a translation of the final Pico version. Although it doesn't seem to generate much interest.
'no comment
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4243
Posted: 02:13pm 29 Oct 2023
Copy link to clipboard 
Print this post

There may be some interest for the finished product, but the creative path to the end product is not very appealing  I guess.
And that is logical. I am publishing 2 intermediate releases per week, or more. And this will continue until christmas I guess. Maybe I should stop this, and only publish the alpha version.
In the mean time we could share code between us.

Volhout

P.s. once released it will be the ultimate game for picomite. And I plan to send a picomite pre programmed to the 8 bit guy.
Edited 2023-10-30 00:15 by Volhout
PicomiteVGA PETSCII ROBOTS
 
thwill

Guru

Joined: 16/09/2019
Location: United Kingdom
Posts: 4042
Posted: 04:30pm 29 Oct 2023
Copy link to clipboard 
Print this post

  Volhout said  P.s. once released it will be the ultimate game for picomite. And I plan to send a picomite pre programmed to the 8 bit guy.


Careful you don't double up with Peter, I think he has said the same.

It will be quite interesting to see if David Murray actually says anything, < $30 of PicoMiteVGA is comparable to a > $300 Commander x16. IMO his last video seemed a bit "desperate" as if they are flailing around to work out what the x16 is for now that they have invested so much in it.

The x16 has more RAM, a higher-res display with more colours and possibly better sound (?) the PicoMite has a faster CPU and a significantly more powerful BASIC.

It gets tricky at the lower-level, the x16 can run native code "properly" whilst the PicoMite has its funny CSUB thing that is black magic to most.

Best wishes,

Tom
Edited 2023-10-30 02:32 by thwill
Game*Mite, CMM2 Welcome Tape, Creaky old text adventures
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4243
Posted: 04:41pm 29 Oct 2023
Copy link to clipboard 
Print this post

I think he expressed his surprise what a CMM2 can do in interpreted basic, one of Mauro's demos. This is interpreted basic as well.
Just press ctrl-c and edit the code with F4. That will get his attention.

Volhout
PicomiteVGA PETSCII ROBOTS
 
Print this page


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

© JAQ Software 2024