Важная информация

User Tag List

Страница 20 из 22 ПерваяПервая ... 16171819202122 ПоследняяПоследняя
Показано с 191 по 200 из 214

Тема: Техраздел UZIX

  1. #191
    Guru Аватар для Sayman
    Регистрация
    16.02.2006
    Адрес
    Новосибирск
    Сообщений
    2,816
    Благодарностей: 255
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    Не пойму - там какие-то аппаратные примочки замапированы на ОЗУ причем в начале ОЗУ? И совсем не отключаемо (оно же на CPLD собрано, убрать всю порнографию прошивкой)?
    нет. ничего такого. это программная фигня. просто исторически так сложилось, что авторы сделали обращение к апи биоса через адрес 8h. соответственно, в биосе выключалка. включалку можно воткнуть в любом месте озу.
    Код:
    ;RST 08h, Вызов функций Биоса
    		push af
    		ld a,0			; вкл. ПЗУ Биоса в 0-е окно
    		out (sys_port_on),a
    		pop af
    		ret
    ;в биосе по адресу 8
    EXP_FNS_2_RET:
    	PUSH AF
    	LD A,D_ROM16OFF
    	OUT (SYS_PORT_OFF),A
    	POP AF
    	JR RST_18_1
    и кстати не все адреса в 0..0x100 (точнее - 0..0xff) свободны. с адреса 0x80 аргументы запускаемого процесса (ком.строка).
    в целом я изначально не собирался делать совместимость с оригиналом.
    во1х, все бинары доступны в виде исходников. можно просто пересобрать. в виде исходников нет только fudebrowser и модуль tcp.
    во2х, в оригинале ограничение на исполняемые файлы размеров в tpa. у спринтера даже сейчас нет такого ограничения и грузить exe файлы можно хоть в мегабайты размером. как раз примерно аналогично и хотел в юзиксе делать.
    и в 3х, и самое главное и при этом печальное - драйвер fs в том виде как оно есть сейчас мне не нравится и хочется прикрутить аналог vfs, чтобы прозрачно можно было гонять ещё и fat. без фата там ловить нефиг. а с vfs я совсем не знаком.

    в качестве асмов я пользуюся ужасмом под венду. кстати, ужасм, есть и под спринтера (под его дос), точнее говоря, его предок sjasm, который без plus. вроде даже были где то исходники, т.е. при их наличии можно довенуть до уровня современного ужасма...
    0A заповедей:
    I. Не удаляй каталог свой.
    II. Не удаляй до времени ни одного файла.
    III. Не кради файлы.
    IV. Не желай программы ближнего своего.
    V. Почитай BDOS и BIOS как родителей своих ...

  2. #192
    Moderator Аватар для Error404
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,275
    Благодарностей: 1122
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Sayman Посмотреть сообщение
    во1х, все бинары доступны в виде исходников. можно просто пересобрать. в виде исходников нет только fudebrowser и модуль tcp.
    Начнешь компилировать - откроешь много чудесного (в over 50% случаев там с первого тыка ничего не компилируется, надо править, что-то добавлять и т.п.), уже это проходил. Но конечно, ничего невозможного в этом нет.

    Цитата Сообщение от Sayman Посмотреть сообщение
    во2х, в оригинале ограничение на исполняемые файлы размеров в tpa. у спринтера даже сейчас нет такого ограничения и грузить exe файлы можно хоть в мегабайты размером. как раз примерно аналогично и хотел в юзиксе делать.
    Вот это будет довольно непросто сделать из-за того что у Z80 только 64к. У меня сейчас TPA(пользовательское пространство процесса) 58к из 60к орионовской страницы (т.е. при 64к можно получить ТРА 62к + выигрыш за счет libc.so порядка 15-30кб). Остальное (многостраничное выполнение в пределах одного процесса) потребует очень сильного перепиливания UZIX (там много мелких деталей о существовании которых узнается только в процессе), например совсем не понятно как для таких процессов делать обработку событий=сообщений ядра (а это основной функционал UNIX) - как ядру узнавать в какую страницу делать callback если их много (ведь это не вызываемая пользователем из TPA функция, по стеку не распутаешь).

    Цитата Сообщение от Sayman Посмотреть сообщение
    и в 3х, и самое главное и при этом печальное - драйвер fs в том виде как оно есть сейчас мне не нравится и хочется прикрутить аналог vfs, чтобы прозрачно можно было гонять ещё и fat. без фата там ловить нефиг. а с vfs я совсем не знаком.
    там сейчас нет абстрактного уровня FS, вообще нет, вызовы процедур идут отовсюду куда попало, поэтому по простому (без переписывания всего, ведь в UNIX всё делается через спецустройства FS) это не решаемо. Максимум что можно - это переделать inode и карты с 16 бит на 32 бит получив размер FS в 2Tb вместо 32Mb.

    Цитата Сообщение от Sayman Посмотреть сообщение
    в качестве асмов я пользуюся ужасмом под венду. кстати, ужасм, есть и под спринтера (под его дос), точнее говоря, его предок sjasm, который без plus. вроде даже были где то исходники, т.е. при их наличии можно довенуть до уровня современного ужасма...
    большинство ассемблеров рожденных на Спеке - ужасмы, как по мне.

    - - - Добавлено - - -

    Т.е. я к чему: начни делать, придет понимание как оно устроено, и многие из нереализуемых вещей отпадут сами собой, получится нечто более приземленное чем хотелось бы, но вполне юзабельное.
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  3. #193
    Guru Аватар для Sayman
    Регистрация
    16.02.2006
    Адрес
    Новосибирск
    Сообщений
    2,816
    Благодарностей: 255
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    Вот это будет довольно непросто сделать из-за того что у Z80 только 64к.
    в досе на спринтере оно работает уже сейчас. например, инсталлер игрушки TITD - чуть больше метра монолитным exe файлом. первичный загрущик размещается на стороне системы. в случае если размер ехе файла не превышает размер доступного тпа, его более чем достаточно. если размер больше, чем тпа, тогда включается второй загрущик состоящий из двух частей. первая в системе, вторая в самом ехе файле и его нужно писать самому. был вариант третьего загрущика, но его так и не запилили. там была таблица блоков загрузки в заголовке файла. в целом - там и сейчас заголовок 512 байт. это можно в юзикс перенести попробовать.
    0A заповедей:
    I. Не удаляй каталог свой.
    II. Не удаляй до времени ни одного файла.
    III. Не кради файлы.
    IV. Не желай программы ближнего своего.
    V. Почитай BDOS и BIOS как родителей своих ...

  4. #194
    Moderator Аватар для Error404
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,275
    Благодарностей: 1122
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Sayman Посмотреть сообщение
    в досе на спринтере оно работает уже сейчас. например, инсталлер игрушки TITD - чуть больше метра монолитным exe файлом. первичный загрущик размещается на стороне системы. в случае если размер ехе файла не превышает размер доступного тпа, его более чем достаточно. если размер больше, чем тпа, тогда включается второй загрущик состоящий из двух частей. первая в системе, вторая в самом ехе файле и его нужно писать самому. был вариант третьего загрущика, но его так и не запилили. там была таблица блоков загрузки в заголовке файла. в целом - там и сейчас заголовок 512 байт. это можно в юзикс перенести попробовать.
    Ну, можно наверное и перенести, я просто о том, что если это выполняемый код в разных страницах ОЗУ, то в ядре нужны существенные изменения, не просто по описателю раскидать данные по страницам и отдать туда управление из расчета что процесс дальше сам знает что к чему (что ты и описываешь для DOS Спринтера). Т.к. в текущем виде страница обработчиков сигналов ядру известна (т.к. одна единственная на процесс), а при многостраничности - нет, надо допиливать. Вызов сигналов же делается не под управлением процесса, а асинхронно ядром, и ему надо знать в какую страницу передать управление на обработчик сигнала, т.е. ядро должно знать как там в раскиданном коде разместились процедуры по страницам ОЗУ. В такие приложения должен включаться некий код-диспетчер который всегда в первой (к примеру) странице и пишется уникальный для каждого такого приложения (что грустно), либо что-то еще придумывать (например ограничения на размещение процедур, за которыми желательно следил бы сам компилятор, или дополнительную расширенную регистрацию процедур в ядре - нестандартную).
    Последний раз редактировалось Error404; 22.05.2019 в 15:54.
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  5. #195
    Сибирский антропоморфный Аватар для Black Cat / Era CG
    Регистрация
    06.05.2010
    Адрес
    Бердск, НСО
    Сообщений
    2,063
    Благодарностей: 666
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Sayman Посмотреть сообщение
    это не совсем маргинальный формат. обычный образ cpc/pcw.
    Если в заголовке есть что-то типа "EXTENDED CPC" или "MV - CPCEMU", то посекторную копию выдернуть оттуда не сложно.
    Seamos realistas y hagamos lo imposible!
    Ernesto Che Guevara
    Переехал сюда: SteinBlume (ex ATM CP/M Explorer)
    http://era-cg.su

  6. #196
    Guru Аватар для Sayman
    Регистрация
    16.02.2006
    Адрес
    Новосибирск
    Сообщений
    2,816
    Благодарностей: 255
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Black Cat / Era CG Посмотреть сообщение
    Если в заголовке есть что-то типа "EXTENDED CPC" или "MV - CPCEMU", то посекторную копию выдернуть оттуда не сложно.
    именно так и написано. но конвертилки dsk <-> img найти не смог, а ваять свою конвертилку вломы...
    0A заповедей:
    I. Не удаляй каталог свой.
    II. Не удаляй до времени ни одного файла.
    III. Не кради файлы.
    IV. Не желай программы ближнего своего.
    V. Почитай BDOS и BIOS как родителей своих ...

  7. #196
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  8. #197
    Сибирский антропоморфный Аватар для Black Cat / Era CG
    Регистрация
    06.05.2010
    Адрес
    Бердск, НСО
    Сообщений
    2,063
    Благодарностей: 666
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Вот отсюда http://era-cg.su/steinblume/#downloads скачай Disk Image Analyzer. , поставь в нем обе галки и кинь на него образ. Если все пройдет удачно, получишь файл с расширение .xdi - это и будет посекторное содержимое. Можно ли конвертить обратно, я не помню.
    Seamos realistas y hagamos lo imposible!
    Ernesto Che Guevara
    Переехал сюда: SteinBlume (ex ATM CP/M Explorer)
    http://era-cg.su

  9. #198
    Moderator Аватар для Error404
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,275
    Благодарностей: 1122
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Black Cat / Era CG Посмотреть сообщение
    Вот отсюда http://era-cg.su/steinblume/#downloads скачай Disk Image Analyzer. , поставь в нем обе галки и кинь на него образ. Если все пройдет удачно, получишь файл с расширение .xdi - это и будет посекторное содержимое. Можно ли конвертить обратно, я не помню.
    Утилиты от UZIX получившийся после преобразования результат не понимают - не видят не только требуемые структуры инодов, но и даже сигнатуру принадлежности диска к известным Юзиксу. Также, XDI после ДискАнализера почему-то получается размером не 720кб, а 719.5кб
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  10. #199
    Сибирский антропоморфный Аватар для Black Cat / Era CG
    Регистрация
    06.05.2010
    Адрес
    Бердск, НСО
    Сообщений
    2,063
    Благодарностей: 666
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А там надо посмотреть в логах. Возможно где-то не хватает секторов. Еще на эмуверс должна быть тулза от Пантеры (вроде). Она скорее всего более корректная.
    Seamos realistas y hagamos lo imposible!
    Ernesto Che Guevara
    Переехал сюда: SteinBlume (ex ATM CP/M Explorer)
    http://era-cg.su

  11. #200
    Moderator Аватар для Error404
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,275
    Благодарностей: 1122
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Добавил в плагине OHI.WCX возможность инициализации образа (создать запись MBR), а также создание и удаление primary MBR партиций типа CPM и UZIX (создаются вместе с файловой системой). Работа как с подкаталогами (создать-F7, удалить F8), при создании в качестве "имени каталога" указывается тип и размер партиции, например "UZIX 20M" или "CPM 1500K". Т.е. не нужен fdisk - взяли любой подходящий файл (лучше зануленый - чтобы архивировался хорошо), переименовали в OHI, проинитили (просто войдя в этот образ), создали партиции, в них создали структуру каталогов (в случае UZIX), накидали файлы. Всё.

    Всё залил на github.
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

Страница 20 из 22 ПерваяПервая ... 16171819202122 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Ответов: 0
    Последнее: 24.02.2009, 13:31
  2. и еще раз о uzix
    от sysop в разделе Оси
    Ответов: 33
    Последнее: 25.08.2006, 13:35

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •