OberonCore https://forum.oberoncore.ru/ |
|
A2. Cборка нативных образов https://forum.oberoncore.ru/viewtopic.php?f=22&t=6386 |
Страница 1 из 1 |
Автор: | Ярослав Романченко [ Суббота, 20 Апрель, 2019 16:54 ] |
Заголовок сообщения: | A2. Cборка нативных образов |
Если хочется попробовать запустить A2 на голом железе, это можно сделать. Тут на форуме одна рекомендация была уже: Kemet писал(а): В этом файле есть пункт: Т.е. надо:# Step 3e: Create image for bootable USB (A2USB.img) Создание других образов ещё не поправлено 1) создать папку Test (на уровень выше рабочей папки Work. Если А2.exe запустить с настройками по-умолчанию, папку Test надо создать в той же папке, где лежит А2.exe); 2) открыть Build.Tool; 3) выполнить шаг 1 из Build.Tool (всё скомпилировать в папку Test): Цитата: # Step 1: Compile modules and generate ZIP packages 4) выполнить шаг 3e из Build.Tool.Release.Build --path="../Test/" --build --zip --xml Bios32 ~ В итоге у нас в папке Test появится образ, пригодный для записи на флешку (записать можно, например, с помощью win32diskimager). И всё. Заставить его загружаться хоть в какой-нибудь виртуалке не получилось. QEMU, вроде, поддерживает эмуляцию загрузочных USB в трёх различных вариантах эмуляции, но тоже результата я не добился. Тем не менее, флешка нормально загрузилась на моём старом ноутбуке Samsung R518. Гораздо полезнее, как оказалось, сделать загрузочный образ HDD. С него удалось загрузиться в QEMU и BOCHS. Слегка модифицировав команды из шага 3e из Build.Tool получил генератор образов HDD: Цитата: # Create image for bootable HDD (A2IDE.img) System.DoCommands Compiler.Compile -p=Bios32 --destPath=../Test/ BIOS.PCI.Mod UsbEhci.Mod BIOS.UsbEhciPCI.Mod ~ PCAAMD64.Assemble OBLUnreal.Asm ~ PartitionsLib.SetBootLoaderFile OBLUnreal.Bin ~ PCAAMD64.Assemble BootManager.Asm ~ BootManager.Split BootManager.Bin ~ System.Timer start ~ FSTools.DeleteFiles -i ../Test/A2IDE.img ~ VirtualDisks.Create ../Test/A2IDE.img 320000 512 ~ VirtualDisks.Install -b=512 VDISK0 ../Test/A2IDE.img ~ Partitions.WriteMBR VDISK0#0 OBEMBR.BIN ~ Partitions.InstallBootManager VDISK0#0 BootManagerMBR.Bin BootManagerTail.Bin ~ Partitions.Create VDISK0#1 76 150 ~ Linker.Link --path=../Test/ --displacement=100000H --fileName=../Test/IDE.Bin Kernel Traps ATADisks DiskVolumes DiskFS Loader BootConsole ~ Partitions.Format VDISK0#1 AosFS -1 ../Test/IDE.Bin ~ (* -1 makes sure that actual boot file size is taken as offset for AosFS *) FSTools.Mount TEMP AosFS VDISK0#1 ~ ZipTool.ExtractAll --prefix=TEMP: --sourcePath=../Test/ --overwrite --silent Kernel.zip System.zip Drivers.zip ApplicationsMini.zip Applications.zip Compiler.zip CompilerSrc.zip GuiApplicationsMini.zip GuiApplications.zip Fun.zip Contributions.zip Build.zip EFI.zip Oberon.zip OberonGadgets.zip OberonApplications.zip OberonDocumentation.zip KernelSrc.zip SystemSrc.zip DriversSrc.zip ApplicationsMiniSrc.zip ApplicationsSrc.zip GuiApplicationsMiniSrc.zip GuiApplicationsSrc.zip FunSrc.zip BuildSrc.zip ScreenFonts.zip CjkFonts.zip TrueTypeFonts.zip ~ FSTools.Watch TEMP ~ FSTools.Unmount TEMP ~ Partitions.SetConfig VDISK0#1 TraceMode="4" TracePort="1" TraceBPS="115200" BootVol1="AOS AosFS IDE0#1" AosFS="DiskVolumes.New DiskFS.NewFS" CacheSize="1000" ExtMemSize="512" MaxProcs="-1" ATADetect="legacy" Init="117" Boot="DisplayLinear.Install" Boot1="Keyboard.Install;MousePS2.Install" Boot2="DriverDatabase.Enable;UsbHubDriver.Install;UsbEhciPCI.Install;UsbUhci.Install;UsbOhci.Install" Boot3="WindowManager.Install" Boot4="Autostart.Run" ~ VirtualDisks.Uninstall VDISK0 ~ System.Show HDD image build time: ~ System.Timer elapsed ~ FSTools.CloseFiles ../Test/A2IDE.img ~ ~ Для загрузки в BOCHS надо скачать последние версии: BOCHS, BIOS-bochs-latest, VGABIOS-lgpl-latest.bin. Положить всё в одну папку, а также положить такой текстовый файл конфигурации машины (назвать bochsrc.bxrc): bochsrc.bxrc писал(а): megs: 1024 romimage: file=BIOS-bochs-latest vgaromimage: file=VGABIOS-lgpl-latest.bin vga: extension=vbe, update_freq=60 ata0-master: type=disk, path=A2IDE.img, cylinders=203, heads=16, spt=63 boot: disk log: bochsout.txt mouse: enabled=1 cpu: ips=15000000 QEMU - виртуальная машинка поинтереснее. В ней можно настроить вывод отладочной информации через COM-порт в отдельное окно (этот образ HDD, созданный по приведённой инструкции, как-раз будет её выводить на COM1 со скоростью 115200). Батник для запуска QEMU прилагается. Когда при запуске появится диалог настроек COM-порта, там как-раз надо выбрать скорость 115200. A2IDE QEMU.bat писал(а): "c:\Program Files\qemu\qemu-system-x86_64.exe" -drive file=A2IDE.img,format=raw -m 1024 -machine pc -chardev serial,id=com1,path=com1
|
Автор: | Sergej Durmanov [ Суббота, 20 Апрель, 2019 19:34 ] |
Заголовок сообщения: | Re: A2. Cборка нативных образов |
А в репозитории поправить можешь? |
Автор: | Ярослав Романченко [ Воскресенье, 21 Апрель, 2019 20:48 ] |
Заголовок сообщения: | Re: A2. Cборка нативных образов |
Феликс дал пароль, но что-то меня всё-равно не пускает |
Автор: | Ярослав Романченко [ Понедельник, 22 Апрель, 2019 18:33 ] |
Заголовок сообщения: | Re: A2. Cборка нативных образов |
Поправил |
Автор: | budden [ Понедельник, 22 Апрель, 2019 23:33 ] |
Заголовок сообщения: | Re: A2. Cборка нативных образов |
Естественное место для таких текстов - это либо документация в самом проекте (тогда наиболее естественно использовать формат markdown, поскольку в нём есть достаточный минимум, и гитхаб его показывает без всяких усилий со стороны автора), либо отдельная вики (это гораздо хуже, т.к. изменения вики несинхронны с изменением репозитория и вообще рабочий процесс неверсионный). В форуме - это последнее дело. Не хотите ли принять решение о внесении инструкций по построению в ваш репозиторий? |
Автор: | budden [ Вторник, 23 Апрель, 2019 00:22 ] |
Заголовок сообщения: | Re: A2. Cборка нативных образов |
Сделал PR по этому документу, в качестве примера, как бы это могло выглядеть. Кстати, и название придумал - YA2OS, думал не долго, но вроде так ничего получается. |
Автор: | budden [ Воскресенье, 05 Апрель, 2020 16:19 ] |
Заголовок сообщения: | Re: A2. Cборка нативных образов |
На какой версии QEMU это работало? У меня в упор ничего не работает на последней 4.2.0. Про COM порт что-то ругается (CreateFile ошибка 2). Без COM-порта сначала что-то говорит, я нажимаю цифру 1, она говорит, что грузит Оберон, доходит до перехода в графический режим и дальше - чёрный экран. Пробовал и под Linux, версия 3 с чем-то. Успехи примерно такие же. |
Автор: | budden [ Вторник, 07 Апрель, 2020 13:46 ] |
Заголовок сообщения: | Re: A2. Cборка нативных образов |
Передаю телеграмму: Сборка BIOS32 неработоспособна начиная с изменения 2019-10-26 с сообщением фиксации "Removed SYSTEM.VAL with different sized arguments" . Куда следует сообщили, товарищи принимают меры. |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |