kategoria: Grafika
[#1] Zapomniany tryb graficzny pozwalajacy wyswielic 256kolorow uzywajac jedynie 5 bitplanow na A500 (HAM5)
Witam wszystkim

Z okazji Świat i Nowego Roku dla wszystkich grzecznych dzieci/dorosłych (a Amigowcy z definicji są grzeczni) Mikołaj przyniósł Wam prezent w postaci konwertera do nowego/starego trybu graficznego naszej kochanej Amisi.

O tym trybie szczątkowe informacje można znaleźć na Wikipedia, jednak IMHO nikt wcześniej nie stworzył jakiegokolwiek narzędzia umożliwiającego jego wykorzystanie. Do tej pory był on trybem mocno teoretycznym ponieważ umożliwia on wykorzystanie 16 kolorów podstawowych i zmianę wyłącznie składowej niebieskiej. Stad 16kolorow podstawowych z których każdy może mieć ustawione 16 poziomów niebieskiego daje w efekcie 256kolorow.
Efekty konwersji są mocno uzależnione od obrazka wejściowego jednak da się przykładowo cos takiego uzyskać (107kolorow):


Konwersja do tego trybu na razie mocno eksperymentalna, a program znajdziecie tutaj:
http://mrsebe2.bplaced.net/ham_convert/

Amigowego Roku wszystkim obecnym życzę

Ostatnia aktualizacja: 27.12.2018 01:48:18 przez Trachu
[#2] Re: Zapomniany tryb graficzny pozwalajacy wyswielic 256kolorow uzywajac jedynie 5 bitplanow na A500 (HAM5)

@Trachu, post #1

szczerze... to slabo to wyglada jak na 107 kolorow. Przy dobrym ditheringu w EHB mozna ladniejsze obrazki robic.
[#3] Re: Zapomniany tryb graficzny pozwalajacy wyswielic 256kolorow uzywajac jedynie 5 bitplanow na A500 (HAM5)

@Trachu, post #1

O tym trybie szczątkowe informacje można znaleźć na Wikipedia, jednak IMHO nikt wcześniej nie stworzył jakiegokolwiek narzędzia umożliwiającego jego wykorzystanie. Do tej pory był on trybem mocno teoretycznym ponieważ umożliwia on wykorzystanie 16 kolorów podstawowych i zmianę wyłącznie składowej niebieskiej. Stad 16kolorow podstawowych z których każdy może mieć ustawione 16 poziomów niebieskiego daje w efekcie 256kolorow.


A to nie jest zwykly ham na 5 bitplanach? Opisany w Amiga Hardware Reference Manual strona 86.

Ostatnia aktualizacja: 27.12.2018 04:21:15 przez docent
[#4] Re: Zapomniany tryb graficzny pozwalajacy wyswielic 256kolorow uzywajac jedynie 5 bitplanow na A500 (HAM5)

@Trachu, post #1

Wygląda to trochę jak z C64. ;)

Gdzie masz wzmiankę o tym trybie? Wielokrotnie przeglądałem hasła na wiki i mi uciekło. Jak to działa? Mógłbyś zacytować lub rzucić linkiem? Czuję w kościach że to może być na bazie trybu "7bpp" z włączonym HAMem, ale może jest jeszcze coś o czym nie wiem. ;)

Wszystko byłoby fajnie gdyby HAM na A500 nie żarł tylu cykli - można by na tym może nawet jakąś grę zrobić. A tak to zostaje wyświetlanie obrazków.

Ostatnia aktualizacja: 27.12.2018 09:24:17 przez teh_KaiN
[#5] Re: Zapomniany tryb graficzny pozwalajacy wyswielic 256kolorow uzywajac jedynie 5 bitplanow na A500 (HAM5)

@teh_KaiN, post #4

Jest to zwykły tryb ham5. 7bpp to coś innego.
"If only five bitplanes are used, the data from the sixth plane is automatically supplied with the value as 0."
[#6] Re: Zapomniany tryb graficzny pozwalajacy wyswielic 256kolorow uzywajac jedynie 5 bitplanow na A500 (HAM5)

@Trachu, post #1

Kiedy wydasz ten program od multipalette, bo kolega mrsebe radzi sobie coraz słabiej w tym temacie?
[#7] Re: Zapomniany tryb graficzny pozwalajacy wyswielic 256kolorow uzywajac jedynie 5 bitplanow na A500 (HAM5)

@teh_KaiN, post #4

No cóż w Wikipedii jest jedno zdanie:

"A similar mode, HAM5, is also available but it's rather useless. In HAM5 the sixth bit is always zero, so only the blue color component can be modified"

jako źródło pokazujące właśnie Hardware Reference Manual. Tak wiec stad jest to tryb "zapomniany".

HAM5 zużywa mniej cykli niż HAM6 stad w przypadku obrazków które maja dużo niebieskiego może się sprawdzić.

A konwersja do HAM7 jest dopracowywana.
[#8] Re: Zapomniany tryb graficzny pozwalajacy wyswielic 256kolorow uzywajac jedynie 5 bitplanow na A500 (HAM5)

@Trachu, post #7

Wg mnie informacja na wiki o HAM7 jest wyssana z "czegoś". Ktoś coś poplątał i sobie coś wymyślił. HAM8 działa inaczej niż HAM6, ponieważ bity korygujące są na AGA najmłodszymi, na OCS są to najstarsze bity. Teoretyczne włączenie HAM7 spowoduje wyłączenie najstarszego bitu, a więc kompletnie bez sensu i zero powiązania z HAM5. Podobno tryb HAM5 nie działa na AGA. Myślę, że włączenie HAM7 też jest niemożliwe. Poza tym jest napisane, że HAM7 jest rzadko używany, więc poproszę przykłady. Dema z HAM5 istnieją, choćby od Lazy Bones.
[#9] Re: Zapomniany tryb graficzny pozwalajacy wyswielic 256kolorow uzywajac jedynie 5 bitplanow na A500 (HAM5)

@cholok, post #8

Ciężka noc czy Kac Poświętny? Bo w swojej wypowiedzi pooplatałeś chyba wszystko co można było poplątać :)
HAM5 jest czymś innym niż HAM7 i o ile ten ostatni jest szeroko stosowany ten pierwszy w ogóle.
[#10] Re: Zapomniany tryb graficzny pozwalajacy wyswielic 256kolorow uzywajac jedynie 5 bitplanow na A500 (HAM5)

@Trachu, post #9

Jeden przykład mnie uszczęśliwi. Chyba, że mylisz HAM7 z tzw. trybem "7-planes", ale to wtedy nieświeży karp nie był na moim stole.
[#11] Re: Zapomniany tryb graficzny pozwalajacy wyswielic 256kolorow uzywajac jedynie 5 bitplanow na A500 (HAM5)

@cholok, post #10

Po raz kolejny zwracam ci uprzejmie uwagę ze HAM5 jest czymś ZUPEŁNIE innym niż tzw. tryb HAM7. Ewidentnie mylisz te dwa pojęcia przez co nie wiem o co ci chodzi. Jeżeli masz jakieś uwagi co do HAM5 to proszę bardzo to jest odpowiedni czas i miejsce. Pozwolisz ze o HAM7 porozmawiamy w osobnym wątku.
[#12] Re: Zapomniany tryb graficzny pozwalajacy wyswielic 256kolorow uzywajac jedynie 5 bitplanow na A500 (HAM5)

@Trachu, post #9

Myślałem że mamy Gwiazdkę a nie Prylusa.
[#13] Re: Zapomniany tryb graficzny pozwalajacy wyswielic 256kolorow uzywajac jedynie 5 bitplanow na A500 (HAM5)

@Trachu, post #11

Po raz kolejny zwracam ci uprzejmie uwagę ze HAM5 jest czymś ZUPEŁNIE innym niż tzw. tryb HAM7.

Nigdzie nie napisałem, że jest.

Od początku. Napisałeś, że pracujecie na konwersją HAM7. Ja twierdzę tylko, że HAM7 nie istnieje, pomimo, że na wiki napisali: "A HAM7 mode is also available but not widely used". Wszystko na temat.
[#14] Re: Zapomniany tryb graficzny pozwalajacy wyswielic 256kolorow uzywajac jedynie 5 bitplanow na A500 (HAM5)

@cholok, post #13

Dobra już widze w czym rzecz. Pisales swoje odpowiedzi tak szybko i w kilku postach przez co ich nie widziałem pisząc moje. Na przyszlosc edytuj swoje poprzednie posty.

Napisz o HAM7 w osobnym watku bo wiedze masz o nim.

Nie wiem czy AGA obsluguje tryb HAM5. To ze nie wyswietla się poprawnie może być spowodowane brakiem wsparcia ze strony programu dla odczytu takich grafik. Niemniej jednak powinien.
[#15] Re: Zapomniany tryb graficzny pozwalajacy wyswielic 256kolorow uzywajac jedynie 5 bitplanow na A500 (HAM5)

@Trachu, post #14

Napisz o HAM7 w osobnym watku bo wiedze masz o nim.

Nie mam wiedzy, bo nie istnieje. Wy macie, bo piszecie konwerter, więc to ja poczekam.

Nie wiem czy AGA obsluguje tryb HAM5. To ze nie wyswietla się poprawnie może być spowodowane brakiem wsparcia ze strony programu dla odczytu takich grafik. Niemniej jednak powinien.
Widziałem wątki, że jednak nie. HAM5 jest wykorzystywany w demach nie tyle do wyświetlania obrazków, ale do różnych tricków np. wypełnianie wektorowe za free. Tony Wilen jak implementował HAM5 i 7bpp to napisał, że na AGA (wydaje się) nie działa.
[#16] Re: Zapomniany tryb graficzny pozwalajacy wyswielic 256kolorow uzywajac jedynie 5 bitplanow na A500 (HAM5)

@cholok, post #15

No dobra najwyraźniej jednak wiesz ze cos nie istnieje
Najwyrazniej rozni nas semantyka.
HAM7 na OCS, oznacza tryb w którym ustawiamy 7bitplanów i tryb HAM ale z uwagi na blad chipsetu cos takiego uruchamia tylko odczyt z pamięci 4 kontrolnych bitplanow, natomiast rejestry sterujące bitplanami 5 i 6 ustawiamy poprzez umieszczenie w nich stałego przyporządkowania kolejnych pixeli konkretnym składowym koloru np. RGBGRGBGRGBGRGBG
Cos takiego jest wykorzystywane w wielu demach i bezpośrednip NIE DZIALA na AGA.
Aby efekty HAM7 OCS wyswietlic na AGA trzeba umiescic detekcje i przelaczanie na zwykly tryb HAM6 który będzie miał zapelnione bitplane 5 i 6 tym samym powtarzalnym wzorem co wpisywaliśmy go do rejestrow.

HAM7 na AGA teoretycznie wymusza wlaczenie 7 bitplanow co w praktyce sprowadza się do tego ze mamy 2 bity sterujące i 5 kontrolnych. W efekcie paleta stalych kolorow wynosi 32, a ilość możliwych do zmian odcieni jest 32, czyli maksymalna ilość kolorow na ekranie mamy
32768kolorów. Czy faktycznie on działa nie wiem, natomiast jestem pewien ze wikszosc wypowiedzi na ten temat które znalazłem na sieci odnosily się do trybu HAM7 OCS, który bezpośrednio nie działa.

Poszperalem trochę za demami wykorzystującymi tryb HAM5 i faktycznie znalazłem dwa.
Efekt Globu


Efekt obracających się wektorów


Jak to działa, bo to jest naistotniejsze:
1. Otoz mamy palete 16 podstawowych kolorów z których każdy ma skladowa niebieską równą zero, stąd kolory zielono, żółto brązowe.
2. Mamy 5 bitplanów z czego 4 są kontrolne a piąty przyjmuje wartość 0 wtedy wybierany jest kolor z palety szesnastu, lub 1 wtedy zmieniana jest wartość składowej niebieskiej, a utrzymywana jest wartość składowej Red i Green.
3. Jeżeli na początku bity kontrolne są wyzerowane to niezależnie czy bit 5 ma wartość 1 czy 0 to w kazdym wypadku wskazują na kolor tła, lub w w przypadku gdy kolor tla ma skladowa niebieska rowna zero, na …. kolor tła
4. Co się dzieje w przypadku narysowania linii uzywajac jakiegokolwiek koloru podstawowego. Otoz na lewo od tej linii dalej mamy kolor tla natomiast na prawo od niej wszystko ma kolor tej linii. Skladowa niebieska dalej jest zero wiec dopóki nie narysujemy jakiejś innej linii z innym kolorem faktycznie kopiujemy wyświetlany kolor.
5. Efekt końcowy działa na zasadzie. Jeżeli bitplane5 rowna się jeden rysujemy nowy kolor, jeśli jest rowne zero, kopiujemy poprzedni.
6. Aby zakonczyc wypełnianie wektora, prawe linie rysujemy wskazując na kolor o indeksie 0 czyli tlo.
[#17] Re: Zapomniany tryb graficzny pozwalajacy wyswielic 256kolorow uzywajac jedynie 5 bitplanow na A500 (HAM5)

@Trachu, post #16

To co nazywasz HAM7 nazywa się 7-planes trick, bo tak nazwał go odkrywca, czyli coyote. Tryb ten działa nie tylko z HAM, ale też z EHB. Polecam odpowiedni wątek na EAB. Tryb ten na AGA nie działa, nie działa też analogicznie potencjalny tryb 9-planes.

To co ja nazywam HAM7 to agowski odpowiednik HAM5 i taki nie istnieje, a ktoś z rozpędu na wiki napisał, że jest rzadko używany. Tony Wilen jak testował 7bpl to napisał, że:
in AGA only HAM6 or HAM8 supported. HAM mode bit set with 5 or 7 planes seems to be ignored (OCS/ECS has "HAM5")

Teoretycznie, gdyby HAM7 działał. Wtedy paleta byłaby tak jak piszesz 32 kolorowa, ale kolor byłby 24-bitowy, czyli hamski kolor: najstarszy bit byłby zerowy, potem 5-bitów kontrolnych i 2 sterujące, które też stanowią składową koloru (dlatego są najmłodszymi). To kompletnie nie ma sensu.

Ale skoro już szukasz nowego trybu na AGA to jest taki: HAM6 AGA. Soft nawet na AGA zawsze ogranicza w HAM6 paletę do 12-bit. Pomijając system można ustawić paletę 24-bit w HAM6. Dałoby to niewielką poprawę, ale zawsze.
[#18] Re: Zapomniany tryb graficzny pozwalajacy wyswielic 256kolorow uzywajac jedynie 5 bitplanow na A500 (HAM5)

@Trachu, post #1

Temat mega ciekawy OK
[#19] Re: Zapomniany tryb graficzny pozwalajacy wyswielic 256kolorow uzywajac jedynie 5 bitplanow na A500 (HAM5)

@cholok, post #17

Jak glebiej się wczytac w watek zatytułowany ta twoja nazwa to mozna doczytac ze Coyote nie był pierwszym który to odkryl. Z uwagi na to ze nie było wtedy internetu nie można mowic o tym ze ktoś skopiowal od kogos, ale pare osob odkrylo to osobno.
Tym niemniej nazwa HAM7 jak najbardziej funkcjonuje i ja się z nia wielokrotnie spotkałem również na tym forum, ponieważ żeby uruchomić ten tryb nie wystarczy ustawić 7 bitplanow ale tez trzeba wlaczyc bit HAM. Oczywiście jest tez opcja EHB7, ale to temat na inny watek.

Wracajac do HAM5 to musze powiedzieć ze okazuje się ze jest jednak pare dem które go stosuja do obiektów 3d. Z uwagi ze je odkrycie nastapilo dość późno na początku ery AGA, nie jest on rozpowszechniony. Mozna tylko się domyslac jak szybko dzialalby Formula 1 grand Prix Microprose gdyby koder znal ten trick.

Tu kolejne demko wykorzystujące ten tryb:

Ten duzy obracający się w 50fps sześcian wykorzystuje ten tryb

Jak ktoś zna jeszcze jakies demko dawac je tutaj.

Ostatnia aktualizacja: 28.12.2018 21:54:24 przez Trachu
[#20] Re: Zapomniany tryb graficzny pozwalajacy wyswielic 256kolorow uzywajac jedynie 5 bitplanow na A500 (HAM5)

@Trachu, post #19

Jak glebiej się wczytac w watek zatytułowany ta twoja nazwa to mozna doczytac ze Coyote nie był pierwszym który to odkryl. Z uwagi na to ze nie było wtedy internetu nie można mowic o tym ze ktoś skopiowal od kogos, ale pare osob odkrylo to osobno.

Możliwe, ale to coyote opublikował to pierwszy na liście dyskusyjnej w 1994 roku.

Tym niemniej nazwa HAM7 jak najbardziej funkcjonuje

Zgadza się, ale ta nazwa jest nieprecyzyjna i prowadzi do nieporozumień. Przykłady:
I was initially kind of discouraged that HAM5 did not work on the 1200, but I just remembered it has HAM7

HAM5 just set the 6th bit to 0, so you could only hold-and-modify one colour channel (blue, IIRC). HAM7 would be HAM8's version of this concept.

Advanced Graphics Architecture HAM mode (HAM8)
A HAM7 mode is also available but not widely used.

In the 15 bit c2p I use a 8bpl ham8 screen in 1280*xxx, And writes to 5 planes.
On my MBX1230 50mhz board a 1280*192 ham7 is converted in 448 rasterlines (1.4 Frames)
Na stronie www.PPA.pl, podobnie jak na wielu innych stronach internetowych, wykorzystywane są tzw. cookies (ciasteczka). Służą ona m.in. do tego, aby zalogować się na swoje konto, czy brać udział w ankietach. Ze względu na nowe regulacje prawne jesteśmy zobowiązani do poinformowania Cię o tym w wyraźniejszy niż dotychczas sposób. Dalsze korzystanie z naszej strony bez zmiany ustawień przeglądarki internetowej będzie oznaczać, że zgadzasz się na ich wykorzystywanie.
OK, rozumiem