|
nedoPC.orgElectronics hobbyists community established in 2002 |
|
"Специалист" в собственном соку
Author |
Message |
micko
Novelist
Joined: 26 Mar 2008 23:21 Posts: 40 Location: Serbia
|
shoorick : Можете ли вы дать нам копию вашего пзу ? (Для Специалист и Согдианы )
|
16 Jul 2008 03:10 |
|
|
shoorick
Doomed
Joined: 05 Nov 2007 05:08 Posts: 487 Location: Украина
|
ну, если это будет полезно, то вот ПЗУ от Специалиста:
http://www.rapidshare.ru/731889
ld - загрузчик
mon - монитор
disk - ROM-диск программа (нач. адрес 0E800h)
отличия загрузчика и монитора от оригинальных я описал выше.
ПЗУ "disk" содержала подпрограммы записи байта и блока данных в электронный диск и обратно, а также программу "ROM COMPLEX" - для нее с магнитофона загружался блок 16 кб, содержавший редактор текста "Микрон", ассемблер, дизассемблер, корректор дампа, программатор и отладчик, расположенных по фиксированным адресам, соответствующих таблице в ПЗУ.
Сам блок сейчас дать не могу - он есть только на кассете, а считать их у меня сейчас нет возможности, да и врядли это нужно воспроизводить в эмуляторе - это единичный нестандартный случай.
по этой же причине нет исходника программы ROM COMPLEX, но ее можно дизассемблировать - она не сложна.
"диск" представлял собой верхние 16кб ОЗУ, которые не использовались в стандартной конфигурации. диск подключался сигналом НП стандартного Специалиста (сам сигнал НП фиксировался дополнительным RS-триггером на микросхеме 7400 (155ЛА3), так как нужен был только один раз после сброса ПК). при появлении уровня "1" сигнала НП основная память RAM 48 кб отключалась и вместо нее подключалась дополнительная 16 кб (поэтому диском нельзя было управлять из основной памяти), появление сигнала "0" возвращало обычную конфигурацию.
также диск имел аппаратную блокировку от записи (была выведена кнопка). в связи с тем, что в ПК Специалист сигнал "сброс" не нарушал регенерацию памяти, записанные в электронный диск данные после блокировки записи могли быть повреждены только сбоем по питанию. но это всё равно разовый случай
|
16 Jul 2008 04:14 |
|
|
shoorick
Doomed
Joined: 05 Nov 2007 05:08 Posts: 487 Location: Украина
|
пзу Согдианы - думаю, одинаков со стандартным РК для 16кБ. это пзу запаяно в плату, а чтобы получить его "программно" нужно запустить ПК, а я не уверен, что он работает
|
16 Jul 2008 04:20 |
|
|
micko
Novelist
Joined: 26 Mar 2008 23:21 Posts: 40 Location: Serbia
|
Спасибо за это. Я должен поставить это в MESS эмулятор.
|
16 Jul 2008 04:35 |
|
|
micko
Novelist
Joined: 26 Mar 2008 23:21 Posts: 40 Location: Serbia
|
Here is first screenshoot.
I have placed now image on better location.
Last edited by micko on 16 Jul 2008 05:22, edited 2 times in total.
|
16 Jul 2008 04:52 |
|
|
shoorick
Doomed
Joined: 05 Nov 2007 05:08 Posts: 487 Location: Украина
|
!
here is "disk" disasmed:
| | | | Code: ORG 0E800H COMPLEX: LXI SP, 7FFFH LXI H, MENU CALL 0C818H K_LOOP: CALL 0C803H CPI 45H ; "E" JZ 0C800H ; МОНИТОР CPI 31H ; "1" JZ L_EDIT CPI 32H ; "2" JZ L_ASSM CPI 33H ; "3" JZ L_DASM CPI 34H ; "4" JZ L_DUMP CPI 35H ; "5" JZ L_DEBG CPI 36H ; "6" JZ L_PROM JMP K_LOOP GOOD: LXI H, OK CALL 0C818H G_LOOP: CALL 0C803H CPI 45H ; "E" JZ 0C800H CPI 20H ; SPACE JZ COMPLEX CPI 0DH ; ENTER JNZ G_LOOP LHLD 0A800H PCHL L_EDIT: MVI C, 0 ; БЛОК 0 CALL L_BLOK MVI C, 1 ; БЛОК 1 CALL L_BLOK JMP GOOD L_ASSM: MVI C, 2 ; БЛОК 2 CALL L_BLOK MVI C, 0 ; БЛОК 0 CALL L_BLOK MVI C, 1 ; БЛОК 1 CALL L_BLOK JMP GOOD L_DASM: MVI C, 0 ; БЛОК 0 CALL L_BLOK MVI C, 1 ; БЛОК 1 CALL L_BLOK MVI C, 3 ; БЛОК 3 CALL L_BLOK JMP GOOD L_DUMP: MVI C, 4 ; БЛОК 4 CALL L_BLOK JMP GOOD L_DEBG: MVI C, 5 ; БЛОК 5 CALL L_BLOK JMP GOOD L_PROM: MVI C, 6 ; БЛОК 6 CALL L_BLOK JMP GOOD TO_DSK: PUSH H LXI H, 0FF03H T_LOOP: LDAX B MVI M, 9 STAX D MVI M, 8 INX B INX D XTHL DCX H MOV A, H ORA L XTHL JNZ T_LOOP POP H RET FRMDSK: PUSH H LXI H, 0FF03H ; РЕГИСТР УПРАВЛЕНИЯ ВВ55 D_LOOP: MVI M, 9 ; НП=1 LDAX B ; СЧИТАЛИ БАЙТ MVI M, 8 ; НП=0 STAX D ; ЗАПИСАЛИ БАЙТ INX B INX D XTHL DCX H MOV A, H ORA L XTHL JNZ D_LOOP POP H RET L_BLOK: XRA A MOV H, A MOV L, C DAD H DAD H DAD H MOV C, L MOV B, H LXI H, TAB DAD B ; HL - СМЕЩЕНИЕ БЛОКА В ТАБЛ MOV C, M INX H MOV B, M INX H MOV E, M INX H MOV D, M INX H MOV A, M INX H MOV H, M MOV L, A XCHG SHLD 0A800H ; ХРАНЕНИЕ АДРЕСА ЗАПУСКА В ВИДЕОПАМЯТИ XCHG JMP FRMDSK DB 0 DB 0 TAB: DW 1800H,1000H,0200H,0000H DW 0000H,0000H,0800H,0000H DW 0800H,0800H,0800H,0800H DW 1000H,0800H,0800H,0000H DW 1A00H,8200H,0200H,0000H DW 2000H,6100H,1300H,0000H DW 1C00H,7000H,0300H,0000H CHKDSK: MVI A, 9 STA 0FF03H LDA 3FFFH MOV D, A LDA 0BFFFH MOV B, A CMA MOV C, A STA 0BFFFH LDA 3FFFH MOV E, A LDA 0BFFFH CMP C MOV A, B STA 0BFFFH MVI A, 8 STA 0FF03H JNZ L_ERR1 MOV A, D CMP E JZ L_ERR2 RET L_ERR1: LXI H, ERR1 JMP L_ERRX L_ERR2: LXI H, ERR2 L_ERRX: CALL 0C818H CALL 0C803H CPI 45H ; "E" JZ 0C800H POP H JMP LD_DSK ERR1: DB 0AH," ОШИБКА: ЗАПИСЬ ЗАПРЕЩЕНА" DB 0AH," ВЫХОД: E" DB 0AH DB 0 ERR2: DB 0AH," ОШИБКА: ДИСК ОТКЛЮЧЕН" DB 0AH," ВЫХОД: E" DB 0AH DB 0 MENU: DB 1FH DB 0AH," =========== ROM VERSION" DB 0AH," =========== " DB 0AH," CONTROL COMPLEX V. 2.4" DB 0AH," ^^^^^^^ ^^^^^^^ ^^ ^^^" DB 0AH," ЗАГРУЗКА: " DB 0AH," РЕДАКТОРА - 1 " DB 0AH," АССЕМБЛЕРА - 2 " DB 0AH," ДИЗАССЕМБЛЕРА - 3 " DB 0AH," КОРРЕКТОРА ДАМПА - 4 " DB 0AH," ОТЛАДЧИКА - 5 " DB 0AH," ПРОГРАММАТОРА - 6 " DB 0AH," ВЫХОД - E " DB 0AH," -----------------------" DB 0AH DB 0 OK: DB " -- O.K. ---------------" DB 0AH," -----------------------" DB 0AH," ЗАПУСК - ENTER " DB 0AH," МЕНЮ - SPACE " DB 0AH," ВЫХОД - E " DB 0AH," -----------------------" DB 0AH DB 0 LD_DSK: CALL CHKDSK LXI H, 4000H LXI B, 1000H LXI D, 0 LXI SP, 7FFFH CALL TO_DSK JMP COMPLEX DB " * SHOORICK" | | | | |
|
16 Jul 2008 07:03 |
|
|
micko
Novelist
Joined: 26 Mar 2008 23:21 Posts: 40 Location: Serbia
|
Thanks for this. I am very busy these days, but will see to support your computer as soon as possible. Can you also upload somewhere dump of ROM disk that is called from disk.rom , since this is only menu.
And also is there any name of this clone (I saw some Super Specialist name on your site, but not sure if this is for it)
Here is how it looks when disk is called.
I have used G E800 command, is there any other way ?
Thanks once more.
|
16 Jul 2008 07:32 |
|
|
shoorick
Doomed
Joined: 05 Nov 2007 05:08 Posts: 487 Location: Украина
|
it was ram-disk, loaded from tape, not rom-disk. "rom" means "control program is in rom". if i will not be able to read "complex" from tape, it is possible to rebuild it manually, but generally it has no sense. it had sense when i had no other pc only this one and tape recorder as mass storage there was no other software to support for this disk.
"super specialist" - extended version, similar to basic, but has additional DRAM, swapped with main, additional CMOS RAM, swapped with existing ROM, and additional 8255 ports, to where was transferred control of memory configuration from basic 8255. it also had no sufficient software to support, and unfortunately dead in 1994 (2 years old) - it was broken while i was returning home from university after study with lot of other things. it's only mine memory btw, it had "RAM" version of "COMPLEX" to support similar "disk" as it had CMOS RAM in ROM address area.
these two modifications had preferences against basic when they were hardware, in emulator there is no any profit to emulate them against basic models. finally, they were not known to anybody at all until i have posted their photos so, do not see any reason to emulate them (except if will be very easy )
------
yes, it was called with GE800
block on tape had only jump to EB80 to initiate transfer loaded data from main memory to disk.
|
16 Jul 2008 07:58 |
|
|
shoorick
Doomed
Joined: 05 Nov 2007 05:08 Posts: 487 Location: Украина
|
развязка от сети:
|
18 Jul 2008 03:56 |
|
|
shoorick
Doomed
Joined: 05 Nov 2007 05:08 Posts: 487 Location: Украина
|
здесь еще кое-что "по нашему" есть: http://shoorick.ho.ua/ir/
|
18 Jul 2008 05:39 |
|
|
shoorick
Doomed
Joined: 05 Nov 2007 05:08 Posts: 487 Location: Украина
|
micko
i've inspected my Sogdiana yesterday - it has usual Radio-86RK 16kb version rom. original rom i've extracted by cutting pins from chip, then solder out pins one-by-one, and, finally, solder a rom socket there. i made it that way to be more safe for the board, but i have no soldering iron with vacuum suck that time seems, original rom was similar, just text "Radio-86RK" was replaced with "Sogdiana"
|
20 Jul 2008 22:01 |
|
|
micko
Novelist
Joined: 26 Mar 2008 23:21 Posts: 40 Location: Serbia
|
Thanks shoorick.
So it is same thing as with Spektr-001, just a name change.
|
21 Jul 2008 00:08 |
|
|
shoorick
Doomed
Joined: 05 Nov 2007 05:08 Posts: 487 Location: Украина
|
нет, это мое предположение. чтобы сберечь плату я выкусил пзу-ху из нее (керамика, запаянная под самые нихачу), а в панельку вставил РК-шный монитор, который купил на рынке. "родная" пзу-ха не сохранилась - это было 100 лет назад, не думал я тогда, что это будет такая ценность
i think "yes"
|
21 Jul 2008 00:54 |
|
|
shoorick
Doomed
Joined: 05 Nov 2007 05:08 Posts: 487 Location: Украина
|
с прошедшими всех праздничками!
для меня они не прошли зря - сбылась давняя "мечта идиота" считал файлы со своей кассеты, на которой были исходники форта, который я писал. а заодно и ROM COMPLEX, о котором я упоминал задача оказалась нетривиальная - с утилитами rrkwin и lptutils у меня ничего не вышло, правда, до девайса с компаратором руки не дошли - стало жалко кассету
в результате я все файлы посчитывал в вавы, и написал небольшую программку, которая их лопатит в общем, из 63 файлов с кассеты 54 прочитались нормально, даже портировал, собрал и запустил на эмуляторе свой недоделаный форт.
на все можно посмотреть здесь и здесь
|
07 Jan 2009 23:18 |
|
|
shoorick
Doomed
Joined: 05 Nov 2007 05:08 Posts: 487 Location: Украина
|
да в том то и дело - все времени нет вот, празднечками воспользовался
|
08 Jan 2009 02:22 |
|
|
Who is online |
Users browsing this forum: No registered users and 3 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
|
|