nedoPC.org

Electronics hobbyists community established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 19 Mar 2024 00:38



Reply to topic  [ 35 posts ]  Go to page Previous  1, 2, 3  Next
Процессор 7800. Редактирование прошивки 7801 - с чего начать 
Author Message
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Betelgeyze wrote:
FF это нули?

В ПЗУ - это обычно просто 0FFН.

_________________
iLavr


25 Oct 2020 09:19
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Betelgeyze wrote:
Дизассемблер помог бы но под мою систему команд такого нет, либо писать самому.

Посмотрите вот эти файлы, возможно, это то, что вам надо...
Attachment:
dasm7801.zip [33 KiB]
Downloaded 303 times
Attachment:
upd7801op.zip [39.53 KiB]
Downloaded 293 times

http://takeda-toshiya.my.coocan.jp/scv/index.html
Quote:
uPD7801 tiny disassembler (11/19/2005) may have some bugs
uPD7801 opecodes table (11/19/2005)

_________________
iLavr


25 Oct 2020 09:29
Profile
Novelist

Joined: 11 Nov 2015 09:34
Posts: 25
Reply with quote
Есть такой эмулятор аркадных автоматов MAME
ссылка:https://www.mamedev.org/release.html

там у него в комплекте есть Дизассемблер unidasm.exe
 unidasm.exe
Code:
Usage: D:\MAME\unidasm.exe <filename> -arch <architecture> [-basepc <pc>]
   [-mode <n>] [-norawbytes] [-xchbytes] [-flipped] [-upper] [-lower]
   [-skip <n>] [-count <n>]

Supported architectures:
  8x300          g65816         m6800          scudsp         unsp10         
  adsp21xx       gigatron       m68000         se3208         unsp12         
  alpha          h6280          m68008         sh2            unsp20         
  alpha_nt       h8             m6801          sh4            upd7725       
  alpha_unix     h8h            m68010         sh4be          upd7801       
  alpha_vms      h8s2000        m6802          sharc          upd78c05       
  alpha8201      h8s2600        m68020         sm500          upd7807       
  alto2          hc11           m6803          sm510          upd7810       
  am29000        hcd62121       m68030         sm511          upd78014       
  amis2000       hd61700        m68040         sm530          upd78024       
  apexc          hd6301         m6805          sm590          upd78044a     
  arc            hd6309         m6808          sm5a           upd78054       
  arcompact      hd63701        m6809          sm8500         upd78064       
  arm            hmcs40         m68340         sparcv7        upd78078       
  arm_be         hp_5061_3001   m68hc05        sparcv8        upd78083       
  arm7           hp_5061_3011   m740           sparcv9        upd78138       
  arm7_be        hp_09825_67907 mb86233        sparcv9vis1    upd78148       
  arm7thumb      hpc16083       mb86235        sparcv9vis2    upd78214       
  arm7thumbb     hpc16164       mb88           sparcv9vis2p   upd78218a     
  asap           hyperstone     mc88100        sparcv9vis3    upd78224       
  avr8           i4004          mc88110        sparcv9vis3b   upd78234       
  axc51core      i4040          mcs48          spc700         upd78244       
  axc208         i8008          minx           ssem           upd780024a     
  capricorn      i802x          mips1be        ssp1601        upd78312       
  ccpu           i8051          mips1le        st62xx         upd78322       
  cdp1801        i8052          mips3be        superfx        upd78328       
  cdp1802        i8085          mips3le        t11            upd78334       
  cdp1805        i8089          mn10200        tlcs870        upd78352       
  clipper        i80c52         nanoprocessor  tlcs900        upd78356       
  coldfire       i860           nec            tmp90c051      upd78366a     
  cop410         i8x9x          ns32000        tmp90840       upd78372       
  cop420         i8xc196        nuon           tmp90844       upd780065     
  cop444         i8xc51fx       nsc8105        tms0980        upd780988     
  cop424         i8xc51gb       pace           tms1000        upd78k0kx1     
  cp1610         i960           patinho_feio   tms1100        upd78k0kx2     
  cr16a          ie15           pdp1           tms32010       upi41         
  cr16b          jaguardsp      pdp8           tms32025       v60           
  cquestlin      jaguargpu      pic16c5x       tms32031       v810           
  cquestrot      konami         pic16c62x      tms32051       vt50           
  cquestsnd      ks0164         powerpc        tms32082_mp    vt52           
  dp8344         lc8670         pps4           tms32082_pp    vt61           
  ds5002fp       lh5801         psxcpu         tms34010       we32100       
  dsp16          lr35902        r65c02         tms34020       x86_16         
  dsp32c         m146805        r65c19         tms57002       x86_32         
  dsp56000       m37710         romp           tms7000        x86_64         
  dsp56156       m4510          rsp            tms9900        xavix         
  e0c6200        m58846         rx01           tms9980        xavix2000     
  epg3231        m6502          s2650          tms9995        xavix2         
  esrip          m6509          saturn         tp0320         z180           
  f2mc16         m6510          sc61860        tx0_64kw       z8             
  f8             m65c02         scmp           tx0_8kw        z80           
  fr             m65ce02        score7         ucom4          z8000         


25 Oct 2020 09:36
Profile
Writer

Joined: 13 Mar 2020 06:21
Posts: 10
Reply with quote
Спасибо! Буду изучать.


25 Oct 2020 09:56
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22383
Location: Silicon Valley
Reply with quote
Betelgeyze wrote:
Понемногу ковыряюсь в прошивке,возник вопрос что такое-
C0...DF JR +offset (Opcode minus $C0)
E0...FF JR -offset (-(Opcode minus $E0))
?

Это относительная передача управления в один байт как я понял:
Code:
0xC0 - JR +0
0xC1 - JR +1
0xC2 - JR +2
0xC3 - JR +3
0xC4 - JR +4
0xC5 - JR +5
0xC6 - JR +6
0xC7 - JR +7
0xC8 - JR +8
0xC9 - JR +9
0xCA - JR +10
0xCB - JR +11
0xCC - JR +12
0xCD - JR +13
0xCE - JR +14
0xCF - JR +15
0xD0 - JR +16
0xD1 - JR +17
0xD2 - JR +18
0xD3 - JR +19
0xD4 - JR +20
0xD5 - JR +21
0xD6 - JR +22
0xD7 - JR +23
0xD8 - JR +24
0xD9 - JR +25
0xDA - JR +26
0xDB - JR +27
0xDC - JR +28
0xDD - JR +29
0xDE - JR +30
0xDF - JR +31

0xE0 - JR -0
0xE1 - JR -1
0xE2 - JR -2
0xE3 - JR -3
0xE4 - JR -4
0xE5 - JR -5
0xE6 - JR -6
0xE7 - JR -7
0xE8 - JR -8
0xE9 - JR -9
0xEA - JR -10
0xEB - JR -11
0xEC - JR -12
0xED - JR -13
0xEE - JR -14
0xEF - JR -15
0xF0 - JR -16
0xF1 - JR -17
0xF2 - JR -18
0xF3 - JR -19
0xF4 - JR -20
0xF5 - JR -21
0xF6 - JR -22
0xF7 - JR -23
0xF8 - JR -24
0xF9 - JR -25
0xFA - JR -26
0xFB - JR -27
0xFC - JR -28
0xFD - JR -29
0xFE - JR -30
0xFF - JR -31

А в начале ПЗУ идут вектора переходов:
Betelgeyze wrote:
Первая строчка:
00 54 00 01 FF FF FF FF 54 30 03 FF FF FF FF FF 54 D0 1E FF FF FF

соответственно по RESET код пойдёт в 0x0100
по INT1 - в 0x0330
по INT2 - в 0x1ED0
а INT0 тут просто пропущен (неиспользуемые части ПЗУ заполнены FF-ами)


Attachments:
Screenshot from 2020-10-25 12-07-24.png
Screenshot from 2020-10-25 12-07-24.png [ 77.76 KiB | Viewed 7555 times ]

_________________
:dj: https://mastodon.social/@Shaos
25 Oct 2020 12:08
Profile WWW
Writer

Joined: 13 Mar 2020 06:21
Posts: 10
Reply with quote
Почитал даташит на процессор,нашёл команды ввода\вывода:
OUT AB15-8 ← B,AB7-0 ← byte DB7-0←A
Читаю описание: инструкция OUT выводит данные из источника в порт ввода\вывода. Номер порта должен быть указан в приёмнике.
Опкод 4D 00...4D BF OUT xx.
В дампе есть нечто похожее:
4D 75 34 A3 C8 14 30 4D 58 0E 14 08 4D 59 20 C8 59 3F C9 28 3A 7D
Сомневаюсь что я правильно перевёл:
OUT 75
LXI C8 A3
LXI 30
OUT 58
MOV 08 14
OUT 59
INRW 59 C8
STAX C9
LDAW 3A
7D ?
Если 4D пишет непосредственно в порт,то не понятно где брать адреса портов?


28 Oct 2020 07:33
Profile
Writer

Joined: 13 Mar 2020 06:21
Posts: 10
Reply with quote
Попробовал запустить dasm7801-быстро слопывается чёрное окошко. Unidasm-на черном фоне пробегает быстро список и окошко схлопывается.


02 Nov 2020 10:03
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Они вам выдали список своих инструкций скорее всего...

Попробуйте запустить сеанс MS-DOS и в нём из командной строки запустить эти программы.

Вот как-то так:
Attachment:
dasm.gif
dasm.gif [ 9.09 KiB | Viewed 7424 times ]


P.S. В старших версиях Венды "сеанс MS-DOS" - это команда CMD.

_________________
iLavr


02 Nov 2020 10:07
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22383
Location: Silicon Valley
Reply with quote
Я тут между делом на ебее заказал парочку с Китая и даже уже успел получить :roll:


Attachments:
D7800G.jpg
D7800G.jpg [ 105.37 KiB | Viewed 7149 times ]

_________________
:dj: https://mastodon.social/@Shaos
27 Nov 2020 20:20
Profile WWW
Writer

Joined: 13 Mar 2020 06:21
Posts: 10
Reply with quote
Если не секрет.Что на них будете собирать?


29 Nov 2020 05:55
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22383
Location: Silicon Valley
Reply with quote
Betelgeyze wrote:
Если не секрет.Что на них будете собирать?

nedoPC-78 :mrgreen:

_________________
:dj: https://mastodon.social/@Shaos


29 Nov 2020 13:55
Profile WWW
Writer

Joined: 24 Aug 2022 23:08
Posts: 23
Reply with quote
Betelgeyze wrote:
Контроллер очень старой радиостанции. Подготовил апгрейд этого аппарата,но выложить для для повторения не могу пока не сниму блокировку по одному из портов.
Исходников нет и не будет, есть только слитая прошивка. Систему команд придётся изучать.
FF это нули?


У меня сейчас тоже подобная задача стоит, и тоже со старой радиостанции.
Подскажите как вы с 7801 считывали прошивку?
Если у вас контроллер uPD7801G-114 не могли бы вы поделиться слитой прошивкой?


24 Aug 2022 23:24
Profile
Writer

Joined: 24 Aug 2022 23:08
Posts: 23
Reply with quote
Есть ли способ считать код из внутреннего ПЗУ 4Кб с 7801 которые программируются при производстве?


25 Aug 2022 00:59
Profile
Junior
User avatar

Joined: 16 Jun 2022 14:11
Posts: 8
Location: замкадье
Reply with quote
Betelgeyze wrote:
...FF это нули?

Наоборот, 1111 1111


31 Aug 2022 01:10
Profile
Doomed

Joined: 10 Aug 2022 07:27
Posts: 351
Reply with quote
Aries wrote:
Betelgeyze wrote:
...FF это нули?

Наоборот, 1111 1111

Ну, это смотря с какой стороны посмотреть.)


31 Aug 2022 08:04
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 35 posts ]  Go to page Previous  1, 2, 3  Next

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

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.