С уважением,
Gris / Red Triangle.
_____________________________________
ZX-EVO/TS-Labs config/NGS/HDD/SD-card
Amiga A1200/Blizzard 1230@50/32/60GB
Amiga A1200/Apollo 1260@66/32/60GB
UnAmiga (C5) AGA GM7123 VideoDAC
Граф Дракула наш кумир, патамушта он вомпир!
VKINK 9 : BORDER NOT PI
Короче, захотел я собрать..
SDCC : mcs51/z80/z180/r2k/r3ka/gbz80/tlcs90/ds390/pic16/pic14/TININative/ds400/hc08/s08/stm8 3.4.1 #9108 (Nov 16 2014) (Linux)
А оно как сругается!
Как жить с этим?! Как побороть?sdcc -c --std-sdcc99 --no-std-crt0 -mz80 -I/home/salex/work-zx/FUZIX/Kernel/cpu-z80 -I/home/salex/work-zx/FUZIX/Kernel/platform-zx128 -I/home/salex/work-zx/FUZIX/Kernel/include --max-allocs-per-node 30000 --opt-code-size --Werror --stack-auto --constseg CONST --codeseg CODE2 syscall_proc.c
Internal error: validateLink failed in SPEC_NOUN(type) @ SDCCcse.c:1667: expected SPECIFIER, got DECLARATOR
Makefile:125: ошибка выполнения рецепта для цели <<syscall_proc.rel>>
make: *** [syscall_proc.rel] Ошибка 1
Хочу в итоге на Пентеве FUZIX. При её 4Мб можно не ограничиваться 5 задачами) даже есть по 16 кб на задачу - то 128 влезет)
К примеру взять релиз а не ночную сборку
Именно
https://github.com/EtchedPixels/FUZIX/issues/10
---------- Post added at 02:09 ---------- Previous post was at 02:03 ----------
На пентеве же крутой банкинг, как я понимаю, можно в любую банку включать что угодно. Поэтому под задачу можно исхитриться выделить 60 с лишним килобайт - всю память за вычетом лишь udata, стека и таблицы рестартов и прерываний.
Граф Дракула наш кумир, патамушта он вомпир!
VKINK 9 : BORDER NOT PI
Банкинг, конечно "крутой" в том смысле, что "любая страница в любое окно".
Но окна - всёж по 16К. Потому, чтобы избежать копирования - лучше 16/32/48К на задачу.
попробую релиз SDCC 3.4.0-rc3
В принципе - задача-минимум сделать загрузчик для Pentevo и менеджер памяти для неё же. Пока, для совместимости с 128мым пусть одно приложение будет не более 16 К.
Вдруг получится
Последний раз редактировалось SfS; 17.11.2014 в 08:23.
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Скомпилировать получилось.
Создал отдельную платформу для zxpentevo.
Что плохо - пути к библиотекам SDCC прибыты гвоздями. Прилагаю скрипт, который умеет спрашивать у SDCC пути к инклюдам и либам и выводить их в поток стандартного вывода.
Вечером, я надеюсь, буду пробовать запилить на живой пентеве загрузчик.
Запуши лучше Алану. Надо пользоваться тем, что у проекта есть живой мейнтейнер.
Или хотя бы в комменты к http://github.com/EtchedPixels/FUZIX/pull/4
Хотя один фиг для этого тоже надо на гитхабе регаться
---------- Post added at 12:56 ---------- Previous post was at 12:52 ----------
Всё копирование будет сводиться к переброске 256 байт udata. Счас все платформы через такой LDIR и работают.
Хотя я не знаю, как на пентеве переключается экран. Если он "прибит" к текущей банке в #4000, то его тоже надо копировать, а это уже да, не круто.
Идеальный вариант, наверное - это переключить экран на #C000 (если возможно в ATM-режиме) и щелкать только нижними тремя страницами. Тогда копирование сведется к однократному копированию таблицы векторов при старте нового процесса.
Граф Дракула наш кумир, патамушта он вомпир!
VKINK 9 : BORDER NOT PI
Прошу прощенья за пионерские вопросы - где в исходниках описываются аппаратные диспетчеры памяти? Осмотр "по диагонали" выявил только какие-то абстракции на тему простейшего управления памятью страничками по 4к. Как-то всё неочевидно, покрайней мере для непрограммиста - не просматривается прямая корреляция между аппаратными диспетчерами и дефайнами, которые там Алан сочинил и типа описал.
Лучше сделать и жалеть, чем не сделать и жалеть.
Некоторые из моих поделок тут: https://github.com/serge-404
С уважением,
Gris / Red Triangle.
_____________________________________
ZX-EVO/TS-Labs config/NGS/HDD/SD-card
Amiga A1200/Blizzard 1230@50/32/60GB
Amiga A1200/Apollo 1260@66/32/60GB
UnAmiga (C5) AGA GM7123 VideoDAC
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)