1

Temat: xDOS - biblioteka IO dla lubiących kompatybilność

https://github.com/pfusik/numen/blob/master/dos.asx

Tyle lat przeleżał (2002) ten loader / handler D: u Fox-a na GitHub-ie, ileż zdrowia i nerwów mógł już uratować :)

- instaluje urządzenie D: jak każdy inny DOS Atari
- przy starcie wczytuje plik uruchamialny o nazwie AUTORUN
- obsługuje standardowy system plików DOS 2
- obsługiwany rozmiar sektora (128 lub 256 bajtów) jest ustalany na etapie kompilacji xDOSa
- xDOS umożliwia odczyt pliku przez D:
- jednocześnie można czytać tylko jeden plik, ale może on być dowolnej długości
- xDOS umożliwia nadpisanie istniejącego pliku mieszczącego się w jednym sektorze
- inne operacje, jak odczyt katalogu, kasowanie, zmiana nazwy itd. nie są obsługiwane
- xDOS mieści się w całości w sektorach odczytu wstępnego (boot sectors)
- xDOS nie ustawia MEMLO, ale zajmuje tylko obszar pamięci $0700..$097F
- xDOS nie wyłącza ROM-u podczas transmisji

Bez jakichkolwiek większych modyfikacji zdatny do użycia. Po uruchomieniu naszego AUTORUN-a dalsze operacje IO odbywają się normalnie, przykład z załącznika ładuje dwa kolejne pliki z grafiką MIC, PIC (slideshow.pas).


Sposób na przygotowanie dyskietki (sektor 256B), ściągamy program dir2atr

https://www.horus.com/~hias/atari/#tools-win32

Przygotowujemy nasz katalog roboczy, do którego wrzucamy 'xDos.obx', tworzymy podkatalog 'DISK', tworzymy BAT-a

dir2atr.exe -md -B xdos.obx example.atr disk

-m to format dla MyDos-a
-d to gęstość D, czyli 256B na sektor
-B twórz botowalną dyskietkę zaincjowaną plikiem xdos.obx
example.atr to nazwa nowo utworzonego ATR-a
disk to nazwa podkatalogu w którym znajdują się wszystkie pliki jakie chcemy wrzucić do naszego ATR-a

p.s.
jeśli dodać kod wyłączający / włączający ROM tak aby ładować plik bezpośrednio pod ROM wówczas xDOS przestanie być kompatybilny z DOS-ami

Ostatnio edytowany przez tebe (2020-04-12 12:21:46)

Post's attachments

xDos.7z 14.96 kb, liczba pobrań: 7 (od 2020-04-12) 

Tylko zalogowani mogą pobierać załączniki.
*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C

2

Odp: xDOS - biblioteka IO dla lubiących kompatybilność

a tu xBOOT w wersji DOS. Jakie roznice:

- instaluje urządzenie D: jak każdy inny DOS Atari

tak


- przy starcie wczytuje plik uruchamialny o nazwie AUTORUN

tak


- obsługuje standardowy system plików DOS 2

moj obsluguje wszystkie mutacje formatu DOS rowniez MyDOS itd.


- obsługiwany rozmiar sektora (128 lub 256 bajtów) jest ustalany na etapie kompilacji xDOSa

moj obsluguje obydwa rozmiary od razu, nie potrzeba kompilacji


- xDOS umożliwia odczyt pliku przez D:

tak


- jednocześnie można czytać tylko jeden plik, ale może on być dowolnej długości

tak


- xDOS umożliwia nadpisanie istniejącego pliku mieszczącego się w jednym sektorze

nie, nie ma zapisu.


- inne operacje, jak odczyt katalogu, kasowanie, zmiana nazwy itd. nie są obsługiwane

tak


- xDOS mieści się w całości w sektorach odczytu wstępnego (boot sectors)

tak


- xDOS nie ustawia MEMLO, ale zajmuje tylko obszar pamięci $0700..$097F

moj zajmuje $480-$6ff (razem z buforem) pamiec od $700 wolna


- xDOS nie wyłącza ROM-u podczas transmisji

tak

Post's attachments

xBootDOS.obx 384 b, liczba pobrań: 1 (od 2020-04-12) 

