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

User Tag List

Страница 1 из 22 12345 ... ПоследняяПоследняя
Показано с 1 по 10 из 217

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

  1. #1
    Moderator
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,577
    Спасибо Благодарностей отдано 
    61
    Спасибо Благодарностей получено 
    106
    Поблагодарили
    92 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Техраздел UZIX

    Здесь буду вести бложек по портированию UZIX (реализация UNIX близкая к клаcсической V7) - всякие промежуточные итоги и мысли фиксировать.

    Инструментарий.
    • Для компиляции используется единственный по сею пору нормальный компилятор C для Z80 - HitеchC v3.09 образца 1987года: нативный CP/M компилятор, при желании всю сборку можно провести на самом Орионе. .

    В дополнение к нему чтобы комфортно разрабатывать под РС использую:
    • файловый эмулятор CP/M под винду cpm.exe - он умеет возвращать винде код завершения HitechC, что нужно для make.
    • GNU make для автоматизации (пакетной) сборки проекта. Или аналог.
    • ProgrammersNotepad, где в проекте UZIX.pnproj (фактически - структурированном списке файлов) описал используемые файлы. На кнопку F8 можно настроить сборку по make (Tools->Options->Tools->Scheme C/C++ -> Add). Но чаще после внесения всех правок в PN, я просто запускаю make под cmd.
    • Для компиляции драйвера IDE/SD и эмулятора CP/M использую пакет макроассемблера M80/L80 от Микрософт, тоже 80-х годов прошлого столетия - поныне лучший макроассемблер для Z80/8080.


    Комплект компилятора в сборе (без ProgrammersNotepad):
    Размер: 3.24 Мб
    Ссылка для скачивания: https://github.com/serge-404/HI-TECH-C-V3.09

    На каталог куда вы распакуете файлы компилятора должны быть настроены переменные окружения PATH и CPMPATH

    Концепция.
    Ядро UZIX - это обычная CP/M-задача, которая будет "крутить" UNIX-процессы в расширенном ОЗУ. Архитектура будет такая:
    Код:
    	         CP/M 64k bank      Subsequent 64k banks
    	FFFF	+------------+		+------------+
        Common	|   Common   |		|   Common   |+
    	F000	+------------+		+------------+|+
    		|    CP/M    |		|            |+|+
    		+------------+		|  Process   ||+|
        Banked	|   Kernel   |		|    Code    |||+
    		|    Code    |		|   & Data   ||||
    		|            |		|            ||||
    	0100	+------------+		+------------+|||
    		|  Reserved  |		|  Reserved  |+||
    	0000	+------------+		+------------+|+|
    					 +------------+|+
    					  +------------+|
    В блоке общего ОЗУ COMMON размещаются части, которые должны быть общими у ядра и процессов (udata, стеки, некоторые переменные) и подпрограммы для межстраничного копирования, межстраничного JP/CALL/RET, вектор IM2 и начальный обработчик прерывания. Там же сидят порты (1к), и 2к ROM F800 в принципе ненужного для uzix, съедая 3к драгоценного ОЗУ, но так уж устроен Орион.

    Ядро пока 29кб. Пишу для Орионовского клона CP/M АльтаирДОС с TPA до 58 кб, т.е. хватит места и TCP/IP впилить, и поддержку ФС FAT.

    В страницах процессов сразу "из коробки" есть недоэмулятор CP/M: эмулируется CP/M консоль (ввод-вывод на экран/с клавиатуры) - BDOS функции 1..12, BIOS функции 2..4, остальные функции BDOS (дисковые в-основном) возвращают FF-нет файла. Т.е. будет работать любое корректное ПО CP/M не лезущее в диски, например ASCII-игры, программы типа "hello world" и т.п. В планах полный эмулятор CP/M, уже внешний - загружаемый (сделано).

    В качестве дисков используется IDE/SD через CP/M-овский драйвер "сырого доступа" IDEBDOS, схема MBR-партиций (поддерживаются только 4 основные партиции на двух физических приводах - итого 8 партиций, на двух RAW (от LBA0=MBR до LBAmax)) дисках: fd8{партиции fd0,fd2,fd4,fd6} и fd9{партиции fd1,fd3,fd5,fd7}, номер партиции передается в утилиты (проверяемая/копируемая/где создается файловая система) и в ядро (root-партиция, остальные через mount) как параметр командной строки.

    Исходники размещены на GitHub.
    Из общего архива исходников собирается и ядро (idebdos.com, emu.com, uzix.com) и утилиты (набор BD.COM, FSCK.COM, MKFS.COM, UCP.COM; или отдельно fdisk.com). Сборка проходит за 15 секунд. Собирается так:
    • правим мakefile - изменяем так: "DEFINES = -DORI_UTIL", или так: "DEFINES = -DORI_UZIX", или так: "DEFINES = -DORI_FDISK", в зависимости от того утилиты, ядро или fdisk компилируются соответственно.
    • запускаем cmd, переходим (cd) в каталог где лежат исходники
    • cmd> make clean & REM удаляем объектники - их всегда(!) надо пересобирать
    • cmd> make kernel & REM или "make utils" или "make fdisk.com" - смотря что в DEFINES


    ПРОЧЕЕ

    Как компилировать приложения под UZIX описано тут

    Oбраз диска тут:
    http://zx-pk.ru/showpost.php?p=776311&postcount=38 - файл ohi-uzix.7z
    Плюс более свежая версия:
    https://drive.google.com/open?id=0B3...XgwZE9Ebnh6eHc

    Пояснение по работе с WIN-утилитами смотрите тут:
    http://zx-pk.ru/showthread.php?t=9589

    Плагины TotatlCommander/DoubleCommander для работы с образами дисков:
    https://zx-pk.ru/threads/24501-tekhr...=1#post1013490

    Утилиты Линукс для работы с файловыми системами UZIX:
    https://github.com/marioaugustorama/UXU

    ЧАВО:

    как засунуть файлы в образ карты (файловую систему Юзикса)

    Как запускать программы от CP/M в UZIX


    Ранее:
    20.09.2108: Причесал концепцию и код встроенного эмулятора CP/M. Читать тут и тут
    05.09.2018: Выложил на GIT утилиты под Винду для работы с образами дисков UZIX, как и имевшиеся у меня оригинальные исходники и образы дисков с MSX.
    06.10.2016: Исходники ядра и утилит теперь на GitHub (полный пак с libc, app).
    06.02.2015: Сделано все чтобы собиралась LIBC. Надо браться за приложения. Рабочие бинари от UZIX что работают без ошибок, пересобирать не планирую - интереснее наваять что-нибудь свое (или собрать недостающие бинари из исходников). Отчет о LIBC тут: http://zx-pk.ru/showpost.php?p=780032&postcount=61
    23.01.2015: Сделано все что хотел и что было в ядре uzix 1.0, готовность ядра 99% Размер ядра - 30к.
    19.01.2015: замедлитель ввода, полный пак файлов на одну большую партицию UZIX (более сотни команд + маны + ...)
    17.01.2015: работосопособный многозадачный промежуточный ночной снапшот исходников, готовность ядра оцениваю в 90%
    07.01.2015: получена работоспособная немногозадачная версия, готовность ядра оцениваю в 70%
    24.11.2014: изначально несобиравшиеся исходники ядра доведены до компилируемости
    хх.11.2014: подготовлена среда сборки (ProgrammersNotepad/HitechC/CpmEmu)
    Последний раз редактировалось Error404; 06.06.2019 в 13:06. Причина: удалены вложения с исходниками т.к. на github всегда последняя версия
    Лучше сделать и жалеть, чем не сделать и жалеть.

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

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

  3. #2
    Moderator
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,577
    Спасибо Благодарностей отдано 
    61
    Спасибо Благодарностей получено 
    106
    Поблагодарили
    92 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Распределение памяти в более широком (подробном) изложении:

    Скрытый текст


    Код:
    == ORION AltairDos page 0 memory map
       0000 ---------------------
         |	 Screen0 - graphic
       4000 ---------------------
         |	 Screen1 - graphic
       8000 ---------------------
         |	 AltairDos ExtendedRAM: 4k segments 08,09,0a,0b	- planned for shared libc in future
       C000 ---------------------
         |	 CP/M crt driver 
         |	 + base fonts (KOI8-R) 		LOCAL MEMORY (accessed driven by 0F9 port: pages port)
       F000 ----------------------------------------------------------------------------------
    	 |		SEE BELOW				COMMON MEMORY (accesed from any page)
    
    
    == ORION AltairDos page 1 memory map
       0000 ---------------------
         |	 Screen0 - color attributes (16 color)
       4000 ---------------------
         |	 Screen1 - color attributes (16 color)
       8000 ---------------------
         |	 AltairDos ExtendedRAM: 4k segment 18			- planned for IDEBDOS driver
       9000 ---------------------
         |	 CP/M (AltairDOS) kernel	LOCAL MEMORY (accessed driven by 0F9 port: pages port) 
       F000 ----------------------------------------------------------------------------------
    	 |		SEE BELOW				COMMON MEMORY (accesed from any page)
    
    
    == ORION UZIX kernel space map (page 2, e.i. CP/M TPA):
       0000 ---------------------
         |	   system vectors
       0010 ---------------------
         |	  reserved for CP/M
       0100 ---------------------
         |	    kernel code
       E000 ---------------------
         |		kernel heap
       Eхxx ---------------------
         |	    kernel stack
       E860 ---------------------
         |	  CP/M (AltairDOS) BDOS (actually wrapper calling to page1 code)
       E8D0 ---------------------
         |	  CP/M (AltairDOS) BIOS (actually wrapper calling to page1 code)
       ED80 ---------------------
         |     UZIX SRV_STACK (for ISR routine)
       EDF9 ---------------------
         |     UZIX TEMPDBUF  (for unplanned disk IO)
       EFF8 ---------------------
         |	  _OLDYINTVEC  byte:word (3b)  ^ ^ ^
         |	  _PRCIMSTACK  word			   | | |
         |	  _BNKMARKER   byte         LOCAL MEMORY (accessed driven by 0F9 port: pages port)
       F000 ----------------------------------------------------------------------------------
    	 |		SEE BELOW				COMMON MEMORY (accesed from any page)
    
    
    == ORION UZIX process space map (pages 3..15):
       0000 ---------------------
         |	   system vectors
       0010 ---------------------
         |	reserved for CP/M emu
       0100 ---------------------
         |	 user process (TPA)
       EBC0 ---------------------
         |	CP/M BDOS/BIOS console functions emulator (BDOS 1..12, BIOS 1..4 functions)
       ECxx ---------------------
         |	  kernel subroutines for getc/putc
       EDxx ---------------------
         |	  kernel subroutines for ssiz/scop (argv/env services)
       EDxx ---------------------
         |	  kernel subroutines for GoUnix/GoExit
       EExx ---------------------
         |	  kernel subroutines for swapin/swapout
       EE80 ---------------------
         |     FSTACK_BCKP
       EF80 ---------------------
         |     UDATA_STASH
       EFF8 ---------------------
         |	  _RETPAGE 	   byte 
         |	  _GOSWAPSTACK word
         |	  _GOUNIXSTACK word			   ^ ^ ^
         |	  _PRCIMSTACK  word			   | | |
         |	  _BNKMARKER   byte         LOCAL MEMORY (accessed driven by 0F9 port: pages port)
       F000 ----------------------------------------------------------------------------------
         |	   FAREA_STACK             COMMON MEMORY (accesed from any page)
       F100 ---------------------		 |  |  |
         |	  IDEBDOS routines			 \/ \/ \/
       F120 ---------------------
         |	  CP/M tty routines
       F14x ---------------------
         |	  CP/M tty buffer
       F162 ---------------------
         |	  dtsize       byte
    	 |   _ret_page     byte
    	 |   _ret_addr	   word	     
    	 |   _ret_sp	   word	     
    	 |	_switch_page   byte	
         |	  U_DATA   120 bytes
       F1E2 ---------------------
         |	  CP/M crt routines
       F201 ---------------------
         |	CP/M interbank routines: BLDIR, BJMP, BCALL, BRET, BLDB, BSTB 
       F2xx ---------------------
         |	CP/M int 50Hz ISRs: MINT, MDI, MEI;  ISR_RET=0f2e3h, F3STACK=0F2B5h
       F2FB ---------------------
         |	reserved int vector word
         |	TTY IM2  int vector word
         |	50Hz IM2 int vector word
       F301 ---------------------
         |	CP/M interbank vectors (page:addr, 3 bytes):
         |	YBDOS			bank:addr=byte:word
         |	YBIOSWARM		bank:addr=byte:word
         |	YBIOSCONST		bank:addr=byte:word
         |	YBIOSCONIN		bank:addr=byte:word
         |	YBIOSCONOUT		bank:addr=byte:word
         |	YBIOSLSTOUT		bank:addr=byte:word
         |	YBIOSAUXOUT		bank:addr=byte:word
         |	YBIOSAUXIN		bank:addr=byte:word
         |	YBIOSHOME		bank:addr=byte:word
         |	YBIOSSELDISK	bank:addr=byte:word
         |	YBIOSSELTRK		bank:addr=byte:word
         |	YBIOSSELSEC		bank:addr=byte:word
         |	YBIOSSETDMA		bank:addr=byte:word
         |	YBIOSREAD		bank:addr=byte:word
         |	YBIOSWRITE		bank:addr=byte:word
         |	YBIOSLSTST		bank:addr=byte:word
         |	intvec (INT 50Hz)		  byte:word
         |	intkey (ctrl+shft+key)    byte:word
       F334 ---------------------
         |	  F3-stack (for interbank routines)
       F3C0 ---------------------
         |	  ROM-BIOS Monitor vectors, variables and constants
       F400 ---------------------
       F500	  keyboard PPA 8255
       F600	  romdisk  PPA 8255
         |	  printer  PPA 8255
       F700 ---------------------
         |	  user devices ports
       F800 ---------------------
         |	  ROM-BIOS Monitor code (ROM)
       FFFF ---------------------
    [свернуть]


    Ядро сейчас написано (все мысли уже перенесены в код), но пока много ошибок - в процессе отладки. И уже придумал изменения кое-где, надо внедрять. Но подает признаки жизни. Запускается само ядро, монтируется РУТ, создается процесс, в него читается образ INIT, передается управление INIT, из процесса идет вывод на экран (пока что из-за отсутствия либ, через call 5 - через эмулятор CP/M, но и он вобще-то идет "по взрослому" - через STDOUT функции ядра, а не напрямую). Готовность ядра оцениваю в 50%.
    Надо делать либы и допиливать "межстраничную" обработку передаваемых данных из процессов в sys_* функции ядра (физически они в разном пространстве - разных 64к страницах, т.е. надо по необходимости делать пересылки туда и обратно после обработки).

    Без пересылок не обойтись, т.к. основное ИМХО - выдавать процессору максимум "сплошного" ОЗУ (сейчас процессу дается 58,5к "чистого ОЗУ", пока без всяких диспетчеров по 16к - хотя и его позже задействую для shared libc, т.е. будет до 74,5к сугубо на процесс, а это очень прилично для Z80!), а пересылки можно компенсировать увеличением такта ЦПУ. В связи с этим я предлагаю реанимировать темку "быстрого CP/M-компутера на реальном Z80", и сделать его совместимым с маппером из первого поста (в одном из режимов приблизить к Ориону). Короче, вызываю в тему Евгения, Мика, Хардваремана, которые все подобные проекты начинали, но не помню выдали ли нагора результат хоть кто-нить.
    Также приветствуются проекты по разгону реальных Орионов-rev512 и Орионов-ПРО.
    Также, могу поддержать в драйвере idebdos, т.е. и в UZIX, реальные (т.е. проверенные автром в железе и с минимальным кодом нижнего уровня - отлаживать это мне самому нет времени) проекты быстрого IDE (типа НЕМО) и SD (типа самотактируемого от Хардваремана) на россыпухе. Нынешние внедренные мной схемы IDE и SD хотя и простые, но медленные.
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	idebdos.jpg 
Просмотров:	429 
Размер:	22.3 Кб 
ID:	50404   Нажмите на изображение для увеличения. 

Название:	bd.jpg 
Просмотров:	320 
Размер:	23.2 Кб 
ID:	50405   Нажмите на изображение для увеличения. 

Название:	ucp-fsck.jpg 
Просмотров:	386 
Размер:	22.6 Кб 
ID:	50406   Нажмите на изображение для увеличения. 

Название:	uzix.jpg 
Просмотров:	287 
Размер:	21.3 Кб 
ID:	50407  
    Последний раз редактировалось Error404; 26.12.2014 в 19:56.
    Лучше сделать и жалеть, чем не сделать и жалеть.

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

  4. #3
    Super Moderator Аватар для Ewgeny7
    Регистрация
    03.07.2005
    Адрес
    Санкт-Петербург
    Сообщений
    10,168
    Спасибо Благодарностей отдано 
    146
    Спасибо Благодарностей получено 
    76
    Поблагодарили
    51 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    Нынешние внедренные мной схемы IDE и SD хотя и простые, но медленные.
    Взять готовый Z-контроллер со спектрума. Тупо бросаешь ему байт в порт 0х57 и забываешь. На 28 Мгц клока пашет исправно.
    ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
    Speccy-2007 128/AY/TR-DOS

    Сайт с документацией к "Scorpion ZS 256"

  5. #4
    Moderator
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,577
    Спасибо Благодарностей отдано 
    61
    Спасибо Благодарностей получено 
    106
    Поблагодарили
    92 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Ewgeny7 Посмотреть сообщение
    Взять готовый Z-контроллер со спектрума. Тупо бросаешь ему байт в порт 0х57 и забываешь. На 28 Мгц клока пашет исправно.
    А кинь ссылочку на где почитать про него? Из чего построен, что умеет.

    Вообще, хотелось бы на россыпухе, типа чтобы атомный олдскул. Но особо цепляться за это не буду, тем более если можно будет готовую плату воткнуть. Кстати, воткнуть - куда? Слоты то везде разные, хоть на ревизии512, хоть на ПРО. Ёлку-переходник сделать к ZX-bus?
    Лучше сделать и жалеть, чем не сделать и жалеть.

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

  6. #5
    Super Moderator Аватар для Ewgeny7
    Регистрация
    03.07.2005
    Адрес
    Санкт-Петербург
    Сообщений
    10,168
    Спасибо Благодарностей отдано 
    146
    Спасибо Благодарностей получено 
    76
    Поблагодарили
    51 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    А кинь ссылочку на где почитать про него? Из чего построен, что умеет
    К сожалению, он существует только на ПЛИС. Но это и облегчает ситуацию, мелкосхемка 1х1см с лапами с шагом 0,8мм легко паяется даже обычным паялом, а сам модуль состоит всего из одной детали. На "рассыпушном" компе ZXM-Phoenix уже давно внедрили этот контроллер как штатный.
    Могу выслать почтой прошитые чипы.
    Описание всего этого хозяйства можно почитать в журнале Абзац №32, со страницы 67 и далее.

    ---------- Post added at 13:37 ---------- Previous post was at 13:34 ----------

    И, собственно, поскольку модуль на ПЛИС, можно изменять интерфейс на более приемлемый. Например, заводить адреса на чип, пускай сам ловит свой порт, или заводить просто два готовых сигнала селекта портов.
    ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
    Speccy-2007 128/AY/TR-DOS

    Сайт с документацией к "Scorpion ZS 256"

  7. #6
    Moderator
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,577
    Спасибо Благодарностей отдано 
    61
    Спасибо Благодарностей получено 
    106
    Поблагодарили
    92 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Ewgeny7 Посмотреть сообщение
    На "рассыпушном" компе ZXM-Phoenix уже давно внедрили этот контроллер как штатный.
    Могу выслать почтой прошитые чипы.
    Описание всего этого хозяйства можно почитать в журнале Абзац №32, со страницы 67 и далее.
    Ну, в принципе - вариант, конечно. Раз уж заводить туда адреса/данные, то на этой же CPLD можно наверное и другие селекторы сделать - например для сетевой RTL8019 или для RS-232 под ATTiny (а может и весь RS-232 влезет прям в CPLD). А чего там Савелий писал про сбои в зависимости от "повышенной" частоты 7МГц, под который ему пришлось подбирать задержки? Нам то надо повышать гораздо выше чем до 7. Стабильно оно работает на Турбо/нетурбо?
    Лучше сделать и жалеть, чем не сделать и жалеть.

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

  8. #7
    Super Moderator Аватар для Ewgeny7
    Регистрация
    03.07.2005
    Адрес
    Санкт-Петербург
    Сообщений
    10,168
    Спасибо Благодарностей отдано 
    146
    Спасибо Благодарностей получено 
    76
    Поблагодарили
    51 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    А чего там Савелий писал про сбои в зависимости от "повышенной" частоты 7МГц, под который ему пришлось подбирать задержки?
    Я не помню такого...
    У меня оно работает на 7Мгц на Скорпионе, да и 14Мгц давно опробовано на u-Reverse. Вероятно, это имеются ввиду задержки на отправку-прием байта. При частоте модуля в 28Мгц ему все равно потребуется не менее 8 тактов на байт. Просто надо сигнал готовности вывести, его сейчас нету.

    ---------- Post added at 20:30 ---------- Previous post was at 20:28 ----------

    Цитата Сообщение от Error404 Посмотреть сообщение
    то на этой же CPLD можно наверное и другие селекторы сделать - например для сетевой RTL8019 или для RS-232 под ATTiny (а может и весь RS-232 влезет прям в CPLD).
    Не стоит, ИМХО. Такой колхоз потребует жирной CPLD, а она сложнее в монтаже, имея лапы TQFP-0.5*100.

    ---------- Post added at 20:57 ---------- Previous post was at 20:30 ----------

    И еще вопрос. А что требуется, чтобы на Орионе запустить это "промежуточное изделие"? Есть девборда с ПЛИС, заточенная под Орион. Можно перелопатить под текущие нужды.
    ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
    Speccy-2007 128/AY/TR-DOS

    Сайт с документацией к "Scorpion ZS 256"

  9. #8
    Moderator
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,577
    Спасибо Благодарностей отдано 
    61
    Спасибо Благодарностей получено 
    106
    Поблагодарили
    92 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Ewgeny7 Посмотреть сообщение
    А что требуется, чтобы на Орионе запустить это "промежуточное изделие"? Есть девборда с ПЛИС, заточенная под Орион. Можно перелопатить под текущие нужды.
    Хороший вопрос. Оставляя за скобками интересность наблюдения "hello world, I am init" (а больше пока ничего там не увидеть - under construction), я подумаю как это промежуточное изделие запускать кому-нить кроме меня. Т.к. сам я многое делаю "на коленке". Например образ рабочего диска где есть и партиция CP/M и партиция UZIX, я слепил тупо сконкатенировав ("склеив") командой "copy /b" какой-то образ HDD от CP/M и 720-кшный образ системной дискетки от USIX и поправив таблицу разделов редактором. Загружаюсь в эмуле с CP/M из ПЗУ (т.к. нужна Альтаир-DOS 3.5r), затем работаю с образом IDE (там более старая ОС на системных дорожках, ее бы переписать тупо Повером на ПЗУ-шную, да руки не доходят ). В-общем никуда не годится. Буду параллельно делать инструменты и методичку, на новогодних каникулах опубликую (раньше - вряд ли). Сейчас уже допилил и положил в исходники fdisk (поправил первый пост), но не все сразу - еще и работать надо - подкинули работы под занавес года.
    Лучше сделать и жалеть, чем не сделать и жалеть.

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

  10. #9
    Super Moderator Аватар для Ewgeny7
    Регистрация
    03.07.2005
    Адрес
    Санкт-Петербург
    Сообщений
    10,168
    Спасибо Благодарностей отдано 
    146
    Спасибо Благодарностей получено 
    76
    Поблагодарили
    51 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    Хороший вопрос
    Дык старался, млин...
    Скажем так, для чистоты процесса.
    Как я понимаю, нам нужна будет просто голая машина с Z80 и максимумом памяти "по образу и подобию" Ориона. В ней будет запускаться СР/М, откуда будем уже прыгать в UZIX? Предварительная версия, так сказать...
    Кстати, готовая связка "Монитор с автозапуском СР/М с ПЗУ" существует в природе? Чтобы сразу проскакивать стадию ОРДОСа.
    ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
    Speccy-2007 128/AY/TR-DOS

    Сайт с документацией к "Scorpion ZS 256"

  11. #10
    Moderator
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,577
    Спасибо Благодарностей отдано 
    61
    Спасибо Благодарностей получено 
    106
    Поблагодарили
    92 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Ewgeny7 Посмотреть сообщение
    Дык старался, млин...
    Скажем так, для чистоты процесса.
    Как я понимаю, нам нужна будет просто голая машина с Z80 и максимумом памяти "по образу и подобию" Ориона. В ней будет запускаться СР/М, откуда будем уже прыгать в UZIX?
    Да, так и будет. И в финальной версии тоже, по крайней мере пока я все вкусное не переделаю и не захочется оптимизировать уже работающее. CP/M используется чтобы не писать отдельно драйвер вывода на экран VT52, менеджер расширенной памяти, менеджер прерываний, межбанковские процедуры, п\п доступа к IDE/SD - это все есть в АльтаирДОС.

    Предварительная версия, так сказать...
    Кстати, готовая связка "Монитор с автозапуском СР/М с ПЗУ" существует в природе? Чтобы сразу проскакивать стадию ОРДОСа.
    Поскольку от раздела с CP/М (как и от самой её) на IDE/SD (да хоть на дисководе) мы все равно не уйдем, то проще тупо разместить нужную версию на системных дорожках и грузиться соответствующими Мониторами минуя ОРДОС. Сделаю завтра образ для IDE/SD c v3.5r, это реально пара команд в POWER + одно действие в FDISK.
    Последний раз редактировалось Error404; 30.12.2014 в 01:52.
    Лучше сделать и жалеть, чем не сделать и жалеть.

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

Страница 1 из 22 12345 ... ПоследняяПоследняя

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

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

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

Похожие темы

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

Ваши права

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