[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [GNU-linux-libre] MAME emulator is giving incentive to use non-free
From: |
Felipe Sanches |
Subject: |
Re: [GNU-linux-libre] MAME emulator is giving incentive to use non-free software |
Date: |
Mon, 4 Apr 2016 19:59:33 -0300 |
I am also sending the screenshot of the Another World virtual machine
debugger as an attachment to this message.
On Mon, Apr 4, 2016 at 7:58 PM, Felipe Sanches <address@hidden> wrote:
> The other situation when I was able to benefit from the automatically
> generated custom debugger UI was when working on emulating the
> (non-free) game Another World from the 90's. It was originally
> executed on Amiga computers, so the debugger would let me see the
> opcodes of the Amiga CPU. But the game was actually originally
> implemented in a custom virtual machine created by its author, Eric
> Chahi. I decided to emulate this virtual machine in MAME as if it were
> a real CPU. The end-result was that I got for the first time the
> ability to inspect the game (non-free) bytecode at the virtual-machine
> level by running it on the automatically generated debugger that MAME
> provides.
>
> This opens up a new level of insight on the internal workings of the
> program that was never possible before with so much ease. A screenshot
> of that can be seen here:
> https://twitter.com/juca_gnu/status/686597622417719296
>
> Happy Hacking,
> Felipe Sanches
>
> On Mon, Apr 4, 2016 at 7:47 PM, Felipe Sanches <address@hidden> wrote:
>> On Mon, Apr 4, 2016 at 7:23 PM, alírio eyng <address@hidden> wrote:
>>> Felipe Sanches:
>>>>MAME provides an interactive debugger
>>> so mame is not just an emulator.
>>> it is a emulator, disassembler and debugger.
>>> this is relevant information i can't see in official documentation, thanks.
>>>
>>> it seems even with a obsolete executable format, it can be a
>>> interesting development environment.
>>> a interesting development environment is useful in itself and don't
>>> need free games.
>>> is there a similar environment to a current architecture?
>>> can this development environment be used in freedom to develop a game
>>> from scratch?
>>
>> Yes. I did it.
>> https://github.com/garoa/GunSmoke/tree/master/
>>
>>> this development environment works for all architectures mame supports?
>> Yes. The debugger dialog is generic and you get it automatically as a
>> bonus if you implement a new CPU emulation module. This happened with
>> me a couple times already. I got access to the technical manuals of
>> the first computer designed and manufactured in Brazil, which was
>> called "Patinho Feio" (meaning something like "Ugly Duckling
>> Computer"). I got the printed documentation from the hands of one of
>> my university professors at the engineering school. He was involved in
>> the team that developed the pioneer computer back in 1972.
>>
>> Based on the documentation (which I published it all on the Internet
>> Archive with authorization form the original author:
>> https://archive.org/details/Montador_do_Patinho_Feio__Julho1977) I
>> wrote a new CPU emulation driver in MAME to emulate the custom
>> instruction set of this Brazilian machine. Not only emulation works
>> when loading its sample software - a trivially simple hello-world
>> extracted from a punched data tape, trivial enough to not even be
>> copyrightable I guess... - It also allows me to run the code step by
>> step and to inspect the system memory because the whole debugging
>> framework was "magically" inherited by the way MAME codebase is
>> structured.
>>
>> So this makes it sure that absolutely every CPU architecture supported
>> by MAME does also provide such nice interactive debugger. And the list
>> of supported CPUs is absurdly broad:
>>
>> address@hidden:~/mame/src/devices/cpu$ ls
>> 8x300 arm drcbec.cpp drccache.h e0c6200 hd61700
>> i860 m6800 mcs51 pdp8 sc61860 sm8500 tms32010
>> ucom4 x86emit.h
>> adsp2100 arm7 drcbec.h drcfe.cpp e132xs hmcs40
>> i960 m68000 mcs96 pic16c5x scmp spc700 tms32025
>> uml.cpp x86log.cpp
>> alph8201 asap drcbeut.cpp drcfe.h es5510 hphybrid
>> ie15 m6805 melps4 pic16c62x score ssem tms32031
>> uml.h x86log.h
>> alto2 avr8 drcbeut.h drcuml.cpp esrip i386
>> jaguar m6809 minx powerpc scudsp ssp1601 tms32051
>> unsp z180
>> am29000 ccpu drcbex64.cpp drcuml.h f8 i4004
>> lc8670 mb86233 mips pps4 se3208 superfx tms32082
>> upd7725 z8
>> amis2000 cop400 drcbex64.h drcumlsh.h g65816 i8008
>> lh5801 mb86235 mn10200 psx sh2 t11 tms34010
>> upd7810 z80
>> apexc cosmac drcbex86.cpp dsp16 h6280 i8085
>> lr35902 mb88xx nec rsp sh4 tlcs90 tms57002
>> v30mz z8000
>> arc cp1610 drcbex86.h dsp32 h8 i8089
>> m37710 mc68hc11 patinhofeio s2650 sharc tlcs900 tms7000
>> v60
>> arcompact cubeqcpu drccache.cpp dsp56k hcd62121 i86
>> m6502 mcs48 pdp1 saturn sm510 tms1000 tms9900
>> v810
2016_JAN_11_AnotherWolrd_interactive_debugger.png
Description: PNG image
- Re: [GNU-linux-libre] MAME emulator is giving incentive to use non-free software, (continued)
- Re: [GNU-linux-libre] MAME emulator is giving incentive to use non-free software, alírio eyng, 2016/04/03
- Re: [GNU-linux-libre] MAME emulator is giving incentive to use non-free software, Felipe Sanches, 2016/04/03
- Re: [GNU-linux-libre] MAME emulator is giving incentive to use non-free software, alírio eyng, 2016/04/03
- Re: [GNU-linux-libre] MAME emulator is giving incentive to use non-free software, Felipe Sanches, 2016/04/04
- Re: [GNU-linux-libre] MAME emulator is giving incentive to use non-free software, rain1, 2016/04/04
- Re: [GNU-linux-libre] MAME emulator is giving incentive to use non-free software, J.B. Nicholson, 2016/04/04
- Re: [GNU-linux-libre] MAME emulator is giving incentive to use non-free software, Joshua Gay, 2016/04/05
- Re: [GNU-linux-libre] MAME emulator is giving incentive to use non-free software, alírio eyng, 2016/04/04
- Re: [GNU-linux-libre] MAME emulator is giving incentive to use non-free software, Felipe Sanches, 2016/04/04
- Re: [GNU-linux-libre] MAME emulator is giving incentive to use non-free software, Felipe Sanches, 2016/04/04
- Re: [GNU-linux-libre] MAME emulator is giving incentive to use non-free software,
Felipe Sanches <=
- Re: [GNU-linux-libre] MAME emulator is giving incentive to use non-free software, alírio eyng, 2016/04/04
- Re: [GNU-linux-libre] MAME emulator is giving incentive to use non-free software, Denis 'GNUtoo' Carikli, 2016/04/09
- Re: [GNU-linux-libre] MAME emulator is giving incentive to use non-free software, alírio eyng, 2016/04/09
- Re: [GNU-linux-libre] MAME emulator is giving incentive to use non-free software, Luke, 2016/04/20
- Re: [GNU-linux-libre] MAME emulator is giving incentive to use non-free software, Felipe Sanches, 2016/04/20
- Re: [GNU-linux-libre] MAME emulator is giving incentive to use non-free software, alírio eyng, 2016/04/26
- Re: [GNU-linux-libre] MAME emulator is giving incentive to use non-free software, Denis 'GNUtoo' Carikli, 2016/04/05
- Re: [GNU-linux-libre] MAME emulator is giving incentive to use non-free software, alírio eyng, 2016/04/06
Re: [GNU-linux-libre] MAME emulator is giving incentive to use non-free software, Denis 'GNUtoo' Carikli, 2016/04/01