Tylko zalogowani mogą pobierać załączniki.
http://atari.pl/hsc/ad.php?i=1.

3

Odp: xDOS - biblioteka IO dla lubiących kompatybilność

przykład działania xBootDOS-a (ten sam program przykładowy jak dla xDOS-a)

program który działa z xDOS-em i każdym DOS-em, nie działa z xBootDOS-em

Post's attachments

example_xBootDOS.zip 12.4 kb, liczba pobrań: 1 (od 2020-04-13) 

Tylko zalogowani mogą pobierać załączniki.
*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C

4

Odp: xDOS - biblioteka IO dla lubiących kompatybilność

to prawda. Program usera (ten drugi obrazek) nadpisuje DOSa ($480) - cena niskiego memlo.

http://atari.pl/hsc/ad.php?i=1.

5

Odp: xDOS - biblioteka IO dla lubiących kompatybilność

DOS-y charakteryzuje adres $0700, co wykorzystuje wiele programów napisanych w przeszłości

pod adresem $0480 często umieszczane były dekompresory, strona 6, $0600..$06FF uznawana jest za wolną, często wykorzystywana przez użytkowników aby umieścić tam krótki program np. inicjalizacji danych albo wstawkę kodu maszynowego dla BASIC-a

Ostatnio edytowany przez tebe (2020-04-13 01:40:57)

*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C

6

Odp: xDOS - biblioteka IO dla lubiących kompatybilność

moze racja... trzeba go bedzie podniesc wyzej...

http://atari.pl/hsc/ad.php?i=1.

7

Odp: xDOS - biblioteka IO dla lubiących kompatybilność

racja.

teraz jest od $700 - $93B

Ostatnio edytowany przez xxl (2020-04-15 17:46:32)

http://atari.pl/hsc/ad.php?i=1.

8

Odp: xDOS - biblioteka IO dla lubiących kompatybilność

gratuluję :) teraz działa

Ostatnio edytowany przez tebe (2020-04-13 02:08:07)

Post's attachments

example_xBootDos_2.zip 12.38 kb, liczba pobrań: 3 (od 2020-04-13) 

Tylko zalogowani mogą pobierać załączniki.
*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C

9

Odp: xDOS - biblioteka IO dla lubiących kompatybilność

kolejny przykład, gdzie xBootDos nie zadziała

xDOS działa, pewnie dlatego że pochodzi z czasów kompatybilności ;) w końcu rok powstania 2002 zobowiązuje

S_VBXE.SYS jest handlerem urządzenia S2: (VBXE) dla SDX autorstwa Drac030

program SDXDL (ładowany od adresu $8000) pozwala na załadowanie SYS-a bez udziału SDX, pod każdym innym DOS-em

co robi SDXDL? otwiera do odczytu konkretnie plik D:S_VBXE.SYS i relokuje go w pamięci od MEMLO, na końcu podnosząc MEMLO

w załączonym przykładzie TEST.PAS, na początku wykonuję akrobację pt. ustaw MEMLO na $980, wykonaj skok (JSR) do SDXDL, w efekcie otrzymujemy handler S2: dla VBXE od adresu $0980 .. $0c0c, reszta dla nas

idea jest prosta, skorzystaj z VBXE bez konieczności używania SDX, ale jeśli masz SDX to też korzystaj (wtedy fragment akrobatyczny nie jest potrzebny)

p.s.
przy starcie systemu MEMLO = $0700, ani xDOS, ani xBootDOS nie ustawiają MEMLO, prawdziwe DOSy to robią, bez podniesienia MEMLO grozi im że zostaną nadpisane przez programy relokujące się

Ostatnio edytowany przez tebe (2020-04-15 15:06:18)

Post's attachments

xdos_vbxe.7z 23.99 kb, liczba pobrań: 1 (od 2020-04-15) 

Tylko zalogowani mogą pobierać załączniki.
*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C

10

Odp: xDOS - biblioteka IO dla lubiących kompatybilność

no ale skoro ani xDOS ni xBootDOS nie ustawiaja memlo a jak mowisz ze na xDOS dziala to nie o memlo chodzi.


a jaki ma byc efekt bo widze ze pod xDOS i xBootDOS dziala tak samo.

