ПК-01 ЛЬВОВ

форум о ПК-01,02 "Львов"
Текущее время: 04 мар 2021, 18:16

Forum Games WEB Tape Loader Twitter RSS

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 23 сообщения ]  На страницу 1 2 След.
Автор Сообщение
 Заголовок сообщения: Листинг стандартного ПЗУ
СообщениеДобавлено: 03 янв 2012, 11:07 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 24 июл 2008, 12:05
Сообщения: 1029
liberation
Цитата:
Мож, что-то типа Wiki стоит развернуть
Я могу попробовать поставить wiki-движок на сайте. Только, боюсь, наполнения практически не будет. Даже по Спектруму, с его огромным комьюнити, их Вики выглядит "несчастной".

upd.
Связанная тема "Прошивки ПЗУ ПК-01 "Львов".


Вернуться к началу
 Заголовок сообщения:
СообщениеДобавлено: 03 янв 2012, 13:10 
Не в сети
Аватара пользователя

Зарегистрирован: 11 авг 2008, 17:05
Сообщения: 1405
Откуда: Украина
Цитата:
Я могу попробовать поставить wiki-движок на сайте. Только, боюсь, наполнения практически не будет. Даже по Спектруму, с его огромным комьюнити, их Вики выглядит "несчастной".
Я такую штуку предлагаю сугубо из познавательных целей. Никогда ни с чем подобным не имел дела. Хочется помацать. Да и описание ПЗУ в таком виде будет выглядеть логично: для каждой подпрограммы по страничке с войной правок. :D

_________________
Carthago delenda est, Carthaginem delendam esse


Вернуться к началу
 Заголовок сообщения:
СообщениеДобавлено: 03 янв 2012, 19:19 
Не в сети

Зарегистрирован: 07 дек 2010, 16:54
Сообщения: 227
Цитата:
Хорошо, даже очень хорошо. Какую бы форму для этого выбрать? Мож, что-то типа Wiki стоит развернуть (я слабо ориентируюсь в подобных средствах представления информации)?
сложный вопрос - дамп базы IDA в виде .IDC под Subversion ... ? (такое потом легко перлом отконвертировать в удобоваримый вид, да и работать удобно)
Wiki это не очень удобно будет (во всяком случае - я её плохо знаю, не представляю как её в этом качестве заюзать). писать что-то своё ... дизассемблер на php под ajax ? можно попробовать, есть мысли, но выглядит громоздко ... даже с применением extjs и подобного.


Вернуться к началу
 Заголовок сообщения:
СообщениеДобавлено: 03 янв 2012, 19:39 
Не в сети
Аватара пользователя

Зарегистрирован: 11 авг 2008, 17:05
Сообщения: 1405
Откуда: Украина
Цитата:
сложный вопрос - дамп базы IDA в виде .IDC под Subversion ... ? (такое потом легко перлом отконвертировать в удобоваримый вид, да и работать удобно)
Wiki это не очень удобно будет (во всяком случае - я её плохо знаю, не представляю как её в этом качестве заюзать). писать что-то своё ... дизассемблер на php под ajax ? можно попробовать, есть мысли, но выглядит громоздко ... даже с применением extjs и подобного.
Можно посмотреть в сторону github или его более либерального для бесплатной разработки родича bitbucket. Вот что на github'е люди вытворяют - JavaScript Garden.
Надо бы продумать, как получить исходники. А то получается, что надо будет в эмуляторе запускать дизассемблер.

_________________
Carthago delenda est, Carthaginem delendam esse


Вернуться к началу
 Заголовок сообщения:
СообщениеДобавлено: 04 янв 2012, 02:26 
Не в сети

Зарегистрирован: 07 дек 2010, 16:54
Сообщения: 227
Цитата:
Можно посмотреть в сторону github или его более либерального для бесплатной разработки родича bitbucket. Вот что на github'е люди вытворяют - JavaScript Garden
хгм. можно и git, он p2p, так что это даже лучше.
тогда для сайта достаточно будет написать только движок рендеринга (с попутным выводом истории правок из git-a).
что-то в этом есть......
Цитата:
Надо бы продумать, как получить исходники. А то получается, что надо будет в эмуляторе запускать дизассемблер.
в "безголовом" режиме? да ну, это наверное лишнее. я исходно предполагал свой дизассемблер полностью написать (интерактивный) на extjs + php (например).
если предполагать, что работа ведётся локально в IDA, а конфликты разрешаются средствами cvs (svn, git), то пакетный конвертер из idc в html пишется максимум за день (вместе с отладкой). проблема не в нём (не в начальном исходнике), проблема в том, чтобы менять имена меткам и т.п. в "быстром/интерактивном" режиме, иначе весь смысл пропадает.
простой пакетный дизассемблер я вообще за пару часов "набросаю".

p.s. в принципе, если wiki позволяет дописать некоторые "макросы редактирования", работающие на стороне сервера, то, возможно, и её получится использовать.


Вернуться к началу
 Заголовок сообщения:
СообщениеДобавлено: 04 янв 2012, 12:17 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 24 июл 2008, 12:05
Сообщения: 1029
Что-то я не могу объеденить ваши посты воедино... Давайте попорядку. Вы хотите декомпилировать ПЗУ и раписать по нему документацию в форме wiki (или вроде того)? Ну тогда вопрос, зачем Subversion, дизассемблер на php и т.п. Да и целая вики на несколько килобайт кода - єто слишком жирно.
Я сначала себе представлял все, как общая Вики по "Львову". Ну и туда прау статеек по ПЗУ, которое дизассемблировать можно и оффлайн. Я в процессе разгребания всяких там "Карате" и прочих загрузчиков, частично это делал.
Или я что-то совсем не так понимаю?


Вернуться к началу
 Заголовок сообщения:
СообщениеДобавлено: 04 янв 2012, 12:22 
Не в сети
Аватара пользователя

Зарегистрирован: 11 авг 2008, 17:05
Сообщения: 1405
Откуда: Украина
Цитата:
Что-то я не могу объеденить ваши посты воедино...
Просто Володя подходит к делу очень добротно и основательно. :)
Я первоначально представлял себе Вики, где можно было бы выделить каждой процедуре по статье.

Про Вики по "Львову" я не задумывался. Как сейчас понимаю - идея интересная!

_________________
Carthago delenda est, Carthaginem delendam esse


Вернуться к началу
 Заголовок сообщения: Re: Листинг стандартного ПЗУ
СообщениеДобавлено: 16 дек 2013, 16:18 
Не в сети

Зарегистрирован: 27 фев 2013, 19:57
Сообщения: 125
Откуда: Львівщина
Вот здесь вся память ОЗУ+ПЗУ одним файлом HTML, PDF (212 с.)

Спасибо товарищу SAS за отличньій дизассемблер!

Вьідернул все из емулятора Е3000, кажись, уже не помню. В любом случае, автору тоже благодарность! :)

Исходя из етого планируется сделать более функциональную версию, согласно вьішеутвержденному плану.
Пожелания приветствуются.


Вернуться к началу
 Заголовок сообщения: Re: Листинг стандартного ПЗУ
СообщениеДобавлено: 17 дек 2013, 08:41 
Не в сети
Аватара пользователя

Зарегистрирован: 11 авг 2008, 17:05
Сообщения: 1405
Откуда: Украина
Цитата:
Исходя из етого планируется сделать более функциональную версию, согласно вьішеутвержденному плану.
Пожелания приветствуются.
Прикольно: я уже хотел удалить эту тему, а тут такой поворот. Особых пожеланий нет. Насколько я помню, первоначально хотелось сделать что-то в духе того, что сейчас делает божественный vinxru для "Специалиста" - подробно комментированный листинг стандартного ПЗУ (обе версии).

Вот свежий фрагмент для примера:
Код:
;+---------------------------------------------------------------------------
; MXOS
; Чтение байта с ленты
;
; На входе
;  a=255 загрузка первого байта 
;  a=8   загрузка
;
; На выходе
;  c - байт
;  de,hl - сохраняются
;
; 2013-12-12 Дизассемблировано vinxru
;----------------------------------------------------------------------------

tapeRead:	; Сохраняем регистры
		push	b
		push	d

		; Тут будет принятый байт
		mvi	c, 0

		; d=8 если загрузка (счетчик бит) или 0FFh если ожидание
		mov	d, a

tapeRead_0:	; Получаем состояние
		lda	IO_KEYB_B
		ani	1
		mov	e, a

		; Сдвигаем C
		mov	a, c
		ani	7Fh
		rlc
		mov	c, a

tapeRead_1:	; Получаем состояние
		lda	IO_KEYB_B

		; Если нажата клавиша, выходим
		cpi	80h
		jc	tapeReadError

		; Ждем изменения сигнала
		ani	1
		cmp	e
		jz	tapeRead_1

		; Сохраняем бит
		ora	c
		mov	c, a

		; Задержка
		call	readDelay

		lda	IO_KEYB_B
		ani	1
		mov	e, a

		; Если происходит загрузка данных, переходим на tapeRead_4
		mov	a, d
		ora	a
		jp	tapeRead_4

		; Если происходит ожидание
		; Если не найден 0E6h, переходим tapeRead_2
		mov	a, c		
		cpi	0E6h
		jnz	tapeRead_2

		; Начинаем загрузку без инверсии
		xra	a
		sta	v_tapeInverse
		jmp	tapeRead_3

tapeRead_2:	; Если не найден 19h, переходим на tapeRead_0
		cpi	19h
		jnz	tapeRead_0

		; Начинаем загрузку с инверсией
		mvi	a, 0FFh
		sta	v_tapeInverse

		; Загружаем 8 бит
tapeRead_3:	mvi	d, 9

		; Повторяем 8 байт
tapeRead_4:	dcr	d
		jnz	tapeRead_0

		; Инверсия байта
		lda	v_tapeInverse
		xra	c

		; Восстаналиваем регистры
		pop	d
		pop	b
		ret
Как-то так.

_________________
Carthago delenda est, Carthaginem delendam esse


Вернуться к началу
 Заголовок сообщения: Re: Листинг стандартного ПЗУ
СообщениеДобавлено: 17 дек 2013, 20:06 
Не в сети

Зарегистрирован: 27 фев 2013, 19:57
Сообщения: 125
Откуда: Львівщина
Цитата:
Как-то так.
сам я вряд ли сходу осилю сию задачу - все-таки 150 страниц кода (и ето только ПЗУ)...
Да и знаний маловато пока.


Вернуться к началу
 Заголовок сообщения: Re: Листинг стандартного ПЗУ
СообщениеДобавлено: 18 дек 2013, 08:38 
Не в сети
Аватара пользователя

Зарегистрирован: 11 авг 2008, 17:05
Сообщения: 1405
Откуда: Украина
Цитата:
сам я вряд ли сходу осилю сию задачу - все-таки 150 страниц кода (и ето только ПЗУ)...
Да, задача масштабная. И еще непонятно, насколько целесообразная.

Лучше напишите какую-нибудь игруху. Это точно будет дело! :wink:

_________________
Carthago delenda est, Carthaginem delendam esse


Вернуться к началу
 Заголовок сообщения: Re: Листинг стандартного ПЗУ
СообщениеДобавлено: 18 дек 2013, 13:06 
Не в сети

Зарегистрирован: 27 фев 2013, 19:57
Сообщения: 125
Откуда: Львівщина
Цитата:
Да, задача масштабная. И еще непонятно, насколько целесообразная.
Лучше напишите какую-нибудь игруху. Это точно будет дело!
К правительству лететь - гравицапу надо иметь. В смьісле LvivOS как писать-то, без комментированного кода? :)
Игру, пожалуй, замутю. Только вот времени чей-то маловато. Есть, вроде, но маловато. "Львов" требует приличньіх мощностей на єто дело интелектуальньіх. А голова одна.


Вернуться к началу
 Заголовок сообщения: Re: Листинг стандартного ПЗУ
СообщениеДобавлено: 27 мар 2014, 08:08 
Не в сети
Аватара пользователя

Зарегистрирован: 11 авг 2008, 17:05
Сообщения: 1405
Откуда: Украина
Цитата:
Исходя из етого планируется сделать более функциональную версию, согласно вьішеутвержденному плану.
Пожелания приветствуются.
Пробовал работать с докой, сразу же нашел багу (процедура по адресу 0xDD94 - сумбур вместо музыки). Похоже, доку надо еще вычитать хотя бы по основным процедурам (мануал), а то отличные дизассемблеры всякие бывают. Как там раньше говорили: "советское - значит отличное". Судя по всему, тут именно тот случай.

_________________
Carthago delenda est, Carthaginem delendam esse


Вернуться к началу
 Заголовок сообщения: Re: Листинг стандартного ПЗУ
СообщениеДобавлено: 27 мар 2014, 12:55 
Не в сети

Зарегистрирован: 27 фев 2013, 19:57
Сообщения: 125
Откуда: Львівщина
нє, асемблер тут ні до чого, думаю. Або дамп кривий, або так і було задумано, бо більшість точок співпадає, вроді.
Я брав класичну версію, з якогось емулятора. З моїм екземпляром, злитим з власного "Львова" - суттєві розбіжності, в кращий бік.


Вернуться к началу
 Заголовок сообщения: Re: Листинг стандартного ПЗУ
СообщениеДобавлено: 27 мар 2014, 20:51 
Не в сети
Аватара пользователя

Зарегистрирован: 11 авг 2008, 17:05
Сообщения: 1405
Откуда: Украина
Цитата:
нє, асемблер тут ні до чого, думаю. Або дамп кривий, або так і було задумано, бо більшість точок співпадає, вроді.
Я брав класичну версію, з якогось емулятора. З моїм екземпляром, злитим з власного "Львова" - суттєві розбіжності, в кращий бік.
Смотрите, с дампом все в порядке, проблема в том, что не сделано разделение данных и кода (как я понимаю, в ПЗУ "Львова" такое явление не редкость).
Код:
$DD92:   LDA $3E00      ;$3A $00 $3E|58 0 62    |: > |56722
$DD95:   RNC            ;$D0        |208        |    |56725
$DD96:   STA $BE87      ;$32 $87 $BE|50 135 190 |2   |56726
$DD99:   CALL $E443     ;$CD $43 $E4|205 67 228 | C  |56729
Если смотреть сырой код, то видно, что процедура в полном порядке: 0xDD94: 0x3E, 0xD0 и далее по тексту, а вот если листинг... Такая вот тонкость. Нисколько не умаляю значимость Вашей работы, но нужна доработка.

Про Ваш дамп. А чем он отличается? Почему он лучше? Может, стоит выложить его в соседней теме "Прошивки ПЗУ ПК-01 "Львов""? Вдруг кому-то пригодится. :)

_________________
Carthago delenda est, Carthaginem delendam esse


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 23 сообщения ]  На страницу 1 2 След.

Forum Games WEB Tape Loader Twitter RSS

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
cron
Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB