PC-01 Lviv

It is currently 28 Mar 2024, 22:42

Forum Games WEB Tape Loader Twitter RSS

All times are UTC+03:00




Post new topic  Reply to topic  [ 23 posts ]  Go to page 1 2 Next
Author Message
PostPosted: 03 Jan 2012, 11:07 
Offline
Site Admin
User avatar

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

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


Top
   
 Post subject:
PostPosted: 03 Jan 2012, 13:10 
Offline
User avatar

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

_________________
Carthago delenda est, Carthaginem delendam esse


Top
   
 Post subject:
PostPosted: 03 Jan 2012, 19:19 
Offline

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


Top
   
 Post subject:
PostPosted: 03 Jan 2012, 19:39 
Offline
User avatar

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

_________________
Carthago delenda est, Carthaginem delendam esse


Top
   
 Post subject:
PostPosted: 04 Jan 2012, 02:26 
Offline

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

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


Top
   
 Post subject:
PostPosted: 04 Jan 2012, 12:17 
Offline
Site Admin
User avatar

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


Top
   
 Post subject:
PostPosted: 04 Jan 2012, 12:22 
Offline
User avatar

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

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

_________________
Carthago delenda est, Carthaginem delendam esse


Top
   
PostPosted: 16 Dec 2013, 16:18 
Offline

Joined: 27 Feb 2013, 19:57
Posts: 125
Location: Львівщина
Вот здесь вся память ОЗУ+ПЗУ одним файлом HTML, PDF (212 с.)

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

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

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


Top
   
PostPosted: 17 Dec 2013, 08:41 
Offline
User avatar

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

Вот свежий фрагмент для примера:
Code:
;+---------------------------------------------------------------------------
; 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


Top
   
PostPosted: 17 Dec 2013, 20:06 
Offline

Joined: 27 Feb 2013, 19:57
Posts: 125
Location: Львівщина
Quote:
Как-то так.
сам я вряд ли сходу осилю сию задачу - все-таки 150 страниц кода (и ето только ПЗУ)...
Да и знаний маловато пока.


Top
   
PostPosted: 18 Dec 2013, 08:38 
Offline
User avatar

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

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

_________________
Carthago delenda est, Carthaginem delendam esse


Top
   
PostPosted: 18 Dec 2013, 13:06 
Offline

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


Top
   
PostPosted: 27 Mar 2014, 08:08 
Offline
User avatar

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

_________________
Carthago delenda est, Carthaginem delendam esse


Top
   
PostPosted: 27 Mar 2014, 12:55 
Offline

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


Top
   
PostPosted: 27 Mar 2014, 20:51 
Offline
User avatar

Joined: 11 Aug 2008, 17:05
Posts: 1405
Location: Украина
Quote:
нє, асемблер тут ні до чого, думаю. Або дамп кривий, або так і було задумано, бо більшість точок співпадає, вроді.
Я брав класичну версію, з якогось емулятора. З моїм екземпляром, злитим з власного "Львова" - суттєві розбіжності, в кращий бік.
Смотрите, с дампом все в порядке, проблема в том, что не сделано разделение данных и кода (как я понимаю, в ПЗУ "Львова" такое явление не редкость).
Code:
$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


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 23 posts ]  Go to page 1 2 Next

Forum Games WEB Tape Loader Twitter RSS

All times are UTC+03:00


Who is online

Users browsing this forum: No registered users and 1 guest


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

Search for:
cron
Powered by phpBB® Forum Software © phpBB Limited