Technical questions for the MPC2000xl and the MPC2000
By Evatech Mon Feb 02, 2026 1:45 am
I successfully reconstructed the part of RAM the OS actually executes inside of. I'm fixing the problem of "file name already used" (the damn thing should auto increment the last 2 digits instead of adding a "z" one time then giving up) and many other quality of life problems. No feature requests, dont ask me for shit. If you have any experience with Ghidra or reverse engineering ancient x86 we can talk. otherwise be quiet and wait for it:

ffff:4346 !*#$%&'()***-**0123456789******@ABCDEFGHIJKLMNOPQRSTUVWXYZ****_*abcdefghijklmnopqrstuvwxyz{*}** " !*#$%&'()***-**0123456789******@ABCDEFGHIJKLMNOPQRSTUVWXYZ****_*abcdefghijklmnopqrstuvwxyz{*}**" ds
ffff:43a8 Unknown error "Unknown error" ds
ffff:43b6 not enough memory "not enough memory" ds
ffff:43c8 disk read error "disk read error" ds
ffff:43d8 disk write error "disk write error" ds
ffff:43ea File is damaged "File is damaged" ds
ffff:43fa Internal error "Internal error" ds
ffff:440a Disk requires newer OS! "Disk requires newer OS!" ds
ffff:4422 Unknown file type "Unknown file type" ds
ffff:4434 Name already used "Name already used" ds
ffff:4446 Sound directory full(128max) "Sound directory full(128max)" ds
ffff:4464 Prog. directory full(24 max) "Prog. directory full(24 max)" ds
ffff:4482 No digital signal carrier "No digital signal carrier" ds
ffff:449c Can't open file "Can't open file" ds
ffff:44ac File already exists "File already exists" ds
ffff:44c0 Can't remove file "Can't remove file" ds
ffff:44d2 Disk is write protected "Disk is write protected" ds
ffff:44ea Insufficient disk space "Insufficient disk space" ds
ffff:4502 Wrong disk format "Wrong disk format" ds
ffff:4514 Unknown file format "Unknown file format" ds
ffff:4528 Unexpected end-of-file "Unexpected end-of-file" ds
ffff:4540 Unknown error "Unknown error" ds
ffff:45db FLASH "FLASH" ds
ffff:45ed SMPTE "SMPTE" ds
ffff:462c REC OUT(8PARA) "REC OUT(8PARA)" ds
ffff:4647 out to individual: "out to individual:" ds
ffff:4670 FLASH FILE MEMORY TEST "FLASH FILE MEMORY TEST" ds
ffff:468a FLASH "FLASH" ds
ffff:4697 now testing "now testing" ds
ffff:46a3 block: "block:" ds
ffff:46aa flash write error "flash write error" ds
ffff:46bc flash verify error "flash verify error" ds
ffff:46cf flash memory OK "flash memory OK" ds
ffff:46df flash card is NOT found "flash card is NOT found" ds
ffff:4707 Testing Memory... "Testing Memory..." ds
ffff:472d WAVE MEMORY TEST "WAVE MEMORY TEST" ds
ffff:4740
Mword recognized. "\nMword recognized." ds
ffff:477b WAVE MEMORY TEST "WAVE MEMORY TEST" ds
ffff:4795
Detecting Wave Memory... "\nDetecting Wave Memory..." ds
ffff:47b6 no wave ram! "no wave ram!" ds
ffff:4e48 (Press ENTER to commit.) "(Press ENTER to commit.)" ds
ffff:4f95 (no sound) "(no sound) " ds
ffff:5031 MPC2000 development Team! " MPC2000 development Team!" ds
ffff:5053 Product planning "Product planning" ds
ffff:507f Cosmetic design "Cosmetic design" ds
ffff:508f Kazusato Kawanoguchi " Kazusato Kawanoguchi" ds
ffff:50b0 Electric design "Electric design" ds
ffff:50c0 Yasuyuki Hayashi " Yasuyuki Hayashi" ds
ffff:50dd Hideyuki Oimatsu " Hideyuki Oimatsu" ds
ffff:50fa Mechanical design "Mechanical design" ds
ffff:510c Takeshi Sugiyama " Takeshi Sugiyama" ds
ffff:512a Software design "Software design" ds
ffff:513a Akihiro Hayashi " Akihiro Hayashi" ds
ffff:5157 Yoshihiro Ishikawa " Yoshihiro Ishikawa" ds
ffff:5175 Sound design "Sound design" ds
ffff:5182 Masayuki Hoshi " Masayuki Hoshi" ds
ffff:519d and studio Mix 335 stuff " and studio Mix 335 stuff" ds
ffff:51bf Thanks to all AKAI EMI stuff. "Thanks to all AKAI EMI stuff." ds
ffff:53b3 ALL CH "ALL CH" ds
ffff:53ba CLEAR "CLEAR" ds
ffff:53c6 STEREO "STEREO" ds
ffff:53d0 INDIV "INDIV" ds
ffff:53d9 SETUP "SETUP" ds
ffff:53ec FXedit "FXedit" ds
ffff:53f7 Mixer source select "Mixer source select" ds
ffff:5412 Stereo mix: "Stereo mix:" ds
ffff:542e Master Level "Master Level" ds
ffff:5442 Level: "Level:" ds
ffff:544c Record mix changes "Record mix changes" ds
ffff:549c MULTI FX1 "MULTI FX1" ds
ffff:54a6 MULTI FX2 "MULTI FX2" ds
ffff:54b0 REVERB 1 "REVERB 1" ds
ffff:54b9 REVERB 2 "REVERB 2" ds
ffff:54d8 FX1 DIST/FLT "FX1 DIST/FLT" ds
ffff:54e5 FX1 MOD/ECHO "FX1 MOD/ECHO" ds
ffff:54f2 FX1 REVERB "FX1 REVERB" ds
ffff:5503 FX2 DIST/FLT "FX2 DIST/FLT" ds
ffff:5510 FX2 MOD/ECHO "FX2 MOD/ECHO" ds
ffff:551d FX2 REVERB "FX2 REVERB" ds
ffff:5594 STEREO "STEREO" ds
ffff:559e INDIV "INDIV" ds
ffff:55b1 SETUP "SETUP" ds
ffff:55ba FXedit "FXedit" ds
ffff:55e2 STEREO "STEREO" ds
ffff:55ec INDIV "INDIV" ds
ffff:55ff SETUP "SETUP" ds
ffff:5608 FXedit "FXedit" ds
ffff:5611
Effect board is "\nEffect board is" ds
ffff:5625 not installed. "not installed." ds
ffff:5663 Input: "Input:" ds
ffff:5791 BYPASS "BYPASS" ds
ffff:5798 CLOSE "CLOSE" ds
ffff:579e MIXER "MIXER" ds
ffff:57f6 :DISTORTION/RINGMOD ":DISTORTION/RINGMOD" ds
ffff:5812 <DISTORTION> "<DISTORTION>" ds
ffff:5835 <RINGMOD> "<RINGMOD>" ds
ffff:5850 $Depth: % "$Depth: %" ds
ffff:5888 :4-BAND FILTER ":4-BAND FILTER" ds
ffff:58e2 Q ^ <F-MOD> depth "Q ^ <F-MOD> depth" ds
ffff:5901 PHASE SHIFT "PHASE SHIFT" ds
ffff:590d FLANGE "FLANGE" ds
ffff:5914 CHORUS "CHORUS" ds
ffff:591b ROTARY SPEAKERS "ROTARY SPEAKERS" ds
ffff:592b FMOD/AUTOPAN "FMOD/AUTOPAN" ds
ffff:5938 PITCH SHIFT "PITCH SHIFT" ds
ffff:5944 PITCH+FEEDBACK "PITCH+FEEDBACK" ds
ffff:5974 :MODULATION ":MODULATION" ds
ffff:5984 Type: "Type:" ds
ffff:59b7 Speed: Hz "Speed: Hz" ds
ffff:59c6 Depth: "Depth:" ds
ffff:59cf )Feedback: ")Feedback:" ds
ffff:5a25 MIDI control #: "MIDI control #:" ds
ffff:5a38 Acceleration: s "Acceleration: s" ds
ffff:5aa9 <F-MOD> Speed: Hz "<F-MOD> Speed: Hz" ds
ffff:5ac0 Depth: "Depth:" ds
ffff:5ac8 7)Feedback: "7)Feedback:" ds
ffff:5ad7 <AUTOPAN> "<AUTOPAN>" ds
ffff:5ae4 Speed: Hz "Speed: Hz" ds
ffff:5af3 Depth: "Depth:" ds
ffff:5b33 Left Right "Left Right" ds
ffff:5b4a Delay: ms ms "Delay: ms ms" ds
ffff:5b5e Feedback: "Feedback:" ds
ffff:5bb8 MONO LEFT "MONO LEFT" ds
ffff:5bcb XOVER L&R "XOVER L&R" ds
ffff:5bd5 STEREO "STEREO" ds
ffff:5bf0 :DELAY/ECHO ":DELAY/ECHO" ds
ffff:5c00 Type: "Type:" ds
ffff:5c0b Feedback: % "Feedback: %" ds
ffff:5c1b Feedback delay: ms "Feedback delay: ms" ds
ffff:5c33 HF damping: Hz "HF damping: Hz" ds
ffff:5c45 [)L/R delay offset: % "[)L/R delay offset: %" ds
ffff:5c61 Left Right "Left Right" ds
ffff:5c71 Feedback: % % "Feedback: % %" ds
ffff:5c89 Feedback delay: ms ms "Feedback delay: ms ms" ds
ffff:5ca6 U)HF damping: Hz Hz "U)HF damping: Hz Hz" ds
ffff:5cea LARGE HALL "LARGE HALL" ds
ffff:5cf5 SMALL HALL "SMALL HALL" ds
ffff:5d00 LARGE ROOM "LARGE ROOM" ds
ffff:5d0b SMALL ROOM "SMALL ROOM" ds
ffff:5d16 GATED 1 "GATED 1" ds
ffff:5d1e GATED 2 "GATED 2" ds
ffff:5d26 REVERSE "REVERSE" ds
ffff:5d4e :REVERB ":REVERB" ds
ffff:5d5a Type: "Type:" ds
ffff:5d63 Predelay: ms "Predelay: ms" ds
ffff:5d74 Time: "Time:" ds
ffff:5d7b 1)Diffuse: "1)Diffuse:" ds
ffff:5d8d LF damping: Hz "LF damping: Hz" ds
ffff:5d9e HF damping: Hz "HF damping: Hz" ds
ffff:5dce MOD/ECHO>REV "MOD/ECHO>REV" ds
ffff:5ddb REV>MOD/ECHO "REV>MOD/ECHO" ds
ffff:5de8 MOD/ECHO+REV "MOD/ECHO+REV" ds
ffff:5e02 MASTER "MASTER" ds
ffff:5e3a :Effect Mixer ":Effect Mixer" ds
ffff:5e4b CLOSE "CLOSE" ds
ffff:5e55 Direct sig: "Direct sig:" ds
ffff:5e64 Patch: "Patch:" ds
ffff:5e6d )Output: ")Output:" ds
ffff:5ea4 )Reverb: ")Reverb:" ds
ffff:5ec6 :Effect Mixer ":Effect Mixer" ds
ffff:5ed7 CLOSE "CLOSE" ds
ffff:5ee7 Reverb: "Reverb:" ds
ffff:5f1c :Copy Effect Settings ":Copy Effect Settings" ds
ffff:5f35 CLOSE "CLOSE" ds
ffff:5f3e DO IT "DO IT" ds
ffff:5fc0 NEW_PROGRAM_ "NEW_PROGRAM_ " ds
ffff:5fd4 PROGRAM "PROGRAM" ds
ffff:5fdc ^MASTER "^MASTER" ds
ffff:5fe4 NORMAL "NORMAL" ds
ffff:5feb SIMULT "SIMULT" ds
ffff:6122 ASSIGN "ASSIGN" ds
ffff:612c PARAMS "PARAMS" ds
ffff:613e PURGE "PURGE" ds
ffff:615c Pad: =Note: "Pad: =Note:" ds
ffff:616d Pad assign: "Pad assign:" ds
ffff:617c Note: =Snd: "Note: =Snd:" ds
ffff:6194 Also play note: " Also play note:" ds
ffff:61a6 If over: , use: "If over: , use:" ds
ffff:6202 :Assignment View ":Assignment View" ds
ffff:6216 CLOSE "CLOSE" ds
ffff:621e =
Note: = "=\nNote: =" ds
ffff:6278 :Initialize Pad Assign ":Initialize Pad Assign" ds
ffff:6292 CANCEL "CANCEL" ds
ffff:629c DO IT "DO IT" ds
ffff:62a6 Initialize pad assign: "Initialize pad assign:" ds
ffff:62e8 START "START" ds
ffff:62ee POLY "POLY " ds
ffff:6300 NOTE OFF "NOTE OFF" ds
ffff:6350 ASSIGN "ASSIGN" ds
ffff:635a PARAMS "PARAMS" ds
ffff:636c PURGE "PURGE" ds
ffff:637e Pgm: Note: "Pgm: Note:" ds
ffff:6393 <Envelope> "<Envelope>" ds
ffff:63a1 Attack: "Attack:" ds
ffff:63c5 <Filter> "<Filter>" ds
ffff:63d9 $Reson: "$Reson:" ds
ffff:63f5 Voice "Voice" ds
ffff:63fe Overlap: "Overlap:" ds
ffff:6452 :Velocity Modulation ":Velocity Modulation" ds
ffff:646a CLOSE "CLOSE" ds
ffff:647c Note: "Note:" ds
ffff:648e Velo>Attack: "Velo>Attack:" ds
ffff:649d !Velo> Start: "!Velo> Start:" ds
ffff:64ad +Velo> Level: "+Velo> Level:" ds
ffff:650c :Velo/Env >> filter ":Velo/Env >> filter" ds
ffff:6523 CLOSE "CLOSE" ds
ffff:6535 Note: "Note:" ds
ffff:6547 Attack: "Attack:" ds
ffff:655b +Amount: "+Amount:" ds
ffff:65d6 :Velo >> Pitch ":Velo >> Pitch" ds
ffff:65e8 CLOSE "CLOSE" ds
ffff:65fa Note: "Note:" ds
ffff:6614 (Prog tempo= "(Prog tempo=" ds
ffff:6628 Velo>Pitch: "Velo>Pitch:" ds
ffff:6684 :Mute Assign ":Mute Assign" ds
ffff:6694 CLOSE "CLOSE" ds
ffff:66a6 Note: "Note:" ds
ffff:66b8 Mutes off: "Mutes off:" ds
ffff:66c6 Note: "Note:" ds
ffff:66d3 'Note: "'Note:" ds
ffff:6724 IGNORE "IGNORE " ds
ffff:672c RECEIVE "RECEIVE" ds
ffff:6738 ASSIGN "ASSIGN" ds
ffff:6742 PARAMS "PARAMS" ds
ffff:6754 PURGE "PURGE" ds
ffff:676b Sampler MIDI setup "Sampler MIDI setup" ds
ffff:6785 MIDI volume: "MIDI volume:" ds
ffff:6795 Program Change: "Program Change:" ds
ffff:67a6 #Local mode: " #Local mode:" ds
ffff:67b7 Current val.: "Current val.:" ds
ffff:680c ASSIGN "ASSIGN" ds
ffff:6816 PARAMS "PARAMS" ds
ffff:6828 PURGE "PURGE" ds
ffff:6831 DO IT "DO IT" ds
ffff:684c Pressing DO IT will erase "Pressing DO IT will erase" ds
ffff:6869 all sounds not used in "all sounds not used in" ds
ffff:6883 any programs in memory. "any programs in memory." ds
ffff:689c 1%sounds not used in any programs. "1%sounds not used in any programs." ds
ffff:68ed (no program) "(no program) " ds
ffff:6912 :Program ":Program" ds
ffff:691e DELETE "DELETE" ds
ffff:692f CLOSE "CLOSE" ds
ffff:6941 Program name: "Program name:" ds
ffff:6ae0 6Create New Program "6Create New Program" ds
ffff:6af7 CANCEL "CANCEL" ds
ffff:80c0 !"$%'()+,-/01345789:;=>?@BCDEFGHJKLMNOPQRTUVWXYZ[\]^_`abcdefghijkklmnopqrstuuvwx " !\"$%'()+,-/01345789:;=>?@BCDEFGHJKLMNOPQRTUVWXYZ[\\]^_`abcdefghijkklmnopqrstuuvwx" ds
ffff:811c HIHT CLSD "HIHT CLSD" ds
ffff:8126 HIHT MEDM "HIHT MEDM" ds
ffff:8130 HIHT OPEN "HIHT OPEN" ds
ffff:8298 6Load a Sound "6Load a Sound" ds
ffff:82a9 CANCEL "CANCEL" ds
ffff:82b3 DO IT "DO IT" ds
ffff:82bc MPC60 pad: "MPC60 pad:" ds
ffff:82c8 ]$File: "]$File:" ds
ffff:82d1 (no assign) "(no assign)" ds
ffff:82fe 6Change Disk "6Change Disk" ds
ffff:830e CANCEL "CANCEL" ds
ffff:8318 DO IT "DO IT" ds
ffff:8321 Insert next disk "Insert next disk" ds
ffff:8333 n and press DO IT. "n and press DO IT." ds
ffff:834f Saving..... " Saving....." ds
ffff:8364 Change disk to continue!! "Change disk to continue!!" ds
ffff:83a3 6Disk is full!! "6Disk is full!!" ds
ffff:83be CANCEL "CANCEL" ds
ffff:83d5 There is not enough space "There is not enough space" ds
ffff:83f2 on this disk!! "on this disk!!" ds
ffff:8402 O!Please insert a different "O!Please insert a different" ds
ffff:841f O*disk, then press SAVE. "O*disk, then press SAVE." ds
ffff:8485 RECEIVE "RECEIVE" ds
ffff:849e TRANSMIT "TRANSMIT" ds
ffff:84d5 REQUES "REQUES" ds
ffff:84e9 CANCEL "CANCEL" ds
ffff:84f1 Receive ready while "Receive ready while" ds
ffff:8505 this page is open. "this page is open." ds
ffff:8518 Request No.: "Request No.:" ds
ffff:852a Exclusive ch: "Exclusive ch:" ds
ffff:8538 (no sound) "(no sound)" ds
ffff:8543 Sending..... "Sending....." ds
ffff:8550 Receiving..... "Receiving....." ds
ffff:8560 MULTI "MULTI " ds
ffff:8567 SINGLE "SINGLE" ds
ffff:8590 :Receive Mode Select ":Receive Mode Select" ds
ffff:85a8 CLOSE "CLOSE" ds
ffff:85b2 Receive Mode: "Receive Mode:" ds
ffff:85f4 :KEEP or RETRY ":KEEP or RETRY" ds
ffff:8607 Name for new sound: "Name for new sound:" ds
ffff:861c +%Assign to note: "+%Assign to note:" ds
ffff:8631 RETRY "RETRY" ds
ffff:867a 6MONO to STEREO "6MONO to STEREO" ds
ffff:868d CANCEL "CANCEL" ds
ffff:8697 DO IT "DO IT" ds
ffff:86a5 L source= "L source=" ds
ffff:86b2 R source: "R source:" ds
ffff:86bd C(New ST name: "C(New ST name:" ds
ffff:8702 6STEREO to MONO "6STEREO to MONO" ds
ffff:8715 CANCEL "CANCEL" ds
ffff:871f DO IT "DO IT" ds
ffff:872d Stereo source= "Stereo source=" ds
ffff:873f New L name: "New L name:" ds
ffff:874c I(New R name: "I(New R name:" ds

This is a call for DEVELOPERS who would like to participate. I don't need "i Am wIlLiNg tO tEsT" thats useless. hmu if you know what you're looking at.
User avatar
By offline Mon Feb 02, 2026 6:13 pm
Had this idea for some time to rewrite vintage mpc os using C and use it in some form of tui using ncurses, and maybe from there port it to arduino or smth.
Anyways - good luck with Your task, hope You will go somewhere with this, and add fat32 fs in the future
User avatar
By richie Mon Feb 02, 2026 10:42 pm
I'm sure your friendly and inviting post will encourage people to want to work with you.