TS-Conf на ReVerSE-U16

Железо, связанное с TS-Conf

Postby TS-Labs » Fri, 12.09.2014 15:10:54

Развелось этих т80... У КОЕ еще есть какой-то фикс для т80.
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby dsp » Sat, 13.09.2014 06:40:51

Спасибо MVV за V26. Скачал, подключил FAT32(что делал – есть файл ReadMe.doc в архиве). Откомпилировал и прошил U16. Отключил / подал питание – плата завелась. Запустил тесты (test_gfx.7z) от TS-Labs, все вроде нормально отображает. Запустил рубикон – проигрывает нормально (я бы сказал как в оригинале). Упрямо меняю процессор на tv80s от TS-Labs, так-как рубикон (в оригинальной сборке) во второй части вместо звука выдает шипение. Если честно – то мне все равно какой проц, абы работало нормально. MVV, если у тебя есть подозрения или обоснованные факты в неправильной (по хз какой причине) работе tv80s, то озвучь пожалуйста. Так как для меня лично важна информация (и мое время), а не то, какой процессор подключать. По поводу ENC, я делал пинговалку и выкладывал исходники, могу еще раз выложить. RTC - проверю. Опция загрузки из FLASH или SD (FAT32)- отличная идея. Для начала можно просто -если не находит на SD то грузит из FLASH. Можно наверное ini файл на флешке вначале грузить с конфигурацией. Прикрепляю FAT32 Loader - грузит два файла для примера (я его в TWARM использовал для GS - все работает). В идеале наверное хорошо сделать загрузку конфигурации в FPGA через контроллер (Может подумать на счет VNC2 если нет ничего другого). Тогда получается просто - SD карточку поменял и все - новый ретрокомпьютер. Это и логично. Под разные конфигурации лучше иметь разные флешки.
Attachments
LOADER(FAT32 TSConf, GS).RAR
(10.32 KiB) Downloaded 340 times
U16_Project_V26.rar
(404.43 KiB) Downloaded 316 times
dsp
 
Posts: 127
Joined: Wed, 25.06.2014 05:53:32

Postby MVV » Sat, 13.09.2014 10:35:20

dsp, добавил в репу. Cоздай аккаунт на google code и bitbucket чтобы была возможность работать в команде над проектом.
dsp wrote:Упрямо меняю процессор на tv80s

Изменю в основной ревизии. Процы можно прогнать в zexall. Есть конфиг в репе (test/) для u8/u9 где тестятся nz80 и t80. Ну а пока пусть будет tv80s, так ближе к оригиналу.
dsp wrote:По поводу ENC, я делал пинговалку

Попробую разобраться и добавить в загрузчик. VBI смотрю, кинул идею прикручивания logo, можешь перекинуть C код ping который выложил dsp в асм z80? Настройку RTC, я уже как обычно сделал сам. Теперь немного отвлекусь на доработку загрузчиков для U8/U9, т.к. их никто так и не поддерживает :( а настройку RTC там ещё так и никто не сделал.
dsp wrote:сделать загрузку конфигурации в FPGA через контроллер

Думаю добавить возможность записи в M25 для конфигурирования платы прямо из SD или USB-Flash. Сам setup можно сделать подгружаемым, оставив в FPGA только простой загрузчик блока инициализации.
dsp wrote:использовал для GS

По поводу GS, для простой его реализации требуется SRAM, что отпадает в виду её отсутствия на плате. Как вариант остается выкроить циклы SDRAM, сделав возможность работы GS в режиме CPU 3.5МГц/GS 10.5МГц. Еще как обсуждаемый сейчас с TS-Labs вариант - DMA SC (32 канала), но это ещё только в планах, есть правда небольшое начало работы у меня в этом направлении в репе.
dsp wrote:Может подумать на счет VNC2

Если не отходить от действительности, то VNC можно использовать для загрузки конфигурации из USB устройств в M25 через loader в FPGA. Ну и VNC единожды прошитый loader'ом может сам себя уже обновлять. Также требуется добавить двухстороннюю связь через SPI и UART, добавить поддержку команд и увеличить скорость обмена до max. Сейчас реализована только поддержка клавиатуры с передачей пакетов в FPGA через UART на скорости 9600. На очереди поддержка классов - HID, Audio, CDC, PID, Image, Printer, MSD, USB hub, Video Device, Wireless Controller...

Посоветуйте, на какие клавиши повесить Kempston, чтобы при нажатии всех клавиш на Kempston все биты устанавливались. Т.к. невозможно управлять, если случается нажимать одновременно к примеру - стрельба+вверх+вправо :)
MVV
 
Posts: 479
Joined: Sun, 01.12.2013 22:48:17

Postby VBI » Sat, 13.09.2014 20:15:47

Итак, клавиатура:
в CLi² (Command Line Interface 2) на U16 я получаю по 6 нажатых клавиш сразу, так быстро повторяется нажатие. на пентеве работает вполне вменяемо.

Ещё, краткое чтение клавиатуры, по типу:
ld a,#7f
in a,(#fe)
cp #fe
jr z,тралала
не отрабатывает, но отрабатывает полное сканирование, в духе:
LD BC,64510
IN A,(C)
BIT 0,A
jp Z,тралала
клавиши в примерах разные, я знаю.

зы: поставил плату в корпус :applause:

PS. предлагаешь мне откомпилить 36 кб Си кода? отлаживать будет очень сложно, я уже в курсе.
и что это нам даст? может таки лучше это дело компилировать sdcc c известными точками входа, как библу?

DMA SC - это 5 игр. и уже всё, конец.
гораздо интереснее - Commodore 64 SID Player vhdl, на СС байтман выставлял свою карточку, можно её взять стандартом по портам.
сюда-же:
Kevin Horton's FPGA SID
Kevin has designed and built a SID chip based on an Altera FPGA with external hardware filters. Very nice project and he has spent a lot of time and effort on it. No source code was released however.

PhoenixSID 65x81
Another great project by George Pantazopoulos to bring a SID to life, this time using a Xilinx FPGA. Unfortunately George was met with a far too untimely demise in the prime of his youth. The project has therefore stalled since '06 and no source code was released.
User avatar
VBI
 
Posts: 1965
Joined: Mon, 03.06.2013 09:20:29

Postby MVV » Sat, 13.09.2014 22:00:38

VBI, извини, но я нифига не смог понять, хоть сильно старался. С RTC действительно было сложно, знаю, в общем делал я setup где-то пол дня, чёт квалификацию растерял :) Такая мысль посетила, типа нафига оно мне? Вылазить из VHDL, Verilog и лезть в программирование z80, когда есть спецы, которым это как два... Ну раз, это сложно было сделать, я то в этом не разобрался тогда ещё, прошу прощения за зря отнятое у Вас время.
Loader:
Hidden Content
This board requires you to be registered and logged-in before you can view hidden content.

SID уже давно работает. А DMA SC это не то уже DMA SC, о чем ты подумал :))
Last edited by MVV on Sat, 13.09.2014 22:10:52, edited 3 times in total.
MVV
 
Posts: 479
Joined: Sun, 01.12.2013 22:48:17

Postby VBI » Sat, 13.09.2014 22:01:55

господа, что с этим троллем делать?
User avatar
VBI
 
Posts: 1965
Joined: Mon, 03.06.2013 09:20:29

Postby dsp » Sun, 14.09.2014 11:15:40

VBI, я займусь клавиатурой. Тут в принципе все предсказуемо было, так как вначале сделал не правильно (уже обсуждалось).
dsp
 
Posts: 127
Joined: Wed, 25.06.2014 05:53:32

Postby MVV » Sun, 14.09.2014 11:43:02

Кто знает, что такое драйвер клавиатуры, мыши, RTC? И как доработать BIOS для работы с новыми устройствами? Спрашиваю знатоков, т.к. уже надоело писать аппаратные мимуляторы (mc146818a, keybord, mouse, uart, sd...) того, что можно сделать программно.

Драйвер клавиатуры для обработки пакета отчета:
The keyboard firmware expects to receive 8 bytes formatted as a Keyboard HID report. The format is as follows:
-- Byte 0 Modifier keys:
-- Bit 0 - Left CTRL
-- Bit 1 - Left SHIFT
-- Bit 2 - Left ALT
-- Bit 3 - Left GUI
-- Bit 4 - Right CTRL
-- Bit 5 - Right SHIFT
-- Bit 6 - Right ALT
-- Bit 7 - Right GUI
-- Byte 1 Not used
-- Byte 2-7 HID active key usage codes. This represents up to 6 keys currently being pressed.
То, что передается в байтах 2-7 можно глянуть в этой табличке.

Вот как сделал аппаратно в модуле keyboard.vhd:
Hidden Content
This board requires you to be registered and logged-in before you can view hidden content.

Вывод USB-HID > PS/2 = SCANCODE сделан. Только зачем лишние 500LE на это все, если это можно заменить драйвером?
В какие порта или область памяти отобразить 8-мь байт буфера для драйвера клавиатуры?
MVV
 
Posts: 479
Joined: Sun, 01.12.2013 22:48:17

Postby dsp » Sun, 14.09.2014 18:50:44

KEYBOARD. Начал с железа TWARM. Поставил буфер и убрал мой трюк – CLI2 работает. Собственно надо было сразу сделать правильно, но тогда меня больше интересовало будет ли вообще работать WC на моем железе (не до буфера было). На U16 поставлю буфер, проверю и выложу исходники.
Attachments
keyboard(FIFO).rar
TWARM keyboard
(2.81 KiB) Downloaded 303 times
dsp
 
Posts: 127
Joined: Wed, 25.06.2014 05:53:32

Postby LessNick » Sun, 14.09.2014 21:05:52

dsp wrote:Поставил буфер и убрал мой трюк – CLI2 работает.


/me поправил корону :D
(∩。•o•。)っ.゚☆。・ TS-Conf для PentEvo — это классический Pentagon 128k для тех кто хочет больше!
User avatar
LessNick
грей сашу — сашу грей
 
Posts: 975
Joined: Thu, 26.07.2012 15:00:53
WEBSITE: http://fishbone.untergrund.net/

Postby MVV » Sun, 14.09.2014 21:50:43

dsp wrote:Поставил буфер и убрал мой трюк

dsp, смотрю в M9K блоке задействовано только 256 байт из 1Кх9бит. Остальное как планируется использовать? Т.к. есть еще СMOS буфер на 256 байт, UART буфер на 256 байт... Может не нужно столько? К примеру у i8042 был кольцевой буфер всего 30 байт. При переполнении выпихивается ffh или 00h в зависимости от заданного режима.
MVV
 
Posts: 479
Joined: Sun, 01.12.2013 22:48:17

Postby dsp » Mon, 15.09.2014 05:55:16

MVV, может и не нужно столько памяти, история такая:
Для отладки использовал UART c FIFO на 256 байт. Потом просто скопировал в модуль клавиатуры. Есть исходники, желающие могут уменьшить размер буфера по усмотрению. Как остальная память Cyclone будeт использоваться – мне не важно. Меня больше интересует совместимость с TS-Conf (WC, CLI), ради этого и делал чтобы можно было запускать TS-Conf на FPGA. Как я вижу (уже писал раньше) – потрачено много человекочасов на софт разными людьми. Мне больше интересен спектум c TR-DOS (TS-Conf – как удачная на мой взгляд конфигурация) чем другие конфиги (еще Радио PK-86 интересен). Для меня лично, софт под TS-Conf горазде ценнее железа, на котором он работает. Причина простая – над Cyclone работает много людей и возможно завтра выдет какой нибудь Cуclone 5 с внутренней памятью на порядок большей чем в Cуclone 4. Terasic тут-же выпустит очередною EVB за те же 150$ (что эквивалентно приблизительно дневной зарплате инженера, при хорошем раскладе). Над Спектум c TR-DOS – только энтузиасты в свободное время и ценность поэтому для меня этого софта выше. То есть в будущем я могу купить железо и с каждым разом оно гарантированно будет лучше чем то, что есть. С софтом ситуация (опять таки на мой взгляд - другая). Поэтому как память в циклоне и сколько ее будет использоваться, зависит только от софта, и базовой конфигурации TS-Conf, а не от того сколько ее в циклоне. Говорят что железо персонального компьютера избыточно, а программы громоздки. Там может в этом и дело что железо выпустить дешевле (ввиду массовости использования) чем написать специализированную программу для ограниченного круга людей, поэтому и используют и библиотеки от разных сторонних производителей для экономии ресурсов. Может поэтому и пишут программисты под Спектрум до сих пор для души, чтобы был код простой и понятный, а не тратить львиную долю своего времени, чтобы разобраться в чужих MFC и драйверах. Маленький пример VNC2 - есть готовые библиотеки и драйвера для работы с этим чипом, всего ничего - разобраться как работают или написать новый драйвер для VNC2 под TS-Conf. dnik75 говорит что они жирноваты, ну а как еще, если хочешь больше возможностей и функции на софт перекладываются а не на железо.
dsp
 
