|
nedoPC.orgElectronics hobbyists community established in 2002 |
|
Author |
Message |
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Интересно - у количества ячеек таблицы есть принципиальное ограничение?
А то больно мне понравился принцип - плюхнул байт цвета по адресу, и он -
цветная точка на экране.
Расточительно несколько, но зато просто при программировании...
Я вот думаю - не расширить ли экранчик в формат 4х3 ?
Но тогда и клеток в таблице поприбавится!!!
Один раз мне такую же вещь, правда, уже приходилось видеть...
Одни оригиналы строили фракталы Мадельброта в таблице Exel, также,
используя ячейки как пиксели, и программируя на встроенном VB...
Но у Exel-я есть ограничение на максимальное число ячеек...
_________________ iLavr
|
22 Feb 2013 14:03 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22616 Location: Silicon Valley
|
Ну в circuits.cc используется таблица 100x75 ячеек - думаю можно и больше, но будет тормозить
Для нормальной растровой графики лучше юзать Canvas, правда оно только в новых браузерах поддерживается (и не поддерживается в IE)...
|
22 Feb 2013 15:03 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Canvas у меня странно работает... то есть, в одном проходе на нём отлично все его
функции работают.
Но вот когда начинается динамическая перерисовка Canvas-а он впадает в ступор и
может перерисовать что-то, если его закрыть другим окном и снова открыть...
Глюк какой-то... пока не разобрался в чем дело...
_________________ iLavr
|
22 Feb 2013 16:09 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22616 Location: Silicon Valley
|
а дебиане теперь есть скринсейвер, написанный с этого эмулятора (он просто по кругу гоняет все приложения, написанные под него) - теперь только он у меня и крутится
P.S. почитал внимательно описание на www.6502asm.com и подумал - а почему бы не построить железяку на 6502 по этой спецификации? софта уже есть под него
|
29 Mar 2013 11:15 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Ну я примерно этим сейчас и занимаюсь...
Но по твоей ссылке в начале этого топика доставка 6502 в Россию стОит дороже самогО 6502...
Потому пришлось связаться с Дендиками, в которых сейчас преимущественно интегрированный
чип-капелька или корпусной аналог 6561.
Он не даёт возможности свободно разбить карту памяти по своему усмотрению.
Так что я решил отталкиваться от конфигурации памяти картриджа Keyboard Transformer by A.Golomedov and I.Nesterov - это, как мне кажется, наиболее приемлемая конфигурация, с
учетом особенностей крупного разбиения памяти в приставке.
Всё это не так уж и увлекательно, нежели делать железяку с нуля, но надо же что-то сделать
из купленных дендиков.
_________________ iLavr
|
29 Mar 2013 12:06 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Прочитал я историю создания и описание этого проекта более внимательно: TTL6502: Вuild Your own 6502
Нет, это всё же не ТТЛ-вариант 6502, это скорее уж EEPROM-вариант 6502
Всё что можно было этот Ruud позашивал в ПЗУ, и никакой тебе схемотехники 6502.
_________________ iLavr
|
22 Jul 2014 20:02 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Никогда я не увлекался игрой " Жизнь"( Life), считая её забавной бестолковицей...
Но поскольку под руками эмулятор с открытым кодом, который я немного допиливаю
под свои цели, решил я разок посмотреть, как будет протекать "жизнь на поляне" в
32х32 клетки, раз уж Life на ассемблере тут имеется...
И запустил я эмуляцию " Жизни" в отдельном окне надолго, а вот это её результат:
Все белые фигуры статичны и не изменяются. Отрезок, помеченный голубым цветом, ложится
горизонтально относительно своего центра, и встает вертикально в следующем цикле.
Такая вот " Жизнь" в браузерном эмуляторе 6502.
_________________ iLavr
|
18 Dec 2014 21:00 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Ну и поскольку ошибки и невооруженным глазом видны были, я решил проверить это поделие
каким-либо не самым сложным тестом для оригинального 6502 CPU.
Если начать искать, то только вот здесь: http://www.6502.org/tools/emu/ тестов предлагают
довольно много...
Весь вопрос упирался в то, что у меня нет подобающих компиляторов, да и средство вывода не
поддерживается никакими стандартными программными ресурсами.
То есть, как выводить сообщения об ошибках - меня просто в ступпор вводило.
Но, повезло - нашел я неплохой тест, как мне кажется, TTL6502TST.rar , который ни в каких
средствах вывода не нуждается!
Выбрал я его, потому как в пакете был асм-исходник, бинарник, и даже HEX-файл, ну и запихал
я его в исследуемый объект весьма своеобразно: скомпилировав в нем HEX-dump, сформированный
через Win-HEX:
| | | | Code: ; TTL6502.TEST *= $0600 jmp START *= $e000 START: DCB $EA,$4C,$EC,$FF,$EA,$38,$B0,$FE,$EA,$4C,$6E,$F5,$EA,$18,$A9,$00 DCB $60,$EA,$A9,$01,$85,$03,$A2,$FF,$9A,$A9,$FF,$48,$28,$90,$FE,$D0 DCB $FE,$50,$FE,$10,$FE,$30,$03,$4C,$27,$E0,$F0,$03,$4C,$2C,$E0,$70 DCB $03,$4C,$31,$E0,$B0,$03,$4C,$36,$E0,$A9,$02,$85,$03,$A9,$00,$48 ... DCB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF DCB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$4C,$12,$E0,$EA DCB $38,$B0,$FE,$EA,$EA,$A9,$FF,$48,$28,$40,$F4,$FF,$00,$E0,$F4,$FF
| | | | |
Заодно и поинтересовался на http://forum.6502.org/ - как они это делают, оказалось, что так же, только, похоже, что скриптом через регулярные выражения они делают HEX-dump... Ну а теперь - самое интересное, как же работает тест, который ничего не выводит - оказалось, что очень логично! После исполнения каждого примера он либо движется к следующему тесту, либо зависает в бесконечном цикле по условию с флагом. Примерно так:
То есть, если это происходит под отладчиком, то видно, что перестал меняться адрес.
По листингу - смотришь, на каком тесте зависли, и что не так.
А на реальной железке - тоже следует индицировать адрес хотя бы светодиодами,
и по адресу - искать ошибку по листингу.
Я раньше с тестами ЦПУ в принципе не сталкивался, поэтому пришлось почитать исходник...
Ну оооочень логично строится тест! Почему он мне так и понравился...
И, кстати, Easy 6502 этот тест четко проходит. А моё поделие 6502 assembler - ... теперь
уже тоже проходит!
_________________ iLavr
|
25 Dec 2014 10:44 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Ну вот эмулятор 6502, наконец, заработал практически верно...
Код прошел серьёзный тест Functional Test for the NMOS 6502
Надо будет переписать HELP-файл, поскольку добавил множество привычных фич в отладке:
редактирование памяти, брейкпоинт, автоматическое исполнение код до брейкпоинта и разные
другие удобные мелочи...
Ну и некоторые шероховатости, думаю, есть ещё...
PS. Написал новый HELP-файл на английском и на русском. Всё подправил, всё вроде работает... А тут и праздники кончились...
_________________ iLavr
|
04 Jan 2015 20:56 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Что-то меня этот неразрешенный вопрос посетил снова... и к моему удивлению и удовольствию, такие же любознательные люди, как я, нашлись! Каково максимальное количество строк таблицы, которое может отобразить браузер?
_________________ iLavr
|
14 Apr 2016 10:22 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22616 Location: Silicon Valley
|
Вот тут люди утверждают, что построили транзисторную реплику 6502 http://www.evilmadscientist.com/2016/6502/
|
16 May 2016 14:57 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Не удивлюсь. Его уже многократно делали на мелкой логике, и в онлайн его эмулировали, так что до транзисторов оставался один шаг... То, что такие выдающиеся люди, как Чак Педл и Тед Хофф запихивали в м аааленький кристалл, всех вдруг расперло повторить на больших транзисторах! Необьяснимый вираж истории...
_________________ iLavr
|
16 May 2016 16:15 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Аналоги 6502 на ТТЛ также обсуждаются здесь: 6502 from 74HC logic . Хотя часть упомянутых в этом топике ссылок там повторяется.
_________________ iLavr
|
28 Jun 2018 04:26 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
| | | | Lavr wrote: Нашел у себя Proteus-модель TTL-аналога 6502 - 6502.rar. Там, собственно, сам 6502 и вроде как простые интерфейсные схемы УВВ с выводом информации на LCD-дисплей. Работает ли оно реально как 6502 - точно сказать не могу... | | | | |
Я тут поковырялся в разных проектах, где 6502 эмулируют на дискретной логике, и вывод оказался довольно интересный: практически во всех проектах авторы делают не 6502, а некий весьма похожий процессор, который выполняет в той или иной мере систему команд 6502, но, как честно пишут сами авторы, их конструкции скорее всего не смогут заменить реальный 6502, если повыводно соединить их с панелькой реального процессора. И дело тут, как мне представляется, в таймингах оригинального 6502. Не секрет уже, что его оригинальная тактовая последовательность Ф0, Ф1, Ф2 формируется на задержках элементов: http://wiki.breaknes.com/6502:clockА это довольно неприятно эмулировать, поскольку нет привязки к опорному сигналу. В модели 580ВМ80, которую здесь на форуме разработали, задержки не учитываются совсем, но модель нормально работает, т.к. всё привязано к тактовым импульсам. В FPGA-версиях 6502 с корректными таймингами их формируют из высокой частоты тактирования самой FPGA, а для тактирования " FPGA-6502" используют отдельный генератор. Так что большинство авторов проектов 6502 из " мусора серии 74хх" лукаво не мудрствуют, а придерживаются известных блок-схем этого микропроцессора ( которые все есть и в этой ветке на нашем форуме), после чего применяют "длинное" ПЗУ микрокоманд, чтобы заставить все регистры и вентили согласованно работать. В такой ситуации для моделирования в Proteus интересен проект с меньшим числом элементов, чтобы всё это приемлемо шевелилось, так что я остановился в итоге на том, о котором ранее упоминал в этой ветке. Я пытался ранее перенести его через SEC-файлы, но хоршего результата это не принесло, так что я решил собрать проект заново по его принципиальным схемам. И оно - заработало! Хотя я и потратил всё воскресенье... Кто хочет поиграться с 6502 на 74-й серии - вот проект: Я повыкидывал всё лишнее, что не сказывается на работоспособности, поскольку автор рисовал схемы под разводку платы, но в 2007-м году ему это, видимо, надоело - наигрался он в м акропроцесоры... Здесь все схемы по которым я этот проект собирал: Автор придерживался карты памяти Commodore64, на котором игрался в детстве. Поэтому у него там эмулируются и некоторые УВВ Commodore64, насколько это позволяет Proteus. По словам автора у него на всём этом хламье запускается ВАСИК Commodore64, не могу сказать - патченный или нет. Я лишь посмотрел в сети карту памяти этого реликта, чтобы понять дешифрацию ПЗУ, ОЗУ и УВВ. При старте проекта он выводит текстовое сообщение о тесте памяти, при этом на бОльший ЖК выводится какая-то информация... После этого программа зацикливается и на алфавитном дисплее пишет:" Первая строка" и " Вторая строка" в этих самых строках.
_________________ iLavr
|
09 Jul 2018 06:35 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Два LCD-дисплея, один из которых графический, довольно-таки подтормаживают симуляцию, тем более, что мне не интересен Commodore64, сэмулировать который стремился автор... Но без графического LCD-дисплея симуляция зависает - программа явно ожидает готовности LCD... Ну я подумал... и для ускорения её бессовестно обманул...
_________________ iLavr
|
09 Jul 2018 13:18 |
|
|
Who is online |
Users browsing this forum: No registered users and 33 guests |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot post attachments in this forum
|
|