Giter Site home page Giter Site logo

mpu-imc's People

Contributors

schlae avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mpu-imc's Issues

IC3 6801V0B55P is dumped and more info

hi Eric, you say:

the microcontroller, IC3, has not been dumped

and that's why I just want to let you know that 6801V0B55P was actually dumped 10 years ago, I posted details here:

https://www.vogons.org/viewtopic.php?p=1202055#p1202055

and here:

https://www.vogons.org/viewtopic.php?f=62&t=96744

that dump is the latest known ROM for 6801V0B55P, i.e. version 1.5A, but 6801V0B55P with ROM version 1.4B is confirmed to exist in the wild, at least based on one report:

https://forum.vcfed.org/index.php?threads/roland-mpu-401-eprom-upgrade-1-5a.1238114/

in short that means command 0xAC returns 15 or 14 (respectively version 1.5 or 1.4) and command 0xAD returns 1 or 2 (respectively revision 'A' or 'B' to designate 1.5A or 1.4B) :

https://www.vogons.org/viewtopic.php?p=1202056#p1202056

the retro-computing community believes that 1.5A is the latest Intelligent MIDI firmware version, because that is what is also documented in the "MPU-401 Technical Reference Manual", but now, based on few findings that I made very recently, I have very strong evidence that there are newer firmware versions (and most importantly those new versions are for Generic 6801 and not for the custom and unobtainable now Roland part 6801V0B55P). it seems those newer firmware versions were introduced to existing devices mainly when an MPU-401 unit was sent back to Roland for a repair, which as you will see makes a lot of sense and here is how I came to that conclusion in chronological order:

thanks to a family friend, now a very old gentleman, who owns that particular MPU-401 unit since like 40 years, I was able to find out that unit has firmware which returns:

0xAC --> 0x15
0xAD --> 0x39

at first I was shocked and confused by that, as there is no known revision 0x39 of firmware 1.5, the only known one is revision 1, i.e. 1.5A.

that's why initially, I was thinking that it has to be some fault like maybe some bits flipped due to aging process where value '01' is stored in the ROM and it became '39', but digging further and further, as it will become clear below, showed me that is not the case and the firmware is really "1.5 revision 39".

What was even more confusing is that based on the label sticker on the bottom of the unit, it shows the unit is from May 1984, i.e. very very early unit, actually one of the earliest possible units - that is over 1 year before Roland released firmware 1.5, which release date is documented in "MPU-401 Technical Reference Manual" to be May 31, 1985.

So, based on "May 1984" date, what it should have is firmware 1.2, but yet it has 1.5 with some strange 0x39 revision number.

OK, it will be long, but digging deeper - I told the owner what I found out and how confusing it is and he told me the unit was sent back to Roland (he cannot recall the exact date or year) for a repair. So, I opened the unit and it was full of surprises:

  • what I immediately noticed is the sticker on the EPROM chip - the "2" is stroked-through with an X and "5" is marked, which suggested to me that is how they designated the unit was version 1.2 and it's upgraded to 1.5 during the repair process plus one corner (bottom left) of the sticker shows clear signs of how it was peeled in order to erase it with UV light, finally not one, but several things that seem to add up and to make a lot of sense, here is high-res picture of that EPROM:

mpu401_rom

  • Still, I was not sure that is really how they indicate the version on the EPROM sticker, i.e. if for example "5" marked is really supposed to mean version 1.5 and I needed to find some more evidence to support that. So, after spending a lot of time searching for pictures online of another unit with EPROM chip the only one I found is this one:

1984

at first that picture added some doubts to me, because it has "7" marked on the EPROM sticker, i.e. if my hypothesis is correct then that should mean firmware version 1.7, which is another unheard thing, but it took me almost no time searching to find that Vogons user "cricket" reported 5 years ago unit with ROM version 1.7C, as the post says:

I can use MPUTHRU.COM on the unit and it prints ROM version 1.7C

https://www.vogons.org/viewtopic.php?p=681558#p681558

even it seems back then no one really paid much attention that version 1.7C is something actually new and unheard.