Posts: 127
Joined: Wed, 25.06.2014 05:53:32

Postby MVV » Mon, 15.09.2014 09:01:40

dsp, платформа без аппаратной и программной поддержки обречена, год, может еще два и это уже очередной сувенир на полке. Само железо, софт на нем, должны развиваться параллельно, друг-друга дополняя и улучшая. Заметь, с момента создания этого топика так и не сложилось единой группы разработчиков, ни направления, ни идей... Помощь, которая так была нужна от TS-Labs, VBI... её здесь просто нет, все так и остались заняты по сей день... Про дневную зарплату, ты я так понял пошутил. Скорее похоже на месячную. Под Cyclone V есть уже разные девборды, знал бы как им оплатить, уже бы наверно купил DE1-SoC Board или софтовую ODROID-U3. И не тратил бы время на разработку U16 и конфигураций к ней.
MVV
 
Posts: 479
Joined: Sun, 01.12.2013 22:48:17

Postby dsp » Mon, 15.09.2014 11:34:18

USB_Keyboard. Разобрался с U16 Keyboard. Надо только запоминать предыдущие нажатые клавиши и потом при отпускании втиснуть в буфер с кодом (0xE0) 0xF0 –примерно так. Доделаю клавиатуру и начну паять платы. В принципе на данном этапе это будет более-менее уже рабочая версия.

Небольшой опус:
Влад на счет Terasic (Cyclone 5), эта контора можно сказать через дорогу от меня. Если тебе действительно нужна эта плата схожу к ним, куплю и отошлю тебе (тем более я там не раз бывал). Меня лично U16 устраивает и TS-Conf. На счет команды – тут каждый видит по-своему. Мне все помогали (косвенно и напрямую): VBI, TS-Labs, Koshi, breeze. За что еще раз спасибо скажу, что люди свое время потратили именно на эту игрушку. Все заняты, потому что кроме хобби есть работа. Мне хватает концепций и команды в конторе, а здесь просто в свое удовольствие занимаюсь и лучше, если без обязательств, Я думаю и остальные так же. Так что я лично рад, что кто-то поддерживает это направление и тебе тоже спасибо за U16. Я думаю даже если и не будет особо пользоваться популярностью U16 то, как прототип для новой PentEVO - точно поможет (TS-Conf тоже не с нуля возник) что уже хорошо. Soft развивается и железо тоже, может не такими темпами как бы тебе хотелось.
dsp
 
Posts: 127
Joined: Wed, 25.06.2014 05:53:32

Postby dnik75 » Mon, 15.09.2014 12:00:59

dsp wrote:Я думаю даже если и не будет особо пользоваться популярностью U16 то, как прототип для новой PentEVO - точно поможет (TS-Conf тоже не с нуля возник) что уже хорошо.
Поддерживаю, +100500
MVV wrote:Про дневную зарплату, ты я так понял пошутил. Скорее похоже на месячную.
Очень похоже на шутку, так как этих денег ($150) хватает максимум на неделю (чисто пропитание и сигареты)
Если что-то хочкшь сделать хорошо, сделай это сам :D
User avatar
dnik75
 
Posts: 171
Joined: Fri, 04.07.2014 19:41:26

Postby MVV » Mon, 15.09.2014 13:36:21

dsp, согласен, простая доработка keyboard как один из вариантов. А то, я уже полез в vnc2, делать преобразование usb-hid > ps/2, да ещё думаю, на какой интерфейс посадить мышь и flash. В общем, на счет команды ты прав, это всего лишь только хобби, а не работа. Насчет популярности U16, я бы еще поспорил :) время покажет... Хочу также поблагодарить всех тех, кто помогает, возможно многих еще увижу на пати, будет что вспомнить и обсудить :)
MVV
 
Posts: 479
Joined: Sun, 01.12.2013 22:48:17

Postby TS-Labs » Mon, 15.09.2014 14:28:09

MVV wrote:Как вариант остается выкроить циклы SDRAM,

МНЕ НАВЕРНОЕ КАПСОМ НАДО ПИСАТЬ ЧТОБ МЕНЯ УСЛЫШАЛИ.
Переделай контроллер на использование 4 банков, префетч бурстами, кеш.

