Так уже же сделали - https://zx-pk.ru/threads/35004-ustan...orpion-zs.html
Так уже же сделали - https://zx-pk.ru/threads/35004-ustan...orpion-zs.html
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Это не тянет даже на бетаверсию.
Я давно пытался, но упёрся в нехватку памяти. Биосу отведено всего 4кб, из них 1кб - буфер флопа. А драйверу винта нужно 512 байт под сектор и до 512 под биткарту и чексуммы. Можно без чексумм, но 256 байт точно надо, ибо 1 бит на 4 кб кластер, коих может быть до 2048. А кластеры по 8 кб - это неэкономно.
Буфер флопа трогать нельзя, хотя если отказаться от чтения 800к дисков, то его можно уменьшить до 512 байт. Но это нежелательно.
Потом удалось впихнуть невпихуемое. Сейчас одновременно есть рамдиск E: и HDD раздел на F:.
Для партиций до 4 МБ размер кластера 4к или 8к. Хотел следать 4к без чексумм, ибо fixed дискам они обычно не нужны. Однако, если адрес таблицы чексумм =0 то BDOS честно пишет её с нулевого адреса. Потом разобрался, надо указать CSV =0 в DPB диска (размер таблицы) , тогда чексуммы не проверяются.
Свободной памяти осталось 70 байт. Пока так:
512 файлов на 8 МБ диске - маловато.Код:; Размер Cls EXM DSM DRM AL0 CSV dir alloc chksums ;----------- --- --- --------- --- --- ---- --- ------- ------- ; до =1024k 4k 3 до 255 127 #80 32 4k 32 32 ; 1025 - 2048 4k 1 до 511 255 #C0 64 8k 64 64 ; 2049 - 4096 4k 1 до 1023 511 #F0 128 16k 128 128 ; 4097 - 8192 8k 3 до 1023 511 #C0 128 16k 128 128
Пока всё через RST 8, но для работы через порты всё уже есть. Даже если лазить через #3d2f, получается всяко быстрее флопа, ~31 тыс тактов на чтение 512 байт.
Осталось сделать мелкую утилитку для добавления MFS раздела в MBR, и RST 8 станет не нужен.
Последний раз редактировалось Jason; 11.05.2025 в 14:46.
Djoni(24.04.2025)
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)