1 Ostatnio edytowany przez nosty (2006-07-18 10:57:09)

Probuje przekonwertowac sobie bitmape z pieca na format "pamieci ekranu" w trybie 9 (OS) - 80x192 w 16 odcieniach sepii.
Chcialem uzyc G2F: wczytac BMP i zgrac obrazek w formacie MIC.
Ustawilem w nim Screen=40 bajtów, Pixel=4x1.
W instrukcji jest napisane, ze program wczytuje pliki Windows BMP w dowolnym formacie.
Probuje wczytac bitmape o rozdzielczosci 80x192, 24-bity. Dostaje komunikat:
"Pixel format <> 4 bits  per Pixel"
No to probuje wczytac bitmape o rozdzielczosci 80x192, przekonwertowana do grayscale i z iloscia odcieni obcieta do 16. Obraz sie wczytuje i w odleglych zarysach widac ze ksztalt przypomina oryginal, ale za cholere nie wyglada jak on - tak jakby paleta sie kompletnie nie zgadzala.

Co robie zle?
------
Juz wiem - G2F zle dziala w tym trybie
Zrobilem probe: wygenerowalem prosty obrazek 80x192 zawierajacy 3 figury o roznych odcieniach szarosci i zapisalem jako BMP.
Wczytalem to do G2F i ksztalt byl ok, ale po pierwsze figury mialy inne odcienie niz powinny (i nie chodzi o roznice w odwzorowaniu ale wogole sie nie zgadzaly - ta, ktora byla jasniejsza stala sie ciemniejsza a druga figura odwrotnie). Dodatkowo krawedzie figur zmienily kolory.
Wnosze, ze G2F nie rodzi sobie dobrze z interpretacja kolorow wczytywanej bitmapy zapisanej w takim formacie :(

2

Nie potrzebujesz G2F. Konwertujesz obrazek jakimkolwiek fotoszopem do odpowiednich rozmiarów i 16 odcieni (zwróć uwagę na kolejność odcieni w palecie!), flipujesz wertykalnie, zapisujesz jako BMP bez kompresji, na Atari wczytujesz obcinając nagłówek, pi razy oko to będzie w tym przypadku jakieś 120 bajtów, ale to sobie już na czuja dograsz.

Hitler, Stalin, totalniak, SSman, NKWDzista, kaczor dyktator, za długo byłem w ChRL, wypowiadam się afektywnie.

3

rzeczywiscie - doczytalem opis formatu BMP
thx epi :)

4

g2f zlicza sobie kolory ktore wystepuja na obrazku i na podstawie czestotliwosci ich wystepowania przyporzadkowuje je do kolejnych rejestrow koloru, tak wiec kolor ktory najczesciej wystepuje bedzie kolorem tla (712), potem kolejno 708, 709 itd.

dla trybu 9 będę musiał zabronić mu liczyć kolory, wtedy będzie ok

*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C

5

Mozna uzyc tez APACView/JView na Atarce... :)

6

tebe - to chyba cos innego
troche sie pospieszylem z diagnoza. Zrobilem dalsze testy wczytujac "recznie" do pamieci ekranu trybu 9 bitmape z pieca (80x192 grayscale 4bity na pixel).
Okazalo sie, ze zarowno Atari jak i G2F w sposob prawidlowy i "naturalny" interpretuja kodowanie odcienia pixela na polbajcie: $0 - czarny, potem stopniowo coraz jasniejszy az do $F - bialy.
Tymczasem na piecu jest to chyba jakos inaczej. Czarny i bialy sie zgadzaja ale odcien czarego $B jest na biecu jasniejszy niz $D. Zglupialem troche.

A znieksztalcenia kolorow na krawdedziach obiektow tez sie wyjasnily - myslalem ze zrobilem tylko 3 obiekty w 3 odcieniach szarosci. Zapomnialem ze robilem reskalowanie do 80x192 i wtdedy IrfanView zrobil mi to inteligentnie resamplujac i robiac plynne przejscia za pomoca innych odcieni.

Szukam dokladniejszego opisu formatu BMP w sieci.

7

http://en.wikipedia.org/wiki/Windows_bitmap - a to Ci nie wystarczy?

Sikor umarł...

8

wystarczy :) brakowalo mi opisu zapamietywania palety kolorow po naglowku
dziex