Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
hardware:custom_chipset [2010/03/05 17:51] 127.0.0.1 external edit |
hardware:custom_chipset [2010/03/09 10:01] (current) gilgamesh |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== Custom Chipset ====== | ====== Custom Chipset ====== | ||
- | The chipset is responsible for the Amiga' | + | The chipset is responsible for the Amiga' |
===== OCS ===== | ===== OCS ===== | ||
Line 10: | Line 10: | ||
=== Blitter === | === Blitter === | ||
- | The Blitter is co-processor logic that copies memory areas from one place to another in the chipmem asynchronosly. | + | The Blitter is co-processor logic that copies memory areas from one place to another in the chipmem asynchronosly |
+ | |||
+ | The Blitter operates on data words. It can perform bytewise and bitwise shifts. Up to three source blocks can be processed in a boolean logic function and the result is written to the destination block. | ||
+ | Rectangular // | ||
=== Copper === | === Copper === | ||
- | Copper is a co-processor that acts as a finite state machine with three states. It executes the so called copper list asynchronously from the CPU and in sync with the video beam. | + | Copper is a co-processor that acts as a finite state machine with three states. It executes the so called |
- | + | Its capabilities include programming the the Blitter, configuring | |
- | Its capabilities include programming the the Blitter, configuring | + | A typical scenario for the Copper is to wait for the video beam to reach a certain position and the move some data into specified hardware registers. |
- | + | Copper lists consist of only three types of commands, and can only change registers, but by programming | |
- | A typical scenario for the Copper is to wait for the video beam to reach a certain position and the move some data into specified hardware registers. Copper lists can consist of the following instructions: | + | |
- | * **WAIT** (2 word) waits until video beam counter is greater | + | |
- | * **MOVE** (2 word) moves data word into secified data register | + | |
- | * **SKIP** (2 word) skip next instruction if video beam counter is greater or equal the argument | + | |
- | During **WAIT** | + | |
==== Denise ==== | ==== Denise ==== | ||
- | (aka. Daphne) The Denise chip extracts the actual pixel data from bitplanes in memory. It also controls the video timings and resolution and sets the graphics modes like EHB, HAM or Dual Playfield. Denise contains the logic for hardware acceleration for displaying sprites and collision detection. | + | (aka. Daphne) The [[hardware/ |
=== Playfields === | === Playfields === | ||
Line 34: | Line 32: | ||
The bitfields and palette information combined produce the so called playfield, a rectangular area of pixels. Playfields can actually be larger than the nominal display size (PAL, NTSC; LoRes, HiRes) to allow smooth scrolling of backgrounds. | The bitfields and palette information combined produce the so called playfield, a rectangular area of pixels. Playfields can actually be larger than the nominal display size (PAL, NTSC; LoRes, HiRes) to allow smooth scrolling of backgrounds. | ||
+ | |||
+ | The display size is | ||
+ | ^ Resolution | ||
+ | | LoRes | 320 | :::| PAL | no | 256 | | ||
+ | | ::: | ::: | :::| ::: | yes | 512 | | ||
+ | | HiRes | 640 | :::| NTSC | no | 200 | | ||
+ | | ::: | ::: |::: | ::: | yes | 400 | | ||
==== Paula ==== | ==== Paula ==== |