PIC (Paint 256)

From Atariki

(Różnice między wersjami)
Jump to: navigation, search
Wersja z dnia 07:56, 4 sie 2022
Mono (Dyskusja | wkład)

← Previous diff
Wersja z dnia 11:29, 4 sie 2022
Seban (Dyskusja | wkład)
(+prosty "viewer" w TBXL dla tegoż formatu plików.)
Next diff →
Linia 2: Linia 2:
Obraz zawiera surowe dane dwóch obrazów 80x96 pikseli w trybie [[Graphics 9]] i [[Graphics 11]] umieszczonych kolejno po sobie. Każdy obraz stanowi 96 linii po 40 bajtów, czyli 3840 bajtów ($0F00), a więc łącznie 7680 bajtów ($1E00). Obraz zawiera surowe dane dwóch obrazów 80x96 pikseli w trybie [[Graphics 9]] i [[Graphics 11]] umieszczonych kolejno po sobie. Każdy obraz stanowi 96 linii po 40 bajtów, czyli 3840 bajtów ($0F00), a więc łącznie 7680 bajtów ($1E00).
 +
 +Format pliku jest na tyle prosty że można go bez problemu obsłużyć z poziomu chociażby [[Turbo BASIC XL]], posiłkując się jedynie prostą wstawką (w kodzie maszynowym) służącą do przełączania pomiędzy trybami [[Graphics 9]]/[[Graphics 11]]. Przykładowy program ładujący i pokazujący obrazek w tym formacie może wyglądać tak:
 +{{grafr|Paint256_example_pic.png}}
 + 10 DIM F$(32):GOSUB 30
 + 11 GRAPHICS 0:?
 + 12 INPUT "ENTER FILENAME ";F$
 + 13 TRAP 25:OPEN #1,4,0,F$
 + 14 GRAPHICS 9
 + 15 SCR=DPEEK(88):GOSUB 20
 + 16 SCR=DPEEK(88)+40:GOSUB 20
 + 17 CLOSE #1
 + 18 X=USR(1536):POKE 764,255
 + 19 GOTO 11
 + 20 ------------------------------
 + 21 FOR I=0 TO 95
 + 22 BGET #1,SCR,40:SCR=SCR+80
 + 23 NEXT I
 + 24 RETURN
 + 25 ------------------------------
 + 26 GRAPHICS 0:?
 + 27 ? "Error #";ERR;" at line #";ERL
 + 28 END
 + 29 ------------------------------
 + 30 DIM A$(128):RESTORE 35:READ A$
 + 31 FOR I=0 TO $24
 + 32 POKE $0600+I,DEC(A$(I*2+1,I*2+2))
 + 33 NEXT I
 + 34 RETURN
 + 35 DATA A90FCD0BD4D0FBA2C2AD6F028D0AD48D1BD049808D6F02CAD0EFAD0FD22904D0DF68606860
[[Kategoria:Atari 8-bit]] [[Kategoria:Atari 8-bit]]
[[Kategoria:Formaty plików]] [[Kategoria:Formaty plików]]

Wersja z dnia 11:29, 4 sie 2022

Format pliku programu Paint 256 zawierającego obraz o rozdzielczości 80x96 bez interlace wykorzystujący efekt "PAL Blending".

Obraz zawiera surowe dane dwóch obrazów 80x96 pikseli w trybie Graphics 9 i Graphics 11 umieszczonych kolejno po sobie. Każdy obraz stanowi 96 linii po 40 bajtów, czyli 3840 bajtów ($0F00), a więc łącznie 7680 bajtów ($1E00).

Format pliku jest na tyle prosty że można go bez problemu obsłużyć z poziomu chociażby Turbo BASIC XL, posiłkując się jedynie prostą wstawką (w kodzie maszynowym) służącą do przełączania pomiędzy trybami Graphics 9/Graphics 11. Przykładowy program ładujący i pokazujący obrazek w tym formacie może wyglądać tak:

Grafika:Paint256_example_pic.png

10 DIM F$(32):GOSUB 30
11 GRAPHICS 0:? 
12 INPUT "ENTER FILENAME ";F$
13 TRAP 25:OPEN #1,4,0,F$
14 GRAPHICS 9
15 SCR=DPEEK(88):GOSUB 20
16 SCR=DPEEK(88)+40:GOSUB 20
17 CLOSE #1
18 X=USR(1536):POKE 764,255
19 GOTO 11
20 ------------------------------
21 FOR I=0 TO 95
22   BGET #1,SCR,40:SCR=SCR+80
23 NEXT I
24 RETURN 
25 ------------------------------
26 GRAPHICS 0:? 
27 ? "Error #";ERR;" at line #";ERL
28 END 
29 ------------------------------
30 DIM A$(128):RESTORE 35:READ A$
31 FOR I=0 TO $24
32   POKE $0600+I,DEC(A$(I*2+1,I*2+2))
33 NEXT I
34 RETURN 
35 DATA A90FCD0BD4D0FBA2C2AD6F028D0AD48D1BD049808D6F02CAD0EFAD0FD22904D0DF68606860
Personal tools