...
Въпроса ми е дали кода по-долу може да е позатрил част от EEPROM-a ?
...
Доколкото знам, XT-IDE биоса се записва с програма. Отделно, ако не се лъжа, в XT-IDE се ползва *28С64(256), която има софтуерна защита от случаен запис. Почти съм сигурен, че след записване на XT-IDE биоса, въпросната програма включва тази защита. Иначе би било много странно да можеш да "пишем" на места, където не би трябвало.
ADEBUG
-A 100
-XXXX: 0100 MOV AX, 0500; (calls number 5 feature)
-XXXX: 0103 MOV BX, 0180; (set buffer address)
-XXXX: 0106 MOV CX, 0001; (start with track0 and sector1)
-XXXX: 0109 MOV DX, 0080; (track 0 of disk C)
-XXXX: 010B INT 13
-XXXX: 010D INT 3
-E 0180, 0, 0, 0002; (write in parameter)
-G 100
Явно сте стигнали до ръба на отчаянието, за да прибегнете към този метод.
Макар че в него няма нищо свръх естествено, има страшно много цифри, които да се съобразяват за всяка от командите. Приложил съм списък на параметрите на драйвера за управление на твърд диск (The dark Lord of INT 13 !;o). Имайки в предвид, че едновременно са свързани два диска (ST-225 през WDC и CF през XT-IDE) има голяма вероятност да сте объркали цифрите в кода и да сте "повредили" записа на CF картата.
Както е предложил колегата по-горе, ако имате FDD заредете ДОС и ползвайте някоя програма за формат на ниско ниво, като SSTor например. От всички програми, които съм ползвал, от тази съм най-доволен.