Prototyp:Sonic the Hedgehog 3
Ta strona opisuje prototypy Sonic the Hedgehog 3.
Ten prototyp jest udokumentowane na Hidden Palace.
| Pobierz Sonic the Hedgehog 3 (Prototyp 3 Listopada, 1993)
Plik: Sonic the Hedgehog 3 (Nov 3, 1993 prototype).bin (2 MB) (info)
|
| Tej stronie brakuje obrazów. Ta strona ma masę słów, ale niedużo obrazów. Proszę napraw to. |
Prototyp z 3 listopada 1993 r Sonic the Hedgehog 3 został udostępniony 16 listopada 2019 r. jako finał Miesiąca Sonica Hidden Palace. Jest to pierwszy i obecnie jedyny prawdziwy prototyp „Sonic 3”, który został odkryty, ponieważ wszystkie poprzednie przedpremierowe obrazy ROM pasują do wersji końcowej. Chociaż etykiety EPROM podają datę 3 listopada 1993, nagłówek ROM sugeruje, że dane mogą pochodzić z końca października.
Data październikowa ma sens, biorąc pod uwagę, że ta kompilacja jest szalenie niekompletna jak na grę, która miała zostać ukończona pod koniec listopada. Powstał w czasie, gdy Sonic 3 zaczynał być dzielony na dwie oddzielne gry. Różnice obejmują wczesne sprite'y, palety, umiejętności postaci, brakujące przejścia aktów i inną muzykę, która później została wykorzystana Sonic & Knuckles Collection. Strefa Flying Battery (która została przeniesiona do Sonic & Knuckles) jest nadal domyślnie obecna, a Lava Reef również znajduje się głęboko w ROMie. Jest też strasznie zabugowany, szczególnie jeśli chodzi o muzykę.
Prototyp wydaje się być tym samym, który został zaprezentowany w Sega Magazine w grudniu 1993 roku, biorąc pod uwagę, że wszystkie zrzuty ekranu są identyczne 1:1 z tym, co widać w tym prototypie.
Do Zrobienia:
|
Contents
Podstrony
| Różnice Etapowe Niektóre mniejsze, niektóre większe, niektóre nie do zagrania. |
| Różnice Dźwięku Dlaczego są tutaj rzeczy z Sonic & Knuckles Collection? |
| Pozostałości Danych Lazurowe Jezioro bez jeziora? |
Różnice w Rozgrywce
- Sonic ma ruch w stylu Drop Dash, który można wykonać, przytrzymując Góra na padzie kierunkowym, a następnie podskakując. Sonic i Knuckles mogą również korzystać z tej umiejętności w trybie rywalizacji.
- Tarcze żywiołów nie mają konkretnych efektów.
- Pierścienie Etapu Specjalnego nie są obecne, chociaż wszystkie ich lokalizacje są.
- Insta-tarcza nie jest jeszcze obecna.
- Mimo że nad punktami kontrolnymi pojawiają się iskierki, gdy Sonic ma 50 pierścieni, etapy bonusowe są niedostępne podczas normalnej gry.
- Bardzo łatwo jest przecisnąć się w ściany z powodu niedokończonych kolizji.
- Tails będzie latać zamiast pływać podczas próby latania pod wodą, a także jest w stanie przenosić Sonica pod wodą.
- Umiejętność lotu Tailsa jest niepełna, a każde naciśnięcie skoku spowoduje maksymalną lewitację, niezależnie od prędkości upadku.
- Tails nie może zmienić kierunku lotu, jeśli skacze z zakrzywionej rury.
- Tails nie może się zmęczyć lataniem lub pływaniem.
- Tails nie może wejść w tryb debugowania.
- Super Sonic został częściowo zaimplementowany i ma możliwość strzelania pierścieniami, co zostało usunięte z wersji finalnej.
- Nie zaimplementowano „testu animacji”, do którego dostęp uzyskuje się przez naciśnięcie B + C w trybie debugowania.
- Wiele przejść między etapami nie zostało jeszcze prawidłowo zaimplementowanych, więc w większości przypadków wymagany jest wybór poziomu, aby przejść do następnej strefy.
- Obiekty, na których Sonic może się przyczepić, nadal zachowują się jak Wing Fortress z Sonic 2 - Sonic nie zwija się w kulę podczas skoku, a jego animacja pozostaje ta sama.
- Poziomy trybu rywalizacji są bardziej kompletne niż te dla jednego gracza, a nawet zawierają sprite'y graczy z ostatniej gry. Jest jednak kilka rzeczy, które zostały zmienione:
- Tryby Grand Prix i Time Trial (a także opcje monitorów) nie istnieją z powodu braku menu dla tego trybu.
- Licznik HUD używa dwukropka do oddzielenia minuty od sekund, w przeciwieństwie do wersji finalnej, która używa symboli prim.
- Prototyp zawiera małe znaczniki w pobliżu czarnej linii, które pokazują pozycje dwóch graczy. Często zmieniają się między trzema sprite'ami z nieznanych powodów. Zostały one usunięte w finalnej grze, ale ich sprite'y nadal istnieją w danych.
- Licznik okrążeń używa niebiesko-żółtej palety tekstu „TIME” zamiast finalnej czerwono-białej palety.
- W Chrome Gadget, okrążenie można ukończyć, przeskakując nad słupkiem bramki.
- Gra ogłosi GOAL na 6. okrążeniu, a nie na ostatecznym 5. okrążeniu, ale wyścig nigdy się nie kończy. W rezultacie wyścigi mogą przejść aż do okrążenia 9, co skutkuje przetoczeniem się do 0 i kontynuowaniem stamtąd.
Demonstracja
Demo dla Strefa Angel Island Akt 1 wydaje się być przeznaczone dla starszej wersji, ponieważ po pewnym czasie desynchronizuje się. Istnienie tego demo pokazuje również, że gra musiała być pokazana gdzieś w prywatnym miejscu, ponieważ wszystkie Prototypy Sonica z nagranymi demami były pokazywane na jakiś wydarzenach. Inne dziwne osobliwości to: intro z deską surfingową wyspy Angel Island jest zakodowane specjalnie dla wersji demonstracyjnej, kiedy demo osiąga Knucklesa, gracz demo wchodzi z nim w interakcję, co oznacza, że Knuckles istniał w starszej wersji. Gracz demonstracyjny wykonuje kilka ruchów, które wskazują że układ obiektów jest zupełnie inny w starszej wersji, a demo faktycznie przechodzi aż do przejścia aktu 1, pokazując wszystkie sztuczki w Strefa Angel Island, co dodatkowo potwierdza, że to demo mogło być przeznaczone do prywatnej prezentacji.
Super Sonic
Kodowanie dla Super Sonica istnieje, mimo że nie utworzono jeszcze specjalnych etapów, co uniemożliwia zdobycie jakichkolwiek Szmaragdów Chaosu. Można się do niego dostać tylko poprzez zniszczenie monitora S. Większość kodu jest ponownie wykorzystywana z Sonic 2, z kilkoma poprawkami: muzyka niezwyciężoności jest odtwarzana zamiast używania unikalnej ścieżki dźwiękowej, a cykliczność palet została dostosowana, aby używać tylko trzech kolorów w palecie Sonica zamiast czterech kolorów że wymaganych w Sonic 2.
Jednak faktycznie używane kolory są nadal oparte na formacie palety z Sonic 2 (gdzie najpierw indeksowany jest najciemniejszy błękit w palecie Sonica, a następnie stopniowo jaśniejsze odcienie niebieskiego) zamiast formatu używanego w ostatecznej wersji Sonic 3 (gdzie najpierw indeksowany jest najjaśniejszy niebieski kolor, a następnie ciemniejsze odcienie). W związku z tym palety zarówno dla palety Super Sonic, jak i Sonica po zakończeniu transformacji są uszkodzone.
Różnice Graficzne
| Sonic 2 | Prototyp | Wersja Finalna |
|---|---|---|
|
|
|
| Sonic 2 | Prototyp | Wersja Finalna |
|---|---|---|
|
|
|
- Sprite'y Sonica i Tailsa są prawie takie same jak te w Sonic 2, aczkolwiek są zaktualizowane dla palety z Sonic 3. Jednak w przypadku Sonica istnieje kilka dodatkowych sprite'ów unikalnych dla tego prototypu.
- Tarcze Ognia wykorzystują inną grafikę i zawsze nakładają się na gracza.
- Liczby HUD mają pewne cieniowanie, które ostatecznie zostało usunięte. Połysk na tekście HUD jest również większy.
- Ani Sonic, ani Tails nie mają zwycięskiej pozy, zamiast tego po zakończeniu aktu używają swoich sprite'ów „zranienia”.
- Tarcza bąbelkowa wykorzystuje prostszą grafikę w porównaniu do ostatecznej.
- Brakuje gwiazdek niezwyciężoności, ale pojawiają się one wykorzystujące grafikę Tarczy Ognia, jeśli gracz ma Tarczę Ognia.
- Niektóre klatki Tarczy Błyskawicy nie zostały prawidłowo ustawione.
- Grafika "Game Over" i "Time Over" nadal korzysta ze sprite'ów Sonic 2, a zatem wygląda niepoprawnie z paletą używaną w Sonic 3.
| Prototyp | Wersja Finalna |
|---|---|
![]() |
![]() |
- Karty tytułowe poziomów wykorzystują inną grafikę, wybierając ciemnoczerwony zamiast jaskrawoczerwonego widocznego w finale. Dodatkowo podkreślenie pod tekstem SONIC 3 jest czerwone zamiast żółtego i rozciąga się tylko pod częścią tekstu. Tylko etapy 1P mają w tym momencie zaimplementowane karty tytułowe.
- Wiele sprite'ów, takich jak woda za deską surfingową Sonica, gdy surfuje na Wyspę Aniołów, jest uszkodzonych.
- Większość palet obiektów nie jest sfinalizowana.
- Ikony szybkich butów i ciężkich butów w trybie zawodów mają różne ikony:
| Prototyp | Wersja Finalna |
|---|---|
- Tekst GOT THROUGH widziany po zakończeniu aktu ma zauważalnie prostsze cieniowanie.
- Tekst ukończenia aktu Knucklesa też jest inny:
| Prototyp | Wersja Finalna |
|---|---|
Ekran SEGA
| Prototyp | Wersja Finalna |
|---|---|
![]() |
![]() |
Ekran SEGA nadal jest w dużej mierze oparty na tym z Sonic 2.
- Z powodu błędu w kodzie usuwana jest zbyt duża ilość pamięci RAM, co powoduje zaczernienie całej palety kolorów w pamięci RAM. To cudem nie było problemem w Sonic 2, ponieważ pamięć RAM była inaczej ułożona. Można to naprawić za pomocą następującego kodu 034634:00FF.
- Sprite'y Sonica zostały zaktualizowane, aby używać nowej palety gracza, ale ekran SEGA nadal ładuje starą paletę gracza z Sonic 2.
- Chociaż może się to nie wydawać, biorąc pod uwagę obecny stan, wprowadzono pewne zmiany w kodzie, aby działały z nowym silnikiem Sonic 3.
- Dźwięk „SEGA!” jest nieco stłumiony.
Ekran Tytułowy
| Prototyp | Wersja Finalna |
|---|---|
![]() |
![]() |
Ekran tytułowy wykorzystuje bardzo, bardzo podstawową grafikę. Konkretne różnice wizualne obejmują:
- W ogóle nie ma tła - finał dodaje ładną panoramę Strefy Angel Island. Oznacza to również brak Tailsa (i Knucklesa w Sonic 3 & Knuckles) oraz Tornado.
- Renderowanie Sonica nie zostało wcale zmienione od czasu konwersji do 4bpp, a paleta wydaje się być generowana komputerowo, dlatego pojawiają się problemy z blokowaniem kolorów. Schemat kolorów banera w logo został zmieniony z jasnoniebiesko-białego na czerwono-biały, a samo logo zostało zmienione z ciemnoniebieskiego z pomarańczowymi konturami (sposób, w jaki tekst był prezentowany na grafice pudełka w poprzednich tytułach) na żółty z ciemnoniebieskimi konturami. Obok banera nie ma również symbolu znaku towarowego.
- Model pierścienia i samego Sonica wydaje się być ten sam, ale z pewnymi różnicami, źrenice Sonica są bardziej okrągłe, palce grubsze, a uszy pozbawione wnętrza. Zaktualizowano położenie pierścienia oraz oświetlenie. Ostateczny render lepiej wykorzystuje przestrzeń kolorów, ponieważ roztrząsa kolory tam, gdzie nie działa renderowanie prototypowe. Usta Sonica są również całkowicie nieobecne w renderze, co oznacza, że były dorysowane, gdy została dodane do renderu z ostatecznej gry. Sonic również nie jest animowany, chociaż baner wciąż podskakuje w górę i w dół. Reszta jego ciała znajduje się pod pierścieniem, w przeciwieństwie do wersji finalnej.
- Tekst z napisem „Sonic the Hedgehog” pod logo jest sfinalizowany – ten prosty tekst znalazł się w ostatecznej wersji gry.
- Tekst „Copyright 1994 SEGA” jest nieobecny, co jest prawdopodobnie bardziej oczywiste.
- Naciśnięcie Góra, Góra, Dół, Dół, Góra, Góra włączy tryb debugowania.
- Brak opcji menu. Naciśnięcie Start automatycznie przenosi gracza do wyboru poziomu.
- Użycie kodu poprawki FFFFD0:0000 wyłączy wybór poziomu. Spowoduje to natychmiastowe rozpoczęcie gry w Strefie 1, tak jak w Sonic 1 i Sonic 2. To jednak nie wyłącza funkcji miękkiego resetowania (pauza, A) lub przesuwania klatek (pauza, B).
Granie jako Tails lub Knuckles
Możesz grać różnymi postaciami, naciskając następujące kombinacje przycisków na ekranie tytułowym:
- Sonic & Tails: A + Start
- Tylko Sonic: B + Start
- Tylko Tails: C + Start
Możesz także grać różnymi postaciami, używając kodów FFEF4C:000? FFFF08:000? FFFF0A:000?, gdzie "?" jest jednym z następujących:
- 0 - Sonic & Tails
- 1 - Sonic
- 2 - Tails
- 3 - Knuckles (zamiast tego użyje sprite'ów Tailsa)
Tails i Knuckles mają jednak problemy graficzne ze swoimi drogowskazami końca poziomu:
| Tails | Knuckles |
|---|---|
![]() |
![]() |
- Grając Tailsem, drogowskaz będzie wyświetlał niebieskiego Knucklesa zamiast wizerunku Tailsa.
- Knuckles ma dane w grze, a jego wizytówka nadal jest obecna, chociaż podczas gry nim, drogowskaz załaduje obraz Robotnika zamiast Knucklesa.
- Podczas gry jako Knuckles, obiekt gracza nie ustawia prawidłowo płaszczyzny kolizji po pojawieniu się, co bardzo utrudnia nawigację po etapach. Ustawienie adresu pamięci FFB046 na 0x0C rozwiąże ten problem.
Wybór Poziomu
Prawie taki sam jak w ostatecznej grze, chociaż nie odtwarza muzyki, przez co motyw wyboru pliku jest nieużywany. Kolejną różnicą jest to, że naciśnięcie B, gdy zaznaczona jest opcja Test dźwięku, spowoduje odtworzenie dźwięku brzęczyka błędu.
Podobnie jak w finalnej grze, żadna ze stref Sonic & Knuckles nie może być domyślnie wybrana (z wyjątkiem Flying Battery). W przeciwieństwie do gry finałowej, wszystkie etapy bonusowe są dostępne (ostatni akt 2P VS przechodzi do automatu do żucia, podczas gdy dwa akty „Bonusowe” przechodzą do etapów bonusowych Sonic & Knuckles).
Poniższe kody Pro Action Replay mogą zostać użyte do odzyskania dostępu do tych stref:
| Strefa | Kod Aktu 1 | Kod Aktu 2 |
|---|---|---|
| Mushroom Valley | 005C0E:0700 | 005C10:0701 |
| Sandopolis | 005C12:0800 | 005C14:0801 |
| Lava Reef | 005C16:0900 | 005C18:0901 |
| Sky Sanctuary | 005C1A:0A00 | 005C1C:0A01 |
| Death Egg | 005C1E:0B00 | 005C20:0B01 |
| The Doomsday | 005C2A:0C00 | 005C2A:0C01 |
| ID 0D | 005BF2:0D00 | 005BF4:0D01 |
| Lava Reef Akt 3/Boss | 005BF6:1600 | |
| Hidden Palace | 005BF8:1601 | |
| Finałowy Boss Death Egg | 005BFA:1700 | |
| Hidden Palace (Etap Specjalny) | 005BFC:1701 |
Każdy poziom można odtworzyć poprzez wybór poziomu. Lava Reef, Sky Sanctuary i Death Egg są dostępne odpowiednio za pomocą pierwszej, drugiej i trzeciej opcji trybu VS dla 2 graczy, podczas gdy Doomsday używa opcji testu dźwięku. Etap bonusowy automatu z gumą do żucia można rozegrać, wybierając opcję „Bonus”. Dostęp do „ID 0D” można uzyskać, wybierając Akt 1 i 2 Wyspy Aniołów. Akt 3 Rafy Lawy i Ukryty Pałacu można rozegrać, wybierając Hydrocity. Wreszcie, finałowy boss Death Egg i Hidden Palace (Special Stage Ring) są dostępne za pośrednictwem Aktu 1 i 2 Marble Garden.
Resztki Menu z Sonic 2
Ustawiając tryb ekranu gry na $24, możesz uzyskać dostęp do menu opcji z Sonic 2. Alternatywnie możesz użyć kodu łatki FFF600:2400 lub zhakować menu z powrotem samodzielnie. Podobnie jak w przypadku wyboru poziomu, nie jest odtwarzana żadna muzyka.
Naciśnięcie Start rozpocznie grę na Angle Island z wybraną postacią. Test dźwięku może być również użyty do wprowadzenia określonych kodów Sonic 2.
- Wybór Poziomu: Chociaż domyślnie włączony, kod wyboru poziomu można wprowadzić, odtwarzając dźwięki 19, 65, 09, 17 (17 września 1965 to urodziny Yuji Naka).
- Dodatkowe Kontynuacja: ABy otrzymać 14 dodatkowych kontynuacji odtwórz dźwięki 01, 01, 02, 04. W przeciwieństwie do Sonic 2, ten kod odtwarza motyw kontynuacji, który w innym przypadku nie jest używany w tym prototypie.
Można również znaleźć opcję wyboru poziomu dla 2 graczy z Sonic 2 za pomocą kodu poprawki FFF600:1C00. Jednak wybranie dowolnej strefy na tym ekranie spowoduje powrót do ekranu tytułowego, więc tak naprawdę nie możesz nic zrobić w tym menu. Dane dla menu wyników Sonic 2 również istnieją, ale nie można ich zobaczyć, ale całe kodowanie zostało usunięte.
Niewykorzystane Przedmioty i Wrogowie
| ID | Offset | Nazwa | Opis |
|---|---|---|---|
| 0B | 0001B338 | Sfery Eozjańskie | Masa sfer, które można postawić w Akcie 1 Strefy Angel Island w trybie debugowania. Warto zauważyć, że kodowanie obiektu jest oddzielone od testowych odcinków specjalnych, pomimo podobnego zachowania. |
| 12 | 0001C6A0 | Platforma LBZ | Zepsuta platforma, która wydaje się należeć do Strefy Launch Base. |
| 1A | 0001DFCE | Działo prędkości? | Obiekt przypominający huśtawkę, który zmusza Sonica do bardzo szybkiego biegu po naciśnięciu przycisku skoku. Wydaje się należeć do LBZ. |
| 1C | 0001E6C6 | Wirujący Kolec? | Bardzo dziwny obiekt, który wydaje się wirować. Wydaje się należeć do LBZ. |
| 1D | 0001C228 | Platforma Chwytająca | Jedna z platform LBZ, ale z „chwytaczem” pod spodem, który może pomieścić Sonica. Jego mapowania kafelków wydają się nieco zniekształcone. |
| 84 | 00040704 | Hey Ho | Bardzo zepsuta wersja Hey Ho, bossa Mushroom Valley Akt 1. |
| 86 | 0003F11A | Rakieta Wiązkowa | Wczesna wersja bossa Strefy Launch Base Akt 2. |
| 90 | 00049FB6 | Fireworm? | Badnik Fireworm dla Lava Reef Zone. Crashuje grę podczas próby DMA nieistniejących sprite'ów. |
| 91 | 0004A29C | Iwadomoki | Eksplodujący badnik "fałszywy kamień". Może spowodować crash gry. |
| 92 | 0004A400 | Toxomister | Chmury dymu nie ranią Sonica; tylko go spowalniają. |
| 93 | 000495CC | Madmole | Grzyby, które rzuca, mają przesadny wpływ na Sonica. Pojawia się w układzie obiektów Mushroom Valley. |
| 94 | 000499BC | Mushmeanie | Odbijający się przeciwnik grzybowy ze Strefy Mushroom Valley. |
| 95 | 00049B24 | Ważka | Lata w górę i w dół, jak w grze finałowej. |
| 96 | 00049DCA | Butterdroid | Motyl badnik z Strefy Mushroom Valley. |
| 97 | 00049E50 | Cluckoid | Badnik z kurczaka ze Strefy Mushroom Valley. |
| 98 | 0004107E | Golem Sandopolis | Miniboss ze Strefy Sandopolis. |
| B1 | 00039F9E | Boss Knucklesa z MGZ2 | Wariant Knucklesa Aktu 2 Strefy Marble Garden. Chociaż jest zakodowany, nie jest umieszczony w poziomie. |
| B6 | 0003CE96 | Bariera Eggmana w FBZ2 | Mid-boss z Aktu 2 Strefy Flying Battery. Chociaż jest zakodowany, tak naprawdę nie jest umieszczony na scenie. |
| C5 | 0004178A | Ukryte Monitory | Ukryte monitory, które mogą zostać ujawnione przez spadający drogowskaz. |
| CA | 00035AD2 | Intro z Tornado | Sonic podczas sekwencji intro Angel Island. |
| N/A | 0001AA34 | Test Skalowania Sprite'ów | Kolejny obiekt, który można spawnąć w Akcie 1 Strefy Angel Island w trybie debugowania. Wykorzystuje algorytm do skalowania sprite'ów, chociaż oryginalna grafika nie jest już obecna w pamięci ROM. |
| N/A | 0000F972 | Klasyczna Tarcza | Nieelementarna tarcza widziana w Sonic 1 i Sonic 2 istnieje w stanie funkcjonalnym, aczkolwiek jest nieużywana i pozbawiona grafiki. |
| N/A | 00010C60 | Duży Pierścień | Duży obiekt pierścienia i powiązany obiekt flash z Sonic 1 nadal istnieją. Prawdopodobnie został ponownie użyty jako podstawa dla ukrytych pierścieni w ostatecznej grze. |
| N/A | 00010FC2 | Pierścienie Jednorękiego Bandyty | Można odnaleźć pozostały kod pierścieni jednorękiego bandyty widocznych w Strefie Casino Night w „Sonic 2”. |
| N/A | 00024BCC | Wyniki Etapu Specjalnego | Pozostały kod obiektu dla ekranu wyników Etapu Specjalnego używanego w Sonic 2. |
Nieużywana Grafika
Znaki Ukończenia Aktu
| Wcześnie |
|---|
| Prototyp/Wersja Finalna |
W Sonic 3 ramki znaków są nieskompresowane i dynamicznie ładowane jedna nad drugą, aby oszczędzać pamięć wideo. To powiedziawszy, w danych gry obecna jest również nieużywana kopia tej samej grafiki, skompresowana jak w Sonic 2, co mocno sugeruje, że pochodzi ona z wcześniejszych prac rozwojowych.
Chociaż znaki Sonica, Tailsa i Robotnika są w zasadzie takie same, jak ich odpowiedniki Sonic 2, Knuckles pojawia się po raz pierwszy, z nieco innym wyglądem w stosunku do ostatecznej grafiki. Ta wczesna wersja jest nadal obecna w finalnej grze, a także w Sonic & Knuckles.
Kod Zródłowy
Fragmenty kodu źródłowego Star Trek: The Next Generation pozostają w różnych częściach ROM-u. Podobnie jak w innych prototypach, było to prawdopodobnie wynikiem tego, że gra ta wcześniej zajmowała kartridż, zanim została w większości nadpisana.
Pod 0xAFF0E:
,WhichMessage
Bra @DoneInput
@InComingHail:
Move.w #3,WhichMessage
Bra @DoneInput
@ImpulseDamaged:
Move.w #4,WhichMessage
Bra @DoneInput
Pod 0xBFAB4:
the screen.
DMAScrollArrows:
Subq.w #1,ArrowDelay ; Determine if arrow buffers or blanks should
Bne.s @NoTogg ; be DMA'ed this makes the arrows flash.
Move.w #15,ArrowDelay ; Reset delay between flashes.
Eor.w #1,ArrowToggle ; Toggle between blanks and arrows.
@NoTogg:
Tst.w ArrowToggle ; Branch to relevent bit.
Beq.s @ArrowsOff
; ====== Arrows on, DMA the buffers. ======
Lea UpArrowBuffer,A0 ; Source.
Lea ScrollBBase+(27*2)+(21*64),A1 ; Destination.
Move.w #1,D0 ; Number of words.
Move.l #VDP_VRAMWrite,D1 ; Set to write to VRAM.
Moveq #2,D2 ; Auto increment.
Jsr PushDMA ; Move characters to VRAM.
Lea DownArrowBuffer,A0 ; Source.
Lea ScrollBBase+(27*2)+(26*64),A1 ; Destination.
Move.w #1,D0
Pod 0xCF970:
Lea ScrollBBase+($b*64)+(27*2),A1
Jsr Word_2GVRAM
Move.w #AsciiOffset+CHR_Palette0+CHR_HighPri,D5 ; Color is different if in impulse.
Bra @DoneSeperators
@NotImpulse:
Move.w #AsciiOffset+CHR_Palette3+CHR_HighPri+'.',D0 ; Place decimal points and '/' seperators.
Lea ScrollBBase+($5*64)+(28*2),A1
Jsr Word_2GVRAM
Lea ScrollBBase+($7*64)+(27*2),A1
Jsr Word_2GVRAM
Lea ScrollBBase+($d*64)+(28*2),A1
Jsr Word_2GVRAM
Move.w #AsciiOffset+CHR_Palette3+CHR_HighPri+'/',D0
Lea ScrollBBase+($9*64)+(27*2),A1
Jsr Word_2GVRAM
Lea ScrollBBase+($b*64)+(27*2),A1
Jsr Word_2GVRAM
Move.w #AsciiOffset+CHR_Palette3+CHR_HighPri,D5 ; Set up character color.
@DoneSeperators:
Move.w CurrentDistance,D7 ; Get whole part of DISTANCE.
Moveq #3,D6 ; Three characters.
Moveq #'$',D2 ; Lead with a spaces.
Lea ScrollBBase+($5*64)+(25*2),A1 ; Screen destination.
Jsr PrintVal ; Print it.
Move.w CurrentDistance+2,D7 ; Get fractional part of DISTANCE.
Moveq #2,D6 ; Two digits.
Move.w
Pod 0xDFEF3:
_No1,VIEW_NOT_FLIPPED,VIEW_SIZE_6
Dc.b VIEW_PLANET10,VIEW_PAL_NoA,VIEW_FLIPPED,VIEW_SIZE_6
Dc.b VIEW_PLANET4,VIEW_PAL_NoC,VIEW_FLIPPED,VIEW_SIZE_7
Dc.b VIEW_PLANET10,VIEW_PAL_No1,VIEW_NOT_FLIPPED,VIEW_SIZE_7

