It's also important that the unit from the picture above with "7" marked on the EPROM is not using 6801V0B55P, but another chip 6801V0A88P, which adds up - different chip, different ROM version, i.e. 1.7C that is not seen on units with 6801V0B55P that are 1.4B or 1.5A.

  • further more and it was the final nail in the coffin so to speak is my investigation is that another Vogons user "Artex", reported 10 years ago unit with sticker on the EPROM chip saying "Roland 1.5 DB" :

https://www.vogons.org/viewtopic.php?p=296139#p296139

that to me indicates "version 1.5 revision DB"

here are the 2 important parts of that post:

two chips missing on the PCB that are present on mine

"Artex" meant by that the EPROM chip and HD74LS04P, which are missing on most MPU-401 units, i.e. those with 6801V0B55P, which has build-in ROM and thus no external EPROM chip:

Roland_MPU-401_No 599461-_inside_angled

and "Artex" added:

The bigger chip says "Roland 1.5 DB"

and between HD74LS04P and the EPROM chip, the bigger one is the EPROM, i.e. "Artex" no doubt is talking about the sticker on the EPROM chip and that it's "Roland 1.5 DB" or "version 1.5 revision DB" (I guess that is the moment when they switched to that new format/style of the sticker)

Summary and final words:

it seems there are 3 designs:

  • 6801V0B55P (build-in ROM, latest known version 1.5A, dumped 10 years ago by the MAME project), in this case the EPROM and HD74LS04P are not populated on the board, but there is space left for them (I guess especially useful when repair is needed and 6801V0B55P is replaced with generic/regular 6801 MCU and not Custom Roland part).

  • 6801V0A88P + HD74LS04P + EPROM : latest known ROM version is 1.7C, unfortunately, dump is not available and Vogons user "cricket" that seems to have such unit is not active for years, i.e. cannot be reached. in any case I don't believe that case is important, because still 6801V0A88P is Roland part and unobtainable now

  • the most important and very interesting case - the case that started my investigation. it's so interesting, because it doesn't use Roland part, but instead off-the-shelf or regular/generic 6801 micro-controller + HD74LS04P + EPROM, i.e. design that is replicate-able. it seems ROM in my case is "version 1.5 revision 39", but there is "version 1.5 revision DB", i.e. the latest known as per the post of user "Artex" on Vogons. Too bad, "Artex" seems is not active for years on Vogons and no dump of that "version 1.5 revision DB". ([EDIT] it seems "Last active" on Vogons is not correct, I saw very recent posts by user "Artex").

Another interesting thing is that disassembling 6801V0B55P ROM 1.5A and the dump I made of "version 1.5 revision 39" from that repaired unit with the regular/generic 6801 micro-controller shows different instructions are used on the same places between the 2 firmwares - few examples:

LDAB (1.5A) --> LDB (1.5 rev 39)
LDAA (1.5A) --> LDA (1.5 rev 39)
STAA (1.5A) --> STA (1.5 rev 39)

and so and so on. Now, I know nothing about 680x-assembler and it took me a lot of searching to find out this:

http://datapipe-blackbeltsystems.com/windows/flex/asm4.html

which states:

SOURCE FORM: LDA (P); LDB (P);
6800 ALTERNATES: LDAA (P); LDAB (P);

and

SOURCE FORM: STA (P);
6800 ALTERNATES: STAA (P);

or it seems "1.5 rev 39" is compiled as 6809-code, which I don't really get, because the PCB with that ROM has off-the-shelf regular/generic 6801 micro-controller. In any case, it seems as part of repairs (and I guess lack of stock of those custom Roland 6801V0B55P or 6801V0A88P parts), they replaced the chip with regular/generic 6801 and built that "1.5 rev 39" firmware. Something almost like Roland hacked themselves. Again, it's too bad Vogons user "Artex" is unreachable and we cannot learn more about that "version 1.5 revision DB" unit and what chip it has inside. ([EDIT] it seems "Last active" on Vogons is not correct, I saw very recent posts by user "Artex")

Bottom line is that 6801V0B55P on MPU-IMC can be replaced with (regular/generic 6801 micro-controller + HD74LS04P + "1.5 rev 39" firmware) and maybe with "version 1.5 revision DB" if someone makes ROM dump of such unit. So, it's one possible road for hardware preservation.

I hope that information is useful and/or interesting to you...

--Matt

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.