| Molto spesso i vettori originali sono sostituiti dai
programmi lanciati insieme al sistema operativo per intercessione di
Config.SYS e Autoexec.BAT (tipici files di configurazione usati in ambiente
DOS) o di altro applicativo lanciato dal prompt del DOS (... anche
se ospiti di una shell). |
| Per esempio vediamo come 3 applicativi usati nel nostro
ambiente Assembler,
Dosedit, NG e
Ansi intervengono sui vettori,
sostituendo la procedura di servizio originale:
|
Dosedit.com è un
DOS editor freeware creato
Jack Gersbach; il suo
compito è quello di recuperare tutta la stringa
degli ultimi comandi passati al prompt del dos (ma anche a quello
dell'ambiente Debug, ragione per la quale è da me preferito a
DosKey.exe).
Questo indispensabile applicativo si appropria del seguente vettore, per altro altrimenti
utilizzabile: |
Addr Tab |
N° |
Vettore |
Proprietà |
Funzione originale |
0000:03C0 |
F0H |
1000:1000 |
Dosedit.com |
utilizzabile - Una volta usato dall'Interprete
BASIC |
| NG,
Norton Guide (1987) è un
gestore di archivi dedicati creato dal grande
Peter Norton; poichè il suo compito è piuttosto articolato dopo la sua
installazione ben 5 vettori sono stati modificati (e quindi assunti in
carico da questo applicativo): 3 erano disponibili (cioè non utilizzati)
ma gli altri 2 sono piuttosto famosi ed importanti: il
gestore di Tastiera (INT
16H) e quello
degli stati d'attesa DOS (INT
28H): |
Addr Tab |
N° |
Vettore |
Proprietà |
Funzione originale |
0000:0058
|
16H |
12A3:6A25 |
NG.EXE |
Driver dispositivo
- Gestione della
Tastiera
|
0000:00A0 |
28H |
12A3:6A06 |
NG.EXE |
MsDOS.Sys
-
riservato DOS -
Stati d'attesa IDLE |
0000:033C |
CFH |
1000:E807 |
NG.EXE |
utilizzabile - Una
volta usato
dall'Interprete BASIC |
0000:0344 |
D1H |
100B:935E |
NG.EXE |
utilizzabile - Una
volta usato
dall'Interprete BASIC |
0000:035C |
D7H |
1E6D:037C |
NG.EXE |
utilizzabile - Una
volta usato
dall'Interprete BASIC |
|
Ansi.com (1988) è un gestore
di ambiente DOS della Ziff Communications Co., in grado di sostituire
il driver Ansi.SYS di solito lanciato da
Config.sys e (sotto i nuovi SisOp) di difficile utilizzo; anch'esso modifica
4 vettori: 2 disponibili (non utilizzati) e 2 altrettanto famosi ed
importanti: il gestore delle chiamate DOS
(INT
21H) e uno di
norma riservato a IO.sys (INT
29H): |
Addr Tab |
N° |
Vettore |
Proprietà |
Funzione originale |
0000:0084 |
21H |
11F3:022B |
Ansi.com
|
MsDOS.Sys
- Funzioni generali del DOS |
0000:00A4 |
29H |
11F3:020C |
Ansi.com
|
IO.Sys
-
riservato DOS |
0000:0384 |
E1H |
03A2:E800 |
Ansi.com
|
utilizzabile - Una
volta usato
dall'Interprete BASIC |
0000:03F8 |
FEH |
0303:F000 |
Ansi.com
|
utilizzabile - non usato |
|
| Vale la pena anticipare che, chiunque si appropri di un
vettore importante, deve comunque
assicurare i servizi della
procedura originale: il meccanismo consiste nello
scrivere un nuovo programma di gestione che, dopo
aver imposto al sistema le proprie esigenze, rientri con
un salto nella procedura originale. |
| In questo modo il sistema non subisce traumi o conflitti,
possibili se si toccano cose delicate come la
tastiera o il clock di sistema... I
vettori più frequentemente
manipolati sono proprio quelli del Timer di Sistema (INT
08H), della Tastiera
(INT
09H), del
Timer Utente (INT
1CH), della
Stampante (INT
17H) o del Print-Screen (INT
05H). |
| Nel momento
della disinstallazione del programma rimappatore
è assolutamente indispensabile, inoltre, assicurare il
recupero della
situazione precedente alla sua installazione; questa operazione
si fa rimettendo in tabella il vettore
originale (accortamente salvato nel momento della sua sostituzione). |
| Tutto questo sarà argomento (per ora remoto...) del
progetto dei programmi (TSR) che terminano
ma restano parzialmente residenti, più volte citati in questa scheda perchè
tipici dell'argomento trattato. |