BINARY SAVE

From Atariki

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

Wersja z dnia 10:41, 30 sie 2009

Przeznaczenie: Funkcja DOS-u pozwalająca na zapis zawartości pamięci do pliku binarnego DOS-u.

Dostępność: SpartaDOS, Real.DOS (brak w SpartaDOS X i BW-DOS)

Składnia BASIC-a: XIO 41,#iocb,x1,x2,"Dn:filename.ext addr1 addr2"

Kod w asemblerze:

    ldx #iocb*16
    lda #41
    sta iccmd,x
    lda #<fname
    sta icbufa,x
    lda #>fname
    sta icbufa+1,x
    lda #x1
    sta icax1,x
    lda #x2
    sta icax2,x
    jsr jciomain

gdzie:

  • iocb - numer kanału IOCB z zakresu od 1 do 7. Kanał musi być zamknięty w chwili wywołania.
  • n - numer stacji dysków
  • x1 - może mieć wartość $08 (utworzenie nowego pliku) lub $09 (dopisanie nowej porcji danych do istniejącego pliku)
  • x2 - $00 powoduje zapis sygnatury $FFFF przed nagłówkiem, $80 powoduje wygenerowanie nagłówka bez sygnatury
  • addr1 - adres pierwszego bajtu danych do zapisu, podany w postaci cyfr hex (bez poprzedzającego znaku "$")
  • addr2 - adres ostatniego bajtu danych do zapisu, podany w postaci jak wyżej.
  • fname - adres specyfikacji dysku. Całość ciągu znaków trzeba zakończyć znakiem EOL (ASCII $9B).

Zwracana wartość: Procedura zwraca w rejestrze Y ujemny kod błędu albo wartość $01 w przypadku powodzenia, oraz odpowiednio do tego ustawia znacznik N rejestru znaczników.

Personal tools