драйвер сам должен распознать тип носителя и его ФС. или ввести код носителя 0 для сменного (дискета) 1 для винтов и цдром, 2 для рамдиска. тогда никаких примудростей с save_x..
драйвер сам должен распознать тип носителя и его ФС. или ввести код носителя 0 для сменного (дискета) 1 для винтов и цдром, 2 для рамдиска. тогда никаких примудростей с save_x..
Это Vovoi - предлагает save X - я на такое не согласен
---------- Post added at 13:58 ---------- Previous post was at 13:57 ----------
Э не ....
Даду домашнее задание одному из "ученичков" например МИВу - оптимизировать процедуру - чтобы успевало "в один фрэйм"
ты про вывод на экран? смысл для операционки делать фреймовые выводы? это потеря памяти. зачем?оптимизировать процедуру - чтобы успевало "в один фрэйм"
Аргументация выглядит следующим образом. Да, приложение, к сожалению, имеет заголовок. В этом же заголовке координаты данных, с которыми работает приложение. Например, графический редактор хранит в них адрес и длину спрайта. Командой Save sprite N to disk X, выполняется сохранение. Диспетчер приложений пусть дальше разбирается сам, это задание уже по его части. Рассмотрим два работающих текстовых редактора (блокнота). Результат их работы - текст, адрес и длина которого сидят заголовке. Но, один блокнот-1 может забирать весь или части текста блокнота-2. Любое приложение может пользоваться данными остальных приложений, поскольку заголовки имеют жесткую структуру и хорошо документированы в мануале для разработчика приложений. Это был ответ в защиту "заголовка".
Spectrum Basic
Да у нас тут свободное посещение
Про комманды вг93 МИВ прочитал что-нибудь?
Или из книги Олифера (или как там их)?
Ну надеюсь,все уже изучили второй пример, выкладываю следующий.
Ночная сборка.Не тестировалась.Если кто-то из "учеников" найдет ошибку,поставлю пятерку.
Добавлен простейший диспетчер(менежджер) виртуальной файловой системы и таблица логических устройств, которую он использует.В таблице первый байт - кол-во устройств, далее по 6 байт на устройство - адреса драйвера файловой системы и драйвера дискового устройства, номер виртуального диска и резервный байт.Соответственно адреса подставляются куда надо,см. предыдущий урок. И теперь диспетчер передает драйверам номер виртуального диска и этот номер используется
Сейчас там 4 лог.устройства - соответствуют дисководам A,B,C,D.
Но работа пока ведется только с А(ядро уже инициализирует его через диспетчер, но задаче выбор лог.устройств пока не доступен).
Лень на праздниках было делать функцию lseek, поэтому "подключил" функции 4 - create и 3 - save.Что-то там ещё по мелочам - смотрите комменты в исходниках
в программу просмотра текста внес изменения - выход по кнопке е или когда закончится текст, листание по кнопке а,и для проверки вышеуказанныъх функций по кнопке s - создается файл с именем SAVING.TXT и в него записывается 768 байт текста начиная с того который видно на экране. Только первый раз, в след.разы
этот файл уже есть поэтому ничего не записывается.
если его удалить посторонней прогой/коммандером, то опять он будет появляться.
О! Т.е. заголовок нужен для взаимодествия задач, т.е. речь уже идет о системе с несколькими задачами.
А поскольку у нам пока что одна задача, значит это сейчас не актуально. Поэтому рассматривать этот вариант будем потом.
А что Vovoi скажет насчет двух сотен адресов (save1...save34,load1...load34 и т.д.)?
Это чтобы уважаемые "ученички" не расслаблялись
А насчет потери памяти - можно дать задание уложится например в 256 байт![]()
Последний раз редактировалось Zet9; 10.03.2010 в 23:16.
фреймовый скрол в 256 байт? жжош...А насчет потери памяти - можно дать задание уложится например в 256 байт
Да, вынужден признать, тут наши пути расходятся. Я решил изначально ориентироваться на массовые Спектрумы, чтобы человек снял с полки свой Speccy-48k+TR-DOS или Speccy-48/128k+TR-DOS и запустил менеджер без танцев с бубном. В этом, поддерживаю iskraSoft.
Убежден, что мой путь не пригоден для дальнейшего развития Speccy (CPU 21Mhz, RAM 4-16Mb, 640*480 & 64color, CD-RW drive).
Менеджер рассчитан на обычный дисковод и, далее, уже при подгрузке дополнительных модулей-драйверов, жесткий диск, CD-ROM и, может быть флешка, так что излишнего числа адресов не предвидится.
Сама цель - удобная работа сразу в нескольких программах: Пишу текст проги (напр., игрушки), здесь же спрайт-редактор. Подрисовал спрайт, проверил вывод на экран, пишу прогу дальше. Что-то вспомнил, отвлекся на файловый менеджер, вывел картинку на экран и срезал оттуда спрайт, объявил его доступным (либо передал в RAM-DISK), вернулся в спрайт-редактор, взял спрайт. Переключился на менеджер, стащил в блокнот текст некоего эффекта, выделил, объявил фрагмент доступным, вернулся к кодингу, забрал текст спецэффекта в свою прогу.
По всему видно, что никакой операционной системой это не пахнет, так что назвал сие чудо просто - Менеджер приложений.
Тему покидаю. Спасибо за интересные мысли и хорошую работу, успехов.
Spectrum Basic
так когда можно будет заценить ОС?
С уважением,
Jerri / Red Triangle.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)