Autor Wątek: LOAD "" CODE  (Przeczytany 5148 razy)

zenek

  • *
  • Wiadomości: 34
LOAD "" CODE
« dnia: 2014.09.27, 19:24:35 »
Jak z poziomu Basica odczytać ile bajtów się załadowało instrukcją LOAD "" CODE?

trojacek

  • *****
  • Wiadomości: 6845
  • Miejsce pobytu:
    Warszawa
Odp: LOAD "" CODE
« Odpowiedź #1 dnia: 2014.09.27, 19:56:57 »
Hmm... Raczej się nie da.

Phonex

  • *****
  • Wiadomości: 1261
  • Miejsce pobytu:
    Warszawa
Odp: LOAD "" CODE
« Odpowiedź #2 dnia: 2014.09.29, 13:28:29 »
Da się. 8)
Jeśli nie było błędu w czasie ładowania, to długość załadowana zgadza się z długością podaną w nagłówku. Można odczytać nagłówek.
Chociaż po załadowaniu nagłówek nie jest chroniony, to nie jest też kasowany. Więc gdzieś tam jest. Gdzie? W WORKSPACE. Najpierw jest wzór nagłówka, a potem ten załadowany z taśmy.
Dlatego +28.

10 LOAD ""CODE
20 LET a=28+PEEK 23649+256*PEEK 23650
30 PRINT PEEK a+256*PEEK (a+1)

Programik będzie działał, jeśli po LOAD nie wykona się nic co skasuje WORKSPACE.

trojacek

  • *****
  • Wiadomości: 6845
  • Miejsce pobytu:
    Warszawa
Odp: LOAD "" CODE
« Odpowiedź #3 dnia: 2014.09.29, 14:20:59 »
Genialne :)

zenek

  • *
  • Wiadomości: 34
Odp: LOAD "" CODE
« Odpowiedź #4 dnia: 2014.09.29, 15:09:10 »
Phonex, dzięki!
W jaki sposób do tego doszedłeś?

sect0r

  • *****
  • Wiadomości: 698
  • Miejsce pobytu:
    Oltedal/NO
  • speccyholic
Odp: LOAD "" CODE
« Odpowiedź #5 dnia: 2014.09.29, 17:59:25 »
Ten człowiek zjadł zęby na magnetofonach i loaderach ;D
Mój KAPRAL - Pierwszy magnetofon Turbo w Polsce. http://speccy.pl/articles.php?article_id=26
A tutaj słowo o loaderach Loadery według Kato http://speccy.pl/articles.php?article_id=38
Od razu widać, że zna się na rzeczy. Szacun!
Szarak # DivIDE+ # MasakratorFM DeluXe by Zaxon

trojacek

  • *****
  • Wiadomości: 6845
  • Miejsce pobytu:
    Warszawa
Odp: LOAD "" CODE
« Odpowiedź #6 dnia: 2014.09.29, 18:03:44 »
Ten człowiek zjadł zęby na magnetofonach i loaderach ;D

Innymi słowy, magnetoPhonex ;)

Phonex

  • *****
  • Wiadomości: 1261
  • Miejsce pobytu:
    Warszawa
Odp: LOAD "" CODE
« Odpowiedź #7 dnia: 2014.09.29, 20:40:39 »
Genialne :)
Kurcze! Miałem zachować to dla siebie! Napisałbym kopier cały w BASICu.
Bloki typu Programe ładowałby przez MERGE ""  ;) I dostałbym nagrodę i kupę kasy, czy coś! ;D :D

Phonex, dzięki!
W jaki sposób do tego doszedłeś?
Bajty z taśmy są ładowane do pamięci pod adres wskazywany przez rejestr IX. Wystarczy napisać LOAD "" CODE, wejść do debuggera przed nagłówkiem i sprawdzić IX. A potem sprawdzić czy po zakończeniu ładowania nagłówek dalej tam jest :)
A potem już z górki - listing ROM http://www.wearmouth.demon.co.uk/zx82.htm i lista zmiennych systemowych http://www.worldofspectrum.org/ZXBasicManual/zxmanchap25.html.

Kiedyś też myślałem że się nie da. Okazuje się, że jeszcze można coś nowego odkryć! :D

Ten człowiek zjadł zęby na magnetofonach i loaderach ;D
Kiedyś przerobiłem z 500 programów z taśmy na dysk. Przy okazji coś zapamiętałem ;)