Ostatnio edytowany przez xxl (2020-04-15 15:20:55)

http://atari.pl/hsc/ad.php?i=1.

11

Odp: xDOS - biblioteka IO dla lubiących kompatybilność

załączony przykład zaincjowany jest xDOS-em, aby przejść na xBootDos-a trzeba uruchomić 'makedisk_xboot.bat' i wtedy uruchomić 'example.atr'

oczywiście musi być aktywne VBXE aby zobaczyć właściwy efekt

Ostatnio edytowany przez tebe (2020-04-15 16:25:29)

*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C

12

Odp: xDOS - biblioteka IO dla lubiących kompatybilność

no dobrze... musialem troche skrocic xBOOTDosa ...

- ustawia memlo na $937     (poprzednio $93B)

bedzie Ci dzialal.

Ostatnio edytowany przez xxl (2020-04-16 12:21:38)

Post's attachments

xBOOTDos.obx 384 b, liczba pobrań: 1 (od 2020-04-15) 

xBOOT_Initializer(DOS).xex 915 b, nikt jeszcze nie pobierał tego pliku. 

Tylko zalogowani mogą pobierać załączniki.
http://atari.pl/hsc/ad.php?i=1.

13

Odp: xDOS - biblioteka IO dla lubiących kompatybilność

czyli xBootDOS mieszał wcześniej z MEMLO, nowa wersja działa

*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C

14

Odp: xDOS - biblioteka IO dla lubiących kompatybilność

wlasciwie to moznaby dodac jakas operacje specjana do tego DOSa... moze uruchamianie plikow binarnych? (BINARY LOAD)? DOS 2.5 tego nie ma ale MyDOS juz tak.

http://atari.pl/hsc/ad.php?i=1.

15

Odp: xDOS - biblioteka IO dla lubiących kompatybilność

BIN LOAD&RUN, XIO 40 owszem :) przydatne

https://atariwiki.org/wiki/Wiki.jsp?pag … %20Handler

dlaczego tutaj brak opisu xBootDOS-a ?

*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C

16

Odp: xDOS - biblioteka IO dla lubiących kompatybilność

no i sie wykluło (jeszcze nizsze MEMLO)

http://www.atari.org.pl/forum/viewtopic.php?id=16667

http://atari.pl/hsc/ad.php?i=1.

17

Odp: xDOS - biblioteka IO dla lubiących kompatybilność

nowsza wersja xDOS (Fox DOS), krótsza instalacja handlera, ustawione MEMLO, dzięki czemu programy relokujące zostaną prawidłowo załadowane, nie korzysta ze strony zerowej w takim stopniu jak xBootDos XXL-a stąd brak ryzyka że pokłóci się z innymi zainstalowanymi programami

autorem poprawek jest Fox/TQA

Post's attachments

xDos.7z 3.48 kb, liczba pobrań: 4 (od 2020-05-21) 

Tylko zalogowani mogą pobierać załączniki.
*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C

18

Odp: xDOS - biblioteka IO dla lubiących kompatybilność

kolejna wersja, tym razem kod bardziej skomplikowany zależny mocno od umiejscowienia w pamięci dzięki czemu można było oszczędzić bajty pamięci i dodać obsługę BLOAD (XIO #40)

DISK_BLOAD.ATR, naciskamy klawisz, uruchamia się interko, wychodzimy naciskając START, wracamy do MP (MadPascal)

Ostatnio edytowany przez tebe (2020-05-24 15:16:51)

Post's attachments

disk_bload.atr 179.64 kb, liczba pobrań: 2 (od 2020-05-24) 

disk_mpt.atr 179.64 kb, liczba pobrań: 3 (od 2020-05-24) 

disk_slideshow.atr 179.64 kb, liczba pobrań: 2 (od 2020-05-24) 

disk_vbxe.atr 179.64 kb, liczba pobrań: 3 (od 2020-05-24) 

foxDos_BLoad.7z 3.86 kb, liczba pobrań: 2 (od 2020-05-24) 

Tylko zalogowani mogą pobierać załączniki.
*- TeBe/Madteam
3x Atari 130XE, SDX, CPU 65816, 2x VBXE, 2x IDE Plus rev. C