Ready/Run

Takie sobie archiwum listingów ze starych magazynów komputerowych


Weryfikator
  • Język programu: Sinclair Basic
  • Platforma: ZX Spectrum
  • Kod zamieszczono w Bajtek 06/1988
  • Autor listingu: Mieczysław Torbus
  • Listing nadesłał: Faust

Stan listingu:

4
Listing gotowy - uruchamia się na emulatorze lub realnej maszynie zgodny z listingiem zamieszczonym w periodyku

Jak sprawdzić, czy wpisany właśnie program jest poprawny?

Najlepiej porównać go z oryginałem. Może to być jednak niewykonalne. Proponuję metodę stosowaną już w Klanie Atari i Klanie Commodore. Sposób będzie jednak trochę inny. Spectrum posiada edytor na tyle nietypowy, że właściwie nie ma możliwości kontrolowania aktualnie wpisanej linii. Zastosowałem więc inną metodę — dopisywania do wprowadzonej już linii sumy wszystkich jej kodów modulo 255 w kodzie szesnastkowym.
Procedura pracuje w dwóch wersjach. Pierwsza, uruchamiana przez RANDOMIZE USR 23310 powoduje zapisanie sumy kontrolnej w każdej linii, którą kończy instrukcja REM xx. XX to dwa dowolne znaki.
Tryb uruchamiany przez RANDOMIZE USR 23380 powoduje dopisanie do każdej istniejącej linii końcówki REM z kodem kontrolnym linii.
Proponuję przeanalizowanie procedury w kodzie maszynowym. Jest ona umieszczana w buforze drukarki i pozostaje tam do chwili wyzerowania komputera. Oczywiście, jeżeli używa się drukarki, procedurę należy przenieść w inny obszar pamięci lub wpisywać ją tam po każdym użyciu drukarki.