Еще одно (пишу кажется 2й или 3й раз).
Прицепи к проекту корку АВР, какая потоньше. Сделай ей кеш и прямое выполнение из СПИ-флэша. Она будет тебе выполнять лоадер и периферийные функции (как атмега на пентеве) - клаву, часы и прочее. Преимущества: получишь бесплатно хост-контроллер для других платформ.
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby MVV » Mon, 15.09.2014 15:20:49

TS-Labs wrote:Переделай контроллер на использование 4 банков, префетч бурстами, кеш.

Нужно попробовать сделать, пока ещё не изучил данный вариант, если разобраться, в дальнейшем можно будет доработать и для dma-sc.
TS-Labs wrote:Прицепи к проекту корку АВР, какая потоньше.

Сделал на U8/U9, прикрутил nz80. Проще на мой взгляд с программированием. Хотя, да есть быстрые корки risc, нужно обдумать... Хотелось бы ещё сделать и osd, удобно очень на лету дебажить и настраивать.
MVV
 
Posts: 479
Joined: Sun, 01.12.2013 22:48:17

Postby TS-Labs » Mon, 15.09.2014 19:37:50

Я считаю, что использовать з80 в кач-ве хостового контроллера малоперспективно. Код малоэффективен, корка тяжелая. Если бы платформа ограничилась спектрумами, тогда еще б-х с ним, а когда потом пойдут амиги и прочее - несерьезно. (Да, на минимиге хост на зетнике, фу так делать =)
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby dnik75 » Tue, 16.09.2014 13:04:38

MVV wrote:Также требуется добавить двухстороннюю связь через SPI и UART, добавить поддержку команд и увеличить скорость обмена до max
А какая сейчас максимальная скорость обмена по spi и uart? Двухсторонняя связь по uart - ЗЫ, уже долго ждём)
Если что-то хочкшь сделать хорошо, сделай это сам :D
User avatar
dnik75
 
Posts: 171
Joined: Fri, 04.07.2014 19:41:26

Postby MVV » Tue, 16.09.2014 13:18:55

dnik75 wrote:А какая сейчас максимальная скорость обмена по spi и uart?

Рассматривался обмен между VNC2 (SPI, UART) и FPGA. По SPI до 24MHz, по UART от 183 baud до 6 Mbaud.
MVV
 
Posts: 479
Joined: Sun, 01.12.2013 22:48:17

Postby TS-Labs » Wed, 17.09.2014 18:46:33

MVV wrote:можешь перекинуть C код ping который выложил dsp в асм z80?

"enc424j600.h",55 Error[2]: Failed to open #include file 'global.h'
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby TS-Labs » Wed, 17.09.2014 18:59:25

_naked - это атрибут SDCC?
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby dsp » Thu, 18.09.2014 04:59:52

Прошу прощение за недоразумение. Забыл включить в проект (он в принципе не нужен), содержимое global.h:
#ifndef GLOBAL_H
#define GLOBAL_H
// #include "global-conf.h"
// #include "uip.h"
#endif
Как делал:
1) создал директорию SDK_TS_Conf на диске D. B ней две поддиректории. Одна - проект PING а вторая - SDK
2) В директории PING есть файл compile.bat, запускаю его
3) Запускается компиляция и все остальное.
4) В результате создается директория _temp_ и выходные файлы: TEST.spg, TEST.scl
5) В директории _temp_ есть файл out.asm, если я правильно понял, то о нем спрашивал MVV.

PING.rar – весть проект (директория PING с якобы временной директорией _temp_ и выходными файлами). Отдельно присоеденил out.asm и global.h.
Attachments
1.JPG
1.JPG (6.48 KiB) Viewed 17131 times
2.JPG
2.JPG (16.82 KiB) Viewed 17131 times
3.JPG
4.JPG
4.JPG (32.22 KiB) Viewed 17131 times
5.JPG
out_asm.rar
(7.74 KiB) Downloaded 296 times
global.rar
(449 Bytes) Downloaded 281 times
PING.RAR
(88.63 KiB) Downloaded 286 times
dsp
 
Posts: 127
Joined: Wed, 25.06.2014 05:53:32

Postby TS-Labs » Thu, 18.09.2014 08:04:46

Под евосдк вываливает ошибки что нету crt.o и evo.o, убрал их из батника, скомпилило.
Под иар искаропке не собирается - не знает _naked (убрал) и sfr может быть только 0-255 (кретинизм запредельный) и его формат отличается. Переделать несложно.
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

PreviousNext

Return to Hardware

Who is online

Users browsing this forum: No registered users and 1 guest

x