View Single Post
Old 08 June 2017, 17:57   #30
dlfrsilver
CaptainM68K-SPS France
 
dlfrsilver's Avatar
 
Join Date: Dec 2004
Location: Melun nearby Paris/France
Age: 46
Posts: 10,413
Send a message via MSN to dlfrsilver
Quote:
The sprite/tile graphic data is planar, the display is NOT! The display is not generated from a planar bitmap, it is generated from a tile map and sprites.
Each tilemap is a virtual area 512x512, 1024x1024 and 2048x2048.

Those zones are Planar. The only thing that differs, is that it's a planar display without colors limitations !

If you basically mean that it's a PC like display, you're wrong !

The sega megadrive for instance is not using a planar display, it's a chunky tiled display !

Quote:
That's extremely important to understand because it has huge implications for the number of on-screen colours, scrolling, animation etc.
It has none. You're actually mixing up what the arcade hardware is and what a computer hardware is (the Amiga in occurence !).

Quote:
You almost get it... But the key thing to understand here is that the display is not any kind of bitmap, you can't blit stuff onto it. In fact I'm not sure you can even display graphic data from RAM on that system, I'd have to check.
Look, i'm not only talking about the CPS system, i've put my hands inside the code program of many games, and i have even crawled inside the game tiles metadatas !

I have extracted some sprites straight from Final Fight from Instance, so i know what i'm talking about !

The hardware doesn't give a fuck about the amount of bitplanes needed to display a sprite or tilemaps for levels ! If it need 5 BPL, it will use 5BPL, 8BPL if 8BPL is needed and so on !

Why and how ? because each tile is seperately managed as a seperated planar object !

Doing the same thing on Amiga would require considering what Anima shown something like 24 BPL for the whole game, as this game use for the whole game 1270 unique colors !

Quote:
The tiles are not rendered to a bitmap, they are read and displayed using DMA on the fly similar to how the Amiga reads bitplane data just as it is needed.
nope ! That's not how it works !

The Arcade code is building on startup the 3 tilemap layers, setting the color hardware registers, etc etc.

Each layer is a virtual space of a defined and limited size. the tiles are printed inside each tilemap thanks to the indications given by the tiles metadata inside the 68000 program.

There is no "hop, i trigger the DMA and hop i print on screen".

The roadmap is :

68000 is access a data space (tile metadata) inside the program code.
It then parse the amount of metadata size and then feed the graphics chips registers with them. Thanks to the protected GAL on each board of the hardware, this one knows exactly where can be found each type of tiles.
Once the graphics chip are processing and displaying the tiles, the 68000 is running the game logic during the whole VBL.

That's what a CPS engineers (read game programmer) explained.

The CPS hardware is doing parallel processing. Once the 68000 has fed the graphic system, the graphic system is doing its job, and the 68000 is not stopped, it continues to run the game logic !

That's another difficulty if you want to convert a CPS game on a computer with no hardware tile assistance.

the CPS system has some common points with the Sega Megadrive, with many differences however.
dlfrsilver is offline  
 
Page generated in 0.07575 seconds with 11 queries