TBXL: Wczytanie danych do pamięci

From Atariki

(Różnice między wersjami)
Jump to: navigation, search

Wersja z dnia 16:10, 26 maj 2010

Poniżej znajdują się przykład dla wczytania dowolnych danych do swojego programu w TBXL. Sposób ten jest stosowany między innymi przez Sikora.


100 proc dane: REM w TBXL stosujemy procedury
110 OPEN #1,4,0,"D:NAZWA.EXT":REM pod nazwa.ext podstawiamy nazwę naszych danych,
na przykład: '''D:MOJFONT.FNT'''
120 BGET #1,$adres_gdzie_wczytujemy,ilość_bajtow:REM $adres_gdzie_wczytujemy - gdzie wczytujemy dane, na przykład $9C00, 
ilość bajtów - jak wiele wczytujemy
130 CLOSE #1:REM pamiętamy o zamknięciu kanału IOCB
140 ENDPROC:REM procedura powinna mieć swoje zakończenie
  • Alternatywną metodą jest nadanie danym nagłówków z adresami (na przykład przy pomocy Super Packera) i zapisanie takich danych do pliku (można na raz korzystać z wielu bloków połączonych w jeden plik). Tak przygotowane dane wczytujemy instrukcją jak dla plików binarnych: BLOAD"D:NAZWA.EXT" - gdzie NAZWA.EXT jest analogiczna jak w powyższym przykładzie.

Uwagi i podpowiedzi

  • Plik z fontami zajmuje dokładnie 1KB (1024 bajty). Jeśli wczytamy go na granicy 1KB - wtedy bez żadnych sztuczek możemy przełączyć zestaw znaków na nowy adres, podając tylko starszy bajt adresu (Na przykład poprzez POKE 756,$9C dla danych zestawu znaków wczytanych pod adres $9C00)
  • Trzeba uważać, aby wczytane dane nie weszły nam na pamić ekranu lub kod programu, należy przy tym pamiętać, że kod skompilowany znajduje się pod innymi adresami niż kod interpretowany.

Zobacz też

Personal tools