The Top 2

From Atariki

Jump to: navigation, search

Grafika:The_top_2.gif

Kontynuacja kultowej serii dema grupy WFMH na Atari XL/XE. Równie dobra jak poprzednik. Produkcja wymaga jedynie 64kB pamięci RAM. Ładuje się jako pojedynczy plik do pamięci, potem poszczególne części są dekompresowane w trakcie przechodzenia pomiędzy kolejnymi częściami. Autorzy produkcji (raczej z fałszywą skromnością) twierdzą, że na "The Top 2" składają się te części, które nie zmieściły się w The Top 1, a jednocześnie są zbyt kiepskie aby znalazły się w zapowiadanej na ekranie powitalnym trzeciej części tejże kultowej serii.

Demo składa się z pięciu części:

  • Digi part
  • Multi sinus scrolls
  • Sprite Scroller
  • 3MHz Demo
  • "In the Space"

Pomiędzy którymi przechodzi się za pomocą klawisz SHIFT, wyjątkiem jest tutaj część "3MHz Demo", z której to wychodzi się używając klawisza "RETURN".

Varia (głównie o kompresji)

Ponieważ program ładuje się na raz do pamięci i wymaga jedynie 64KB pamięci RAM, to aby udało wszystkie te części zmieścić w pamięci użyto dość zaawansowanej kompresji danych. Każda część programu dekompresuje się tuż przed uruchomieniem. Zastosowane algorytmy to zarówno proste "Kodowanie Długości Serii" (czyli tzw. RLE) jak i nieco bardziej zaawansowana technika kompresji jaką jest LZ77. Ponieważ w tamtym czasie nie istniał żaden tego typu program kompresujący dla ośmiobitowych komputerów Atari, a sama kompresja nie była zjawiskiem na tej platformie zjawiskiem powszechnym, Magnus skierował swoją uwagę w stronę rozwiązań stworzonych już w owym czasie na platformie Commodore. Analizując kod całej serii The Top można stwierdzić, że kompresji dokonano za pomocą Cruel Crunchera 2.0 na komputerze C64/C128. Świadczy o tym bliźniaczy kod procedury dekompresującej w którym pozostały fragmenty typowe typowe dla platform C64/C128, w tym odwołania w kodzie do rejestrów sprzętowych (np. do lokacji $D030 czy też $01). W pamięci można znaleźć również typowe dla w/w platform struktury danych, odpowiadające fragmentom programu Commodore BASIC (np. SYS 2059). Dlaczego wybrano platformę C64/C128? Procesory 65C02 (Atari) i 6510 (C64) są ze sobą w 99% zgodne sprzętowo i programowo, kod dekompresora pochodzący z C64 można bez większych zmian uruchomić bezpośrednio na Atari.

The Top 1 oraz The Top 3 również skompresowano w podobny sposób, z dużą dawką prawdopodobieństwa można przyjąć że właśnie te działania były zaczątkiem i inspiracją do stworzenia przez Magnusa zarówno Cruncher-a 4.64 (wykorzystującego tylko i wyłącznie algorytm RLE) a potem Cruncher-a 5.0 (który to korzystał już z RLE jak i LZ77).

Odnośniki

Personal tools