"Собрал" компилятор под Z80. Всё равно работать не будет, так, чисто поржать.
210 килобайт![]()
"Собрал" компилятор под Z80. Всё равно работать не будет, так, чисто поржать.
210 килобайт![]()
Bolt, Так это что получается, если его таки заставить работать, типа на клоне с мегабайтом памяти; то он, чисто ZX, сможет собрать себя-же и под ZX и под что-то другое, например под ПиСи? И его можно будет гонять, профайлить, дебажить и оптимизировать, ужимая до ста килобайт и меньше?![]()
Последний раз редактировалось Reobne; 13.07.2019 в 20:11. Причина: Добавил запятых
Ну, теоретически, да
Практически упирается в размер необходимой RAM, в скорость работы на Z80, и в мою скорость работы![]()
согласен, что ценно только в паре с профайлером. Но его писать универсальный для всех 8, 16, 32 битных систем сложновато. А для z80 можно сделать, но и тут все не тривиально, вон их сколько всяких разных железяк напридумывали. Сейчас пока после каждой компиляции надо просматривать ассемблерный текст, что он там нагенерил( да еще если ключи разные оптимизации появятся). Писать подробный мануал, как писать быстрый и оптимальный код, тоже вряд ли захочется. А так пусть каждый разработчик выеживается, как знает. Ассемблер кто-то подзабыл, кому-то "религия" не позволяет много времени терять на проект. Тем более, если он кого-то заинтересовал, то можно и переписать на ассемблере. А как эскизный проект в самый раз на ЯВУ.
Про STM8 я писал статью для журнальчика Compel-а в 2009 году, поверхностная получилась не было уже особого стимула писать, а после они регулярно что-то по этому семейству писали
https://www.compel.ru/lib/ne/2009/2/...emeystva-stm8s
Камушек интересный, но дисплейчики к нему цеплять графические это на мой взгляд черезчур. Да и смысл? Цена у них с STM32 различается не сильно, а готовых решений с дисплеями для STM32 вагон. Для популяризации кросс-компилятора вполне достаточно. Но это дело хозяйское. Паскаль же и графика естественный тандем или нет? Впрочем может к современным кросс-ассемблерам для z80 графические пакеты тоже легко цепляются. Правда еще нужен удобный IDE+отладчик.
Последний раз редактировалось andrews; 14.07.2019 в 18:36.
Почему STM8? Потому что если сейчас займусь ещё и STM32, то утону в регистрах, драйверах и RTL. Z80, 8086, STM8, PIC24, и даже 80386, если не лезть в защищённый режим - это то, что для меня просто и понятно. На этих платформах отрабатываю общую структуру компилятора, багов и так достаточно, а потом можно будет переходить на ARM и MIPS, которые пока для меня не совсем привычны.
STM8 не обязательно должен быть с графическим дисплеем, он может быть и "автономным". Читать датчики, отправлять данные по UART, мигать светодиодом.
Паскаль это не только графика, но и, например, переносимость программ. Драйвер SD-карты и файловой системы ext2 прекрасно работает на PIC24 и PIC32, надо - и на Спектруме запустим![]()
Уфф, скользкая стезя. Одно дело продвижение кросс-компилятора на других платформах, и совсем другое введение в обиход железа "24-битный программный счетчик, с помощью которого стало возможным адресовать 16-мегабайтное адресное пространство памяти с отображенными в него регистрами. Мощность вычислительного ядра возросла, конечно, не в той степени, чтобы способствовать увеличению адресного пространства (хотя по сравнению с семейством ST7 добавлены операции деления 16-бит на 16-бит и 16-бит на 8-бит и более быстрого знакового умножения 8-бит на 8-бит). Большинство инструкций выполняются быстрее за счет трехстадийного конвейера, раздельной внутренней 32-разрядной шины для выборки инструкций и 16-разрядной шины данных. В командах, работающих с содержимым памяти, совмещены в одном машинном цикле операции чтения и записи. Все это дает возможность получить производительность процессора до 20 MIPS при тактовой частоте 24 МГц".
Хотя был такой компьютер "Искра-226" где основной процессор был совместим с материнским Hewlett Packard, а втыкалось
в него что угодно и порой в разы более мощное. Но тогда надо выбирать какое-то спектрумовское железо с шиной, а то переговоры-тары-бары с авторами. Лампочки вкл./выкл? Можно конечно, но для z80 и STM8 можно считать ускорителем. В свое время мы с Игорем Мазницей и на AT90S1200 что-то пытались со спрайтами делать, пока его в Полигедрон не унесло.
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Не бросаю
Вопросы по теме.
1. В каком Спектрум-совместимом компьютере много памяти (хотя бы 512 килобайт), и можно отображать любую страницу в любое место?
2. Как в нём переключать страницы памяти?
3. Как в нём работать с файлами? (открыть, закрыть, прочитать, записать)
4. Где взять эмулятор этого компьютера, и желательно под Линукс?
Пользуюсь FUSE, в нём есть Pentagon 512k и Pentagon 1024k, но в них меняются только верхние 16к, и пока не могу придумать как там всё разместить.
Не шибко много отвечу, но ...
1. Посмотри в сторону EVO, ATM и прочих недописей ))
2. Я особо не вникал (максимум дров совместимости на верхнюю память) там вроде даже не один вариант а несколько. Поспрашивай у тех кто в теме, или доки почти.
3. Либо под тырдос (как в тырдос), либо под не тырдос (тазисы, cp-емы и недооси)
4. Нативно под линь походу аналога Xpeccy не видел, но настроить придётся повозиться. А через вайн можно и унриал попользовать.
есть Fuse под линупс.
насчет чтения файла - пример тут
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)