Lista funkcji specjalnych CIO według urządzeń
From Atariki
Wersja z dnia 21:51, 3 lis 2023 Mono (Dyskusja | wkład) (→D: - funkcje bibo dos) ← Previous diff |
Wersja z dnia 22:13, 3 lis 2023 Mono (Dyskusja | wkład) (→D: - funkcje super dos) Next diff → |
||
Linia 8: | Linia 8: | ||
<td><b>[[DOS 2.5]]</b></td> | <td><b>[[DOS 2.5]]</b></td> | ||
<td><b>[[BiboDOS]]</b></td> | <td><b>[[BiboDOS]]</b></td> | ||
+ | <td><b>[[SuperDOS]]</b></td> | ||
<td><b>[[MyDOS]]</b></td> | <td><b>[[MyDOS]]</b></td> | ||
<td><b>[[SpartaDOS]] 3.x</b></td> | <td><b>[[SpartaDOS]] 3.x</b></td> | ||
Linia 16: | Linia 17: | ||
<td>32 ($20)</td> | <td>32 ($20)</td> | ||
<td>[[RENAME FILE]]</td> | <td>[[RENAME FILE]]</td> | ||
+ | <td>RENAME FILE</td> | ||
<td>RENAME FILE</td> | <td>RENAME FILE</td> | ||
<td>RENAME FILE/DIR</td> | <td>RENAME FILE/DIR</td> | ||
Linia 25: | Linia 27: | ||
<td>33 ($21)</td> | <td>33 ($21)</td> | ||
<td>[[DELETE FILE]]</td> | <td>[[DELETE FILE]]</td> | ||
+ | <td>DELETE FILE</td> | ||
<td>DELETE FILE</td> | <td>DELETE FILE</td> | ||
<td>DELETE FILE/DIR</td> | <td>DELETE FILE/DIR</td> | ||
Linia 34: | Linia 37: | ||
<td>34 ($22)</td> | <td>34 ($22)</td> | ||
<td>-</td> | <td>-</td> | ||
+ | <td>UNERASE FILE</td> | ||
<td>UNERASE FILE</td> | <td>UNERASE FILE</td> | ||
<td>(MAKE DIRECTORY)</td> | <td>(MAKE DIRECTORY)</td> | ||
Linia 43: | Linia 47: | ||
<td>35 ($23)</td> | <td>35 ($23)</td> | ||
<td>[[LOCK FILE]]</td> | <td>[[LOCK FILE]]</td> | ||
+ | <td>LOCK FILE</td> | ||
<td>LOCK FILE</td> | <td>LOCK FILE</td> | ||
<td>LOCK FILE/DIR</td> | <td>LOCK FILE/DIR</td> | ||
Linia 52: | Linia 57: | ||
<td>36 ($24)</td> | <td>36 ($24)</td> | ||
<td>[[UNLOCK FILE]]</td> | <td>[[UNLOCK FILE]]</td> | ||
+ | <td>UNLOCK FILE</td> | ||
<td>UNLOCK FILE</td> | <td>UNLOCK FILE</td> | ||
<td>UNLOCK FILE/DIR</td> | <td>UNLOCK FILE/DIR</td> | ||
Linia 61: | Linia 67: | ||
<td>37 ($25)</td> | <td>37 ($25)</td> | ||
<td>[[POINT]]</td> | <td>[[POINT]]</td> | ||
+ | <td>POINT</td> | ||
<td>POINT</td> | <td>POINT</td> | ||
<td>POINT</td> | <td>POINT</td> | ||
Linia 70: | Linia 77: | ||
<td>38 ($26)</td> | <td>38 ($26)</td> | ||
<td>[[NOTE]]</td> | <td>[[NOTE]]</td> | ||
+ | <td>NOTE</td> | ||
<td>NOTE</td> | <td>NOTE</td> | ||
<td>NOTE</td> | <td>NOTE</td> | ||
Linia 78: | Linia 86: | ||
<tr> | <tr> | ||
<td>39 ($27)</td> | <td>39 ($27)</td> | ||
+ | <td>-</td> | ||
<td>-</td> | <td>-</td> | ||
<td>-</td> | <td>-</td> | ||
Linia 87: | Linia 96: | ||
<tr> | <tr> | ||
<td>40 ($28)</td> | <td>40 ($28)</td> | ||
+ | <td>-</td> | ||
<td>-</td> | <td>-</td> | ||
<td>-</td> | <td>-</td> | ||
Linia 96: | Linia 106: | ||
<tr> | <tr> | ||
<td>41 ($29)</td> | <td>41 ($29)</td> | ||
+ | <td>-</td> | ||
<td>-</td> | <td>-</td> | ||
<td>-</td> | <td>-</td> | ||
Linia 105: | Linia 116: | ||
<tr> | <tr> | ||
<td>42 ($2A)</td> | <td>42 ($2A)</td> | ||
+ | <td>-</td> | ||
<td>-</td> | <td>-</td> | ||
<td>-</td> | <td>-</td> | ||
Linia 114: | Linia 126: | ||
<tr> | <tr> | ||
<td>43 ($2B)</td> | <td>43 ($2B)</td> | ||
+ | <td>-</td> | ||
<td>-</td> | <td>-</td> | ||
<td>-</td> | <td>-</td> | ||
Linia 123: | Linia 136: | ||
<tr> | <tr> | ||
<td>44 ($2C)</td> | <td>44 ($2C)</td> | ||
+ | <td>-</td> | ||
<td>-</td> | <td>-</td> | ||
<td>-</td> | <td>-</td> | ||
Linia 132: | Linia 146: | ||
<tr> | <tr> | ||
<td>45 ($2D)</td> | <td>45 ($2D)</td> | ||
+ | <td>-</td> | ||
<td>-</td> | <td>-</td> | ||
<td>-</td> | <td>-</td> | ||
Linia 141: | Linia 156: | ||
<tr> | <tr> | ||
<td>46 ($2E)</td> | <td>46 ($2E)</td> | ||
+ | <td>-</td> | ||
<td>-</td> | <td>-</td> | ||
<td>-</td> | <td>-</td> | ||
Linia 150: | Linia 166: | ||
<tr> | <tr> | ||
<td>47 ($2F)</td> | <td>47 ($2F)</td> | ||
+ | <td>-</td> | ||
<td>-</td> | <td>-</td> | ||
<td>-</td> | <td>-</td> | ||
Linia 159: | Linia 176: | ||
<tr> | <tr> | ||
<td>48 ($30)</td> | <td>48 ($30)</td> | ||
+ | <td>-</td> | ||
<td>-</td> | <td>-</td> | ||
<td>-</td> | <td>-</td> | ||
Linia 168: | Linia 186: | ||
<tr> | <tr> | ||
<td>49 ($31)</td> | <td>49 ($31)</td> | ||
+ | <td>-</td> | ||
<td>-</td> | <td>-</td> | ||
<td>-</td> | <td>-</td> | ||
Linia 179: | Linia 198: | ||
<td>[[FORMAT SINGLE]]</td> | <td>[[FORMAT SINGLE]]</td> | ||
<td>-</td> | <td>-</td> | ||
+ | <td>SPECIFY FORMAT</td> | ||
<td>-</td> | <td>-</td> | ||
<td>-</td> | <td>-</td> | ||
Linia 187: | Linia 207: | ||
<td>254 ($FE)</td> | <td>254 ($FE)</td> | ||
<td>[[FORMAT DISK]]</td> | <td>[[FORMAT DISK]]</td> | ||
+ | <td>FORMAT DISK</td> | ||
<td>FORMAT DISK</td> | <td>FORMAT DISK</td> | ||
<td>FORMAT DISK</td> | <td>FORMAT DISK</td> |
Wersja z dnia 22:13, 3 lis 2023
Spis treści |
D:
Gdy używana jest stacja dysków, instalowane jest także - po załadowaniu handlera (DOS-u) z dyskietki bądź kartridża - urządzenie "D:". Oprócz zwykłych operacji odczytu i zapisu danych dysponuje ono też pewnym wachlarzem operacji specjalnych. Poszczególne DOS-y nieco się różnią pod tym względem:
CMD | DOS 2.5 | BiboDOS | SuperDOS | MyDOS | SpartaDOS 3.x | SpartaDOS X |
32 ($20) | RENAME FILE | RENAME FILE | RENAME FILE | RENAME FILE/DIR | RENAME FILE | RENAME FILE/DIR |
33 ($21) | DELETE FILE | DELETE FILE | DELETE FILE | DELETE FILE/DIR | DELETE FILE | DELETE FILE |
34 ($22) | - | UNERASE FILE | UNERASE FILE | (MAKE DIRECTORY) | LOCK DISK | - |
35 ($23) | LOCK FILE | LOCK FILE | LOCK FILE | LOCK FILE/DIR | LOCK FILE/DIR | LOCK FILE/DIR |
36 ($24) | UNLOCK FILE | UNLOCK FILE | UNLOCK FILE | UNLOCK FILE/DIR | UNLOCK FILE/DIR | UNLOCK FILE/DIR |
37 ($25) | POINT | POINT | POINT | POINT | SEEK | SEEK |
38 ($26) | NOTE | NOTE | NOTE | NOTE | TELL | TELL |
39 ($27) | - | - | - | (BINARY LOAD) | GET FILE LENGTH | GET FILE LENGTH |
40 ($28) | - | - | - | BINARY LOAD | BINARY LOAD | BINARY LOAD |
41 ($29) | - | - | - | PICK DIRECTORY | BINARY SAVE | SET CURRENT DIRECTORY |
42 ($2A) | - | - | - | MAKE DIRECTORY | MAKE DIRECTORY | MAKE DIRECTORY |
43 ($2B) | - | - | - | - | REMOVE DIRECTORY | REMOVE DIRECTORY |
44 ($2C) | - | - | - | - | CHANGE DIRECTORY | CHANGE DIRECTORY |
45 ($2D) | - | - | - | - | SET BOOT FILE | SET BOOT FILE |
46 ($2E) | - | - | - | - | UNLOCK DISK | - |
47 ($2F) | - | - | - | - | GET DISK INFO | GET DISK INFO |
48 ($30) | - | - | - | - | GET CURRENT DIRECTORY | GET CURRENT DIRECTORY |
49 ($31) | - | - | - | - | - | SET ATTRIBUTES |
253 ($FD) | FORMAT SINGLE | - | SPECIFY FORMAT | - | - | - |
254 ($FE) | FORMAT DISK | FORMAT DISK | FORMAT DISK | FORMAT DISK | FORMAT DISK | FORMAT DISK |
Niektóre egzotyczne DOS-y przeznaczają zakres kodów operacyjnych 251-255 na różne warianty formatowania.
E:
Standardowy sterownik "E:" (edytor ekranowy, czyli konsola) normalnie nie instaluje żadnych funkcji specjalnych. Poniższa lista odnosi się do sterownika "E:" dla przystawki XEP80:
CMD | Nazwa | ICAX1 | ICAX2 | Opis |
20 ($14) | SEND COMMAND | 12 | CMD | przesłanie komendy CMD do XEP80 |
21 ($15) | SET NORMAL TRANSMIT MODE | 12 | 0 | wybranie standardowego trybu komunikacji z XEP80 |
21 ($15) | SET BURST TRANSMIT MODE | 12 | 1 | wybranie szybkiego trybu komunikacji z XEP80 |
22 ($16) | SEND INPUT COMMAND | 12 | CMD | przesłanie komendy wymagającej odczytu odpowiedzi (pojawia się pod $02EB) |
24 ($18) | 80-COL ENABLE, CLS | 12 | 0 | włączenie trybu 80-kolumnowego z wyczyszczeniem ekranu |
24 ($18) | 80-COL ENABLE, NO CLS | 12+32 | 0 | włączenie trybu 80-kolumnowego bez wyczyszczenia ekranu |
25 ($19) | 80-COL DISABLE | 12 | 0 | wyłączenie trybu 80-kolumnowego i przejście do trybu standardowego |
P:
Standardowy sterownik "P:" (drukarka) nie instaluje żadnych funkcji specjalnych. Ponizsze odnosi się do sterownika "P:" dla przystawki XEP80:
- 23 - SEND CONFIGURATION - wysłanie komendy konfigurującej pracę drukarki (numer urządzenia, tryby translacji ATASCII->ASCII itd.)
S:
Jedynym urządzeniem instalowanym z ROM-u, którego handler obsługuje jakieś "operacje specjalne", jest ekran graficzny; jako operacje specjalne zaimplementowano:
CMD | Nazwa | ICAX1 | ICAX2 | Opis |
17 ($11) | DRAWTO | jak przy OPEN (lub 12, gdy nie wiadomo) | 0 | rysowanie linii do punktu określonego przez zmienne CRSCOL (X: $55-6) i CRSROW (Y: $54) i kolorze określonym przez ATACHR ($02FB - normalnie znajduje się tu kod ostatnio wyprowadzonego znaku lub kod koloru punktu zdefiniowanego instrukcją COLOR w BASIC-u). |
18 ($12) | FILLTO | jak przy OPEN (lub 12, gdy nie wiadomo) | 0 | jak wyżej, z tym, że od każdego punktu tej linii odchodzi w prawo linia pozioma (o kolorze określonym przez FILDAT ($02FD) prowadząca do najbliższego zapalonego punktu ekranu. Jeśli takowego nie ma, po osiągnięciu prawego skraju ekranu linia wypełniająca rysowana jest dalej od lewego skraju ekranu aż do napotkania zapalonego punktu ekranu (np. własnego początku). |