PGR

From Atariki

(Różnice między wersjami)
Jump to: navigation, search
Wersja z dnia 14:19, 11 mar 2011
0xF (Dyskusja | wkład)
(opisałem próbując zrozumieć mój kod sprzed 15 lat :))
← Previous diff
Wersja z dnia 09:10, 21 mar 2011
0xF (Dyskusja | wkład)
(bit 7 to STA WSYNC, dzięki TeBe)
Next diff →
Linia 15: Linia 15:
* bit 5 - kolejny bajt zawiera wartość wpisywaną do akumulatora - LDA # umieszczane przed ewentualnymi NOPami i STA. * bit 5 - kolejny bajt zawiera wartość wpisywaną do akumulatora - LDA # umieszczane przed ewentualnymi NOPami i STA.
* bity 0-4: * bity 0-4:
-** w zakresie $00-$1B - bit 6 oznacza NOP, następnie jest STA $D0xx+** w zakresie $00-$1B - bit 6 oznacza NOP, następnie jest STA $D0xx, bit 7 oznacza, że następnie jest STA $D40A
** w zakresie $1C-$1F - bity 6 (o wadze 1), 7 (o wadze 2) ,0 (o wadze 4), 1 (o wadze 8) oznaczają 1-15 NOPów lub koniec linii skaningowej (STA $D40A) gdy 0. ** w zakresie $1C-$1F - bity 6 (o wadze 1), 7 (o wadze 2) ,0 (o wadze 4), 1 (o wadze 8) oznaczają 1-15 NOPów lub koniec linii skaningowej (STA $D40A) gdy 0.
[[Kategoria:Formaty plików]] [[Kategoria:Formaty plików]]

Wersja z dnia 09:10, 21 mar 2011

Format pliku Power Graphics.

Plik składa się z jednego bloku DOSowego rozpoczynającego się od $8206, czyli początkowe bajty to $FF, $FF, $06, $82, a następnie dwa bajty adresu ostatniego bajtu bloku.

Dane wg położenia w pamięci

  • $8206-$8207 - Adres zakodowanego programu (patrz niżej).
  • $8208-$820F - Napis "PowerGFX" w ASCII.
  • od $8210 - Display List.
  • $8300-$87FF - Grafika PMG.
  • $83F8-$8405 - Zawartość rejestrów GTIA $D000-$D00D na początku ramki.
  • $84F8-$8505 - Zawartość rejestrów GTIA $D00E-$D01B na początku ramki.
  • $8506 - Zawartość rejestru DMACTL. Bity 2 i 3 są też wpisywane do bitów 0 i 1 rejestru GRACTL.

Zakodowany program jest wykonywany w trakcie wyświetlania 240 linii obrazu i może manipulować rejestrami GTIA. Kodowanie programu:

  • bit 5 - kolejny bajt zawiera wartość wpisywaną do akumulatora - LDA # umieszczane przed ewentualnymi NOPami i STA.
  • bity 0-4:
    • w zakresie $00-$1B - bit 6 oznacza NOP, następnie jest STA $D0xx, bit 7 oznacza, że następnie jest STA $D40A
    • w zakresie $1C-$1F - bity 6 (o wadze 1), 7 (o wadze 2) ,0 (o wadze 4), 1 (o wadze 8) oznaczają 1-15 NOPów lub koniec linii skaningowej (STA $D40A) gdy 0.
Personal tools