Upiększanie listingu

Tej sztuczki nauczyłem się dość dawno temu… Po prostu listingi programów w BASICU wygladają dzięki temu ładniej, a program dalej działa tak jak powinien 😉 I jeszcze jedno – ja naprawdę nie umiem asemblera – wszystko to powstało na podstawie własnych doświadczeń z pracy w monitorze pamięci C64 😉 Jako, że używam CCS64 w emulacji C64, to właśnie na podstawie tego emulatora opieram ten tekst.

Co nam będzie potrzebne:
– C64 albo emulator z dostępem do monitora pamięci
– kilkanaście minut czasu
– dyskietka z przykładem
– program do upiększenia 😉

Jak to zrobić

Najpierw wgrywamy nasz program, który chcemy troszkę upiększyć. Wiadomo, że na początku programu są różne REMy z danymi kto dany program napisał, kiedy go napisał i jak można się z nim skontaktować – po prostu jakaś wizytówka autora programu. Wygląda to mniej więcej tak:

1 REM WRITTEN BY GEMBOY
2 REM CTX:MASTER64@POCZTA.ONET.PL
3 REM TODAY IS 26 V 2002
(zobacz 'KROK 1' na dyskietce z przykładami)

A co my z tym zrobimy? Obetniemy te ‚niepotrzebne’ początki wierszy, dzięki czemu nasza notka będzie ładniejsza, a ludzie będą się dziwić, jak to możliwe, że to obcięliśmy 😉 No więc piszemy parę takich REMów na początku naszego programu i zapisujemy go dla bezpieczeństwa 🙂 Liczymy ile znaków jest od początku wiersza do pierwszej litery tekstu w REMie. W powyższym przykładzie jest to 6 znaków, czyli numer wiersza (1 znak) + REM (3 znaki) + 2 spacje. Teraz przerabiamy nasze REMy aby było w nich tyle miejsc wolnych ile nam wyszło w obliczeniach. Trochę zakręciłem, ale chodzi o to, aby te znaki dodać na poczatku REMa. Będzie to wyglądać mniej wiecej tak:

1 REM 123456WRITTEN BY GEMBOY
2 REM 123456CTX:MASTER64@POCZTA.ONET.PL
3 REM 123456TODAY IS 26 V 2002
(zobacz 'KROK 2' na dyskietce z przykładami)

Jak widać znaki, które dodałem to ciąg 123456. Wziąłem akurat taki ciąg, ponieważ łatwo się go szuka. Teraz wchodzimy do monitora pamięci – w CCSie służy do tego kombinacja ALT+M. W monitorze piszemy ‚M 0800 0880’ i szukamy naszej kombinacji 123456. W przykładzie są trzy takie kombinacje i zaczynają się one od adresów 0807h 0825h i 0853h. Zamieniamy ten ciąg znaków na znaki o kodzie 14h (otrzymujemy T w odwróconych kolorach). Teraz już tylko ESC (wyjście z monitora) i sprawdzamy LIST:

WRITTEN BY GEMBOY
MASTER64@POCZTA.ONET.PL
TODAY IS 26 V 2002
(zobacz 'KROK 3' na dyskietce z przykładami)

I o to nam chodziło!!! (14h to kod BACKSPACE :)) Mam nadzieję, że wszystko jest wyjaśnione w miarę jasno… Jeśli będą z tym problemy to mailujcie. I nie zapomnijcie zapisać programu po skończonej pracy ;))
A jeśli zamiast kodu 14h wpiszemy 1Dh to kursor przesunie się o jedno miejsce w prawo, jeśli wpiszemy 11h to kursor zjedzie linię w dół, a jeśli wpiszemy kod 20h to pojawi się spacja. Te kilka znaków wystarczy do dobrej zabawy z listingami 😉

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *