Vítejte na Elektro Bastlírn?
Nuke - Elektro Bastlirna
  Vytvořit účet Hlavní · Fórum · DDump · Profil · Zprávy · Hledat na fóru · Příspěvky na provoz EB

Vlákno na téma KORONAVIRUS - nutná registrace


Nuke - Elektro Bastlirna: Diskuzní fórum

 FAQFAQ   HledatHledat   Uživatelské skupinyUživatelské skupiny   ProfilProfil   Soukromé zprávySoukromé zprávy   PřihlášeníPřihlášení 

KB1013VK1_2 Debugger

 
Přidat nové téma   Zaslat odpověď       Obsah fóra Diskuzní fórum Elektro Bastlírny -> Výpočetní technika
Zobrazit předchozí téma :: Zobrazit následující téma  
Autor Zpráva
MilanSK



Založen: Oct 29, 2020
Příspěvky: 18
Bydliště: Bratislava, Slovensko

PříspěvekZaslal: čt říjen 29 2020, 10:10    Předmět: KB1013VK1_2 Debugger Citovat

(ENGLISH VERSION BELOW)

Zdravím priaznivcov ruských hier Электроника (Elektronika), japonských hier Game & Watch od spoločnosti Nintendo a niektorých hier značky Tronica.

Naprogramoval som si pre zábavu malú aplikáciu - SHARP SM-5A / KB1013VK1-2 Debugger pre Windows. Ide o debugger strojového kódu mikrokontroléra SHARP SM-5A, ktorý bol použitý v japonských hrách, resp. mikrokontroléra КБ1013ВК1-2, ktorý bol použitý v ruských hrách.
Ponúkam vám ju na testovacie a študijné účely.

Aktuálna verzia bude vždy na stiahnutie tu:
SHARP SM-5A / KB1013VK1-2 Debugger

Debugger bol testovaný na všetkých 20 dostupných originálnych firmwarov (ROM-iek).
Z dôvodu ochrany autorských práv nie sú firmwary súčasťou debuggera. Je potrebné ich stiahnuť z internetu. Debugger podporuje automatické stiahnutie väčšiny podporovaných ROM-iek z bežne dostupného miesta.

Debugger ponúka základné ladiace techniky, ktoré programátori dobre poznajú.
Čo všetko debugger dokáže, zistíte z hlavného menu alebo pravým klikom na rôzne ovládacie prvky v programe. Veľa z ovládacích prvkov vie zobraziť malú nápovedu (tzv. tooltip), keď nad ne prejdete myšou.

Účelom debuggera nie je ponúknuť používateľovi úplný herný komfort. Na to slúžia plnohodnotné emulátory od iných autorov, dostupné pre Windows, Android aj iOS.
Preto debugger napr. nevydáva zvuky, grafika je iba v hrubých náčrtoch, atď.

Mám v pláne debugger ďalej rozširovať a implementovať ďalšie nástroje užitočné pri ladení.

Ak bude pre niekoho z vás debugger nápomocný alebo sa bude chcieť na niečo spýtať, môžeme to prediskutovať tu na fóre.
Budem vďačný za akýkoľvek konštruktívny príspevok.

Zdraví vás
Milan

------------------------------------------------------

Hi folks,

I've developed a tiny application - SHARP SM-5A / KB1013VK1-2 Debugger for Windows. It's a debugger for machine code of SHARP SM-5A microcontroller which was used in vintage Nintendo games of the Game & Watch series (and also some Tronica games), as well as КБ1013ВК1-2 microcontroller which was used in Russian handheld games (mostly clones of Nintendo games).
You can use the debugger for testing and study purposes.

Latest version will always be available for download here:
SHARP SM-5A / KB1013VK1-2 Debugger

The debugger was tested on all available original firmwares (ROMs).
As firmwares may be a subject of copyright, they are not embedded in the debugger and they must be downloaded from the internet. The debugger supports automatic download of some ROMs from public websites.

The debugger offers basic debugging techniques which are well-known to programmers.
You can discover debugger's capabilities in the main menu, or by right-click on various controls in the application. Many visual elements display a small tooltip on mouse hover.

The aim of the debugger is not to offer full-featured playing comfort. There is a lot of emulators (and simulators) available for Windows, Android and iOS.
That's why my debugger does not generate sound effects, does not display polished LCD graphics etc.

My plan is to extend the debugger with other debugging features in the future.

Any comments or ideas are welcome.

Regards,
Milan



screenshot.png
 Komentář:
Hlavné okno debuggera / Debugger screenshot
 Velikost:  42.06 kB
 Zobrazeno:  264 krát

screenshot.png




Naposledy upravil MilanSK dne út duben 05 2022, 9:54, celkově upraveno 12 krát.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
rnbw



Založen: Mar 21, 2006
Příspěvky: 33860
Bydliště: Bratislava

PříspěvekZaslal: čt říjen 29 2020, 10:16    Předmět: Citovat

Ten procesor je vraj kopia Sharp SM5A.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
MilanSK



Založen: Oct 29, 2020
Příspěvky: 18
Bydliště: Bratislava, Slovensko

PříspěvekZaslal: čt říjen 29 2020, 10:19    Předmět: Citovat

Ano, to je pravda.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
MilanSK



Založen: Oct 29, 2020
Příspěvky: 18
Bydliště: Bratislava, Slovensko

PříspěvekZaslal: čt prosinec 10 2020, 16:00    Předmět: Citovat

Verzia 1.0.2:
- pridané automatické sťahovanie príslušnej ROM-ky z internetu pre štyri hry: IM02, IM03, IM04 a IM09

------------------------------------------------------

Version 1.0.2:
- added automatic download of ROM for 4 games: IM02, IM03, IM04 a IM09
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
MilanSK



Založen: Oct 29, 2020
Příspěvky: 18
Bydliště: Bratislava, Slovensko

PříspěvekZaslal: ne únor 07 2021, 14:50    Předmět: Citovat

Verzia 1.0.3:
- pridané reálne časovanie a jeho násobky (požiadavka od Artura z Lotyšska)
- pridané tlačidlo na nastavenie aktuálneho času
- opravené drobné chyby

------------------------------------------------------

Version 1.0.3:
- added real-time timer (requested by Artur from Latvia)
- added button to set the current time
- fixed minor bugs
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
MilanSK



Založen: Oct 29, 2020
Příspěvky: 18
Bydliště: Bratislava, Slovensko

PříspěvekZaslal: ne březen 21 2021, 13:10    Předmět: Citovat

Verzia 1.0.4:
- pridaný výber zápisu ROM adries: pôvodný formát vs. MAME formát (požiadavka Artura z Lotyšska)
- pridaný výber názvov inštrukcií: pôvodné vs. MAME inštrukcie (požiadavka Artura z Lotyšska)
- pridané zvýrazňovanie tých hodnôt registrov, ktoré boli zmenené naposledy vykonanou inštrukciou (požiadavka Artura z Lotyšska)
- nastavovanie rýchlosti emulátora pomocou posuvného ovládača (namiesto položiek v hlavnom menu) (požiadavka Artura z Lotyšska)
- checkboxy vstupných signálov procesora boli nahradené tlačidlami (tip: ak je počas kliknutia tlačidla zároveň stlačený kláves Ctrl, tak tlačidlo zostane stlačené) (požiadavka Artura z Lotyšska)
- vylepšená emulácia časovača
- pridaná legenda označenia nožičiek procesora
- opravy drobných chýb a pár menších vylepšení

------------------------------------------------------

Version 1.0.4:
- added option to switch between native and MAME address notation (requested by Artur from Latvia)
- added option to switch between native and MAME instruction mnemonics (requested by Artur from Latvia)
- highlighting recently changed register values (requested by Artur from Latvia)
- setting emulation speed via track bar instead of main menu (requested by Artur from Latvia)
- input checkboxes were replaced with buttons (hint: hold Ctrl while clicking the button to lock it in pressed state) (requested by Artur from Latvia)
- improved timer emulation
- added CPU pins legend
- minor bug fixes and improvements
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
MilanSK



Založen: Oct 29, 2020
Příspěvky: 18
Bydliště: Bratislava, Slovensko

PříspěvekZaslal: ne březen 21 2021, 22:42    Předmět: Citovat

Verzia 1.0.5:
- pridaný výber sekvenčného alebo LFSR adresovania (požiadavka Artura z Lotyšska)

------------------------------------------------------

Version 1.0.5:
- added option to switch between sequential and LFSR addressing (requested by Artur from Latvia)
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
MilanSK



Založen: Oct 29, 2020
Příspěvky: 18
Bydliště: Bratislava, Slovensko

PříspěvekZaslal: út duben 13 2021, 15:07    Předmět: Citovat

Verzia 1.0.6:
- pridaná možnosť editovania inštrukcií (požiadavka Artura Rona)
- pridaná možnosť pomenovania ľubovoľnej ROM adresy (napr. názvom podprocedúry) a vlastného komentára ľubovoľnej ROM adresy
- pridaná dynamická legenda obsahujúca podrobný popis činnosti aktuálne vybranej inštrukcie (požiadavka Artura Rona)
- pridaná jazyková mutácia - ruština (požiadavka Artura Rona)
- pridaná možnosť meniť veľkosť pravého panela v hlavnom okne, čomu sa prispôsobuje veľkosť displeja

------------------------------------------------------

Version 1.0.6:
- added the ability to edit ROM instructions (requested by Artur Ron)
- added the ability to label and comment any ROM address
- added dynamic opcode legend; displays description of the currently selected instruction (requested by Artur Ron)
- added translation to Russian language (requested by Artur Ron)
- added the ability to resize the right panel of the main window (the size of the LCD image changes accordingly)
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
MilanSK



Založen: Oct 29, 2020
Příspěvky: 18
Bydliště: Bratislava, Slovensko

PříspěvekZaslal: čt červen 10 2021, 21:31    Předmět: Citovat

Verzia 1.0.7:
- NOVÉ! pridané interaktívne zobrazenie prepojení medzi čipom a displejom
- prepracovaná časť LCD ovládača (má za následok mierne zrýchlenie vykresľovania)
- pridané tlačidlo na obnovenie pôvodnej veľkosti okna zobrazujúceho čip s pomenovanými nožičkami

------------------------------------------------------

Version 1.0.7:
- NEW! added interactive demonstration of MCU and LCD interconnection
- re-worked some parts of LCD driver (this has positive impact on drawing performance of LCD image)
- added button to resize the MCU pins window to its original size



MCUtoLCD.png
 Komentář:
Okno interaktívneho zobrazenia prepojení medzi čipom a displejom

Prechádzajte myšou buď ponad kontakty displeja alebo ponad kontakty čipu a zistíte, ako sú navzájom prepojené.
Ctrl+klik uzamkne aktuálne prepojenie, jednoduchý klik tento zámok uvoľní a
 Velikost:  26.68 kB
 Zobrazeno:  174 krát

MCUtoLCD.png


Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
MilanSK



Založen: Oct 29, 2020
Příspěvky: 18
Bydliště: Bratislava, Slovensko

PříspěvekZaslal: ne září 26 2021, 21:35    Předmět: Citovat

Verzia 2.0.0:
- debugger bol rozšírený a zovšeobecnený na SHARP SM-5A Debugger (keďže KB1013VK1-2 je klonom pôvodného SHARP SM-5A)
- aktuálne podporované hry:
    - Nintendo Game&Watch AC-01 "Ball"
    - Nintendo Game&Watch FL-02 "Flagman"
    - Nintendo Game&Watch MT-03 "Vermin"
    - Nintendo Game&Watch RC-04 "Fire"
    - Nintendo Game&Watch IP-05 "Judge"
    - Nintendo Game&Watch MH-06 "Manhole"
    - Nintendo Game&Watch CN-07 "Helmet"
    - Nintendo Game&Watch LN-08 "Lion"
    - Nintendo Game&Watch PR-21 "Parachute"
    - Nintendo Game&Watch OC-22 "Octopus"
    - Nintendo Game&Watch PP-23 "Popeye"
    - Nintendo Game&Watch FP-24 "Chef"
    - Nintendo Game&Watch MC-25 "Mickey Mouse"
    - Nintendo Game&Watch FR-27 "Fire"
    - Электроника ИМ-02 "Ну, погоди!"
    - Электроника ИМ-03 "Тайны океана"
    - Электроника ИМ-04 "Весёлый повар"
    - Электроника ИМ-09 "Космический мост"
    - Электроника ИМ-13 "Разведчики космоса"
    - Электроника ИМ-23 "Автослалом"
    - Tronica GK-10 "Goal Keeper"
    - Tronica SM-11 "Space Mission"
    - Tronica SG-21 "Spider"

- keď je ROM prvýkrát úspešne načítaná, debugger si zapamätá cestu k zdrojovému súboru a pri ďalšom vybratí je táto ROM už automaticky načítaná z uloženého súboru
- pridaná možnosť otvoriť používateľskú ROM kompatibilnú so SHARP SM-5A; v takom prípade sa použije generický LCD obrazec (segmenty sú zobrazené ako štvorce)
- ovládanie vstupov bolo rozdelené do dvoch záložiek:
Raw input (surové, neinterpretované vstupy) - záložka obsahuje tlačidlá pokrývajúce všetky kombinácie vstupných signálov, ktoré hra rozoznáva
Game controls (ovládacie prvky hry) - záložka obsahuje tlačidlá ovládania vybratej hry (tie sú interne namapované na tlačidlá v záložke Raw input)
- modifikované pamäťové bunky RAM sú zvýraznené každá samostatne (predtým sa zvýraznil celý riadok pamäti obsahujúci modifikovanú bunku)
- každá pamäťová bunka je editovateľná samostatne
- pridané body prerušenia (breakpoints) pre čítanie obsahu pamäťovej bunky a pre zmenu obsahu pamäťovej bunky
- pridaná možnosť aktualizácie stavu debuggera počas plného behu emulácie
- pridaná možnosť voľby názvov inštrukcií podľa typu procesora aktuálne debugovanej hry
- pridaná možnosť voľby medzi predvolenými klávesovými skratkami a klávesovými skratkami v štýle MAME
- automatická kontrola novej verzie debuggera
- opravy drobných chýb a iné menšie vylepšenia

------------------------------------------------------

Version 2.0.0:
- the project has been re-worked from KB1013VK1-2 Debugger to the one of wider scope: SHARP SM-5A Debugger
- currently supported games: (see the list above)
- once a ROM file has been loaded successfully, the debugger saves its path, so next time it loads the ROM automatically
- added the ability to load a custom SHARP SM-5A compatible ROM; a generic LCD image (segments drawn as squares) is used in such a case
- input controls were split into two tabs:
Raw input - contains buttons to handle any combination of input recognized by the selected game
Game controls - contains buttons native to the selected game (these buttons are internally mapped to corresponding Raw input buttons)
- modified RAM fields are now being highlighted separately (instead of previously highlighting the whole RAM bank)
- each RAM field is now editable separately
- added read-memory and changed-memory breakpoints
- added the ability to refresh the debugger during unattended run
- added an option to use instruction mnemonics according to selected MCU
- added an option to choose between default and MAME-like keyboard shortcuts
- automatic checking for new version
- many minor improvements and bug fixes
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
MilanSK



Založen: Oct 29, 2020
Příspěvky: 18
Bydliště: Bratislava, Slovensko

PříspěvekZaslal: ne prosinec 11 2022, 19:01    Předmět: Citovat

Verzia 2.1.0:
- pridaná opravená verzia hry IP-05 "Judge" (purple, IP-15)
- pridaná pôvodná verzia hry CN-07 "Helmet" obsahujúca chybu
- pridaná hra Tronica SK-10 "Super Goal Keeper"
- pridané otváranie hry z príkazového riadku; hra je špecifikovaná jej typovým označením, napr. AC01 (Ball), MH06 (Manhole), IM02 (Nu Pogodi!) atď.
- pridané otváranie ROM súboru z príkazového riadku; takto otvorený ROM súbor je vždy považovaný za custom a použije sa všeobecný LCD obrázok s čiernymi štvorcami ako segmentmi
- pridaná možnosť pootočiť, resp. preklopiť skicu mikrokontroléra v okne zobrazujúcom prepojenie medzi mikrokontrolérom a displejom
- pridaná informácia o duplicitných LCD COM pinoch a upozornenie na neoverené skupiny segmentov pre LCD COM piny
- pridané zobrazenie najvyšších štyroch bitov Timera
- pridaná indikácia tých O registrov, ktoré kodujú číslice
- pridaná informácia o testovacích režimoch / skrytých funkciách pre každú podporovanú hru
- pridaný záznam zvukových efektov generovaných hrou a ich export do wav súboru
- pridané informačné okno s rôznymi užitočnými externými linkami

------------------------------------------------------

Version 2.1.0:
- added bug-fixed version of IP-05 "Judge" (purple, IP-15)
- added very first version of CN-07 "Helmet" which contained a bug
- added new game: Tronica SK-10 "Super Goal Keeper"
- added possibility to load the debugger with game specified in command-line; for example: AC01 (Ball), MH06 (Manhole), IM02 (Nu Pogodi!) etc.
- added possibility to load the debugger with ROM file specified in command-line; such ROM file is then handled as a custom ROM with generic LCD image containing black squares
- added possibility to rotate/flip the MCU outline in the "Interconnection of MCU and LCD" dialog
- added notification about redundant/doubled LCD COM pins, as well as about yet non-confirmed groups of segments driven by particular LCD COM pins
- added displaying of highest 4 bits of Timer
- added indication of those O registers which are encoding digits
- added information about available test modes / hidden features for every supported game
- added recording of sounds generated by the game; they can be exported to a wav file
- added informational window containing various useful external links
[/b]
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
MilanSK



Založen: Oct 29, 2020
Příspěvky: 18
Bydliště: Bratislava, Slovensko

PříspěvekZaslal: čt květen 18 2023, 19:09    Předmět: Citovat

Verzia 2.2.0:
- NOVÉ: debug sessions - zapamätanie stavu rozpracovaného debuggovania, vrátane stavu MCU, breakpointov a ďalších parametrov
- opravená chyba časovania niektorých inštrukcií
- opravená chyba v zaznamenávaní zvuku
- pridaný nový formát zaznamenávania zvuku
- pridané upozornenie, ak je RAM adresa mimo povolený rozsah
- pridané zobrazovanie popisku adresy (Label) v skokových inštrukciách (napr. TRS ZeroMemory() @ <addr>; pôvodne iba TRS <addr>)

------------------------------------------------------

Version 2.2.0:
- NEW: debug sessions - saving the state of current debugging, incl. complete MCU state, breakpoints and other parameters
- fixed bug in timing of some instructions
- fixed bug in sound recording
- added new format of sound recording
- added notification about out-of-range RAM address
- added displaying of Address Label in jump instructions (i.e. TRS ZeroMemory() @ <addr>; before it was TRS <addr>)
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
MilanSK



Založen: Oct 29, 2020
Příspěvky: 18
Bydliště: Bratislava, Slovensko

PříspěvekZaslal: so leden 20 2024, 19:40    Předmět: Citovat

Verzia 2.3.0:
- opravená chyba pri otváraní custom ROM súboru
- pridaná ruská hra Altair (s dozimetrom)
- pridané zobrazovanie alternatívnych LCD motívov, ktoré sú kompatibilné s vybranou ROM (cez dvojklik alebo pravý klik na LCD obrázku)
- pridané modré podfarbenie tej hodnoty RAM, ktorá je práve referencovaná registrom DP
- dvojklik na adrese kódu v dialógu Breakpoints zobrazí vybranú adresu v okne s výpisom disassembleru
- popisy adries kódu (address labels) sú zobrazované zvýrazneným písmom pre lepšiu orientáciu vo výpise disassembleru
- viacero menších vylepšení a opráv drobných chýb

------------------------------------------------------

Version 2.3.0:
- fixed error when loading custom ROM
- added russian Altair game (feat. dosimeter)
- added support for alternative LCD images that are compatible with currently loaded ROM (use doubleclick or right click on LCD image)
- added highlighting of RAM value currently referenced by DP register
- doubleclick on code address in the Breakpoints dialog highlights the selected address in main Disassembly window
- displaying code address labels in bold for better orientation in code disassembly
- other minor improvements and various small bug fixes
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
MilanSK



Založen: Oct 29, 2020
Příspěvky: 18
Bydliště: Bratislava, Slovensko

PříspěvekZaslal: ne leden 21 2024, 10:56    Předmět: Citovat

Väčšina z vás pozná starú digitálnu hru No, počkaj!
Je to klon hry Mickey Mouse, resp. Egg zo série Game & Watch od japonskej firmy Nintendo.

Ak viete programovať a chceli by ste vytvoriť repliku hry na svojej obľúbenej platforme tak, aby sa hrateľnosťou zhodovala s originálom, tu nájdete prepis pôvodného algoritmu:
https://twitter.com/MilanSK46676000/status/1748832279504589112?s=20

(Pre zaujímavosť: Na pochopenie toho, ako funguje pôvodný algoritmus, poslúžil práve debugger, ktorý je hlavnou témou tohto vlákna. Možno sa niekomu ďalšiemu podarí podobným spôsobom rozobrať aj iné hry.)
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Zobrazit příspěvky z předchozích:   
Přidat nové téma   Zaslat odpověď       Obsah fóra Diskuzní fórum Elektro Bastlírny -> Výpočetní technika Časy uváděny v GMT + 1 hodina
Strana 1 z 1

 
Přejdi na:  
Nemůžete odesílat nové téma do tohoto fóra.
Nemůžete odpovídat na témata v tomto fóru.
Nemůžete upravovat své příspěvky v tomto fóru.
Nemůžete mazat své příspěvky v tomto fóru.
Nemůžete hlasovat v tomto fóru.
Nemůžete připojovat soubory k příspěvkům
Můžete stahovat a prohlížet přiložené soubory

Powered by phpBB © 2001, 2005 phpBB Group
Forums ©
Nuke - Elektro Bastlirna

Informace na portálu Elektro bastlírny jsou prezentovány za účelem vzdělání čtenářů a rozšíření zájmu o elektroniku. Autoři článků na serveru neberou žádnou zodpovědnost za škody vzniklé těmito zapojeními. Rovněž neberou žádnou odpovědnost za případnou újmu na zdraví vzniklou úrazem elektrickým proudem. Autoři a správci těchto stránek nepřejímají záruku za správnost zveřejněných materiálů. Předkládané informace a zapojení jsou zveřejněny bez ohledu na případné patenty třetích osob. Nároky na odškodnění na základě změn, chyb nebo vynechání jsou zásadně vyloučeny. Všechny registrované nebo jiné obchodní známky zde použité jsou majetkem jejich vlastníků. Uvedením nejsou zpochybněna z toho vyplývající vlastnická práva. Použití konstrukcí v rozporu se zákonem je přísně zakázáno. Vzhledem k tomu, že původ předkládaných materiálů nelze žádným způsobem dohledat, nelze je použít pro komerční účely! Tento nekomerční server nemá z uvedených zapojení či konstrukcí žádný zisk. Nezodpovídáme za pravost předkládaných materiálů třetími osobami a jejich původ. V případě, že zjistíte porušení autorského práva či jiné nesrovnalosti, kontaktujte administrátory na diskuzním fóru EB.


PHP-Nuke Copyright © 2005 by Francisco Burzi. This is free software, and you may redistribute it under the GPL. PHP-Nuke comes with absolutely no warranty, for details, see the license.
Čas potřebný ke zpracování stránky 0.15 sekund