--Emulator for the NABU PC-- This is a Windows x64 build of MAME compiled only with the NABU PC core. NABU core coded by brijohn. Compiled with make SOURCES=src/mame/nabu/nabupc.cpp REGENIE=1 -j8 and instructions from https://www.mamedev.org/tools/ How to use: ----------- Download and run a NABU Internet Adapter app from https://gtamp.com/nabu/ Start TCP in your NABU Internet Adapter app Run nabu.cmd to connect to external NABU Internet Adapter boot-3.5-floppy-image.cmd - I don't have an image to include, so ignore this one boot-5.25-floppy-image.cmd - push 2 for floppy disk and it boots CPM boot-built-in-adapter-local.cmd - uses the built-in network adapter to run breakout.npz boot-built-in-adapter-remote.cmd - uses the built-in network adapter to run nabu.ca cycle boot-external-adapter.cmd - tries to connect to an external network adapter on 127.0.0.1:5816 nabu.cmd - tries to connect to an external network adapter on 127.0.0.1:5816 Default controls: ||> = Page Down <||| = Page Up Yes = F1 No = F2 TV = F3 SYM = F4 Official cycle games can usually be restarted by holding SYM (F4) AND the += key If you have a game controller then the dpad and the left thumb stick are set to NABU joystick 1 Joystick 1 is also mapped to the numeric keypad Joystick 2 isn't setup by default Default MAME UI settings: F3 to soft reset Shift F3 to hard reset F10 or hold Insert to speed it up Tab to bring up the MAME UI where you can redefine keys and setup joystick 2. Scroll Lock to toggle the UI keys on/off so they don't interfere with the NABU keys Example command line options: When starting mame you can use the following options to create a rs232 terminal setup -option rs232 -option:rs232:rs232 terminal. Where n is the slot number 1-4 Inside CP/M doing device,conout=rs will redirect your output to the terminal. multibutton joystick -kbd:nabu:port 3btn_joystick where n is 1-4. Network boot: ------------- External adapter app: mame nabupc -window -hcca null_modem -bitb socket.127.0.0.1:5816 Built-in adapter: mame nabupc -window -hcca hcca_remote mame nabupc -window -hcca hcca_local -npz homebrew.npz homebrew.npz is just a .zip file renamed and containing 000001.nabu Floppy boot: ------------ 5.25" floppy: mame nabupc -window -bios ver14 -option1 fdc -flop1 disks\leo1.img -flop2 disks\leo2.img 3.5" floppy: mame nabupc -window -bios ver14 -option1 fdc -option1:fdc:fdc:0 35dd -flop1 boot_80.img Hard drive boot: ---------------- mame nabupc -window -bios ver14 -option1 hdd -hard hdd.chd BIOS choices: -bios reva -bios revb -bios ver14 -bios ver17 -bios ver29 -bios opennabu Show all the slot options: -listslots Changelog: 2025-04-03 - Fixed TM9938 clock speed 2024-12-02 - add OpenNabu IPL to BIOS selection - add keyboard bios selector - add 3btn joystick - Make joystick/paddle controllers slot devices 2024-04-21 - Minor update that adds cycle 4 to the list of cycles for the built-in adapter 2024-04-18 - TMS9918a and 9938 vdp cores in a single build. The default is the tms9918a but you can change it by going into the tab menu and selecting "Slot Devices" or boot directly by adding "-nabu_video tms9938" to the CLI when you start the emulator. 2024-04-08 - Fixed gcc 13 compilation - Allowed setting a server for hcca_remote - Removed DES decryption and added support for cycle 3 2023-11-28 - paddle controls are no longer reversed - keyboard now uses nabukeyboard-90020070-revb-2716.bin (it fixes a bug with the port 2 paddle support) - mouse x axis set to control paddle 1, left mouse button mapped to joy left - enabled confirm quit (confirm_quit = 1 in nabupc.ini) - added more .cmd files to make things easier 2023-05-15 - mame.exe uses the 80 column V9938 patch from https://forums.nabu.ca/viewtopic.php?p=742#p742 - mame-40col.exe for stock NABU TMS9918A 2023-05-13 - Updated key assignment UI for low level keyboard emulation 2023-05-12 - added low level keyboard emulation and paddle support 2023-02-22 - refactor disk formats / support DS disks - removed support for osborne disk type 2022-12-30 - Added rxrdy interrupt to rs232 card 2022-12-29 - Fix opening local 'socket.' files instead of actually opening a TCP socket 2022-12-27 - updated builtin network adapter with remote and local functions -hcca hcca_remote or -hcca hcca_local -npz - changed caps lock to act like caps lock 2022-12-25 - Added RS232 board support - Removed hdd debugging LOG statements 2022-12-20 - HCCA uart transmit buffer starts empty - Network boot works on all BIOS versions (only the Cycles work on all versions, homebrew requires revA) 2022-12-19 - You can boot from unpatched NABU CPM images - Out of band track 0 data is only added to NABU CPM images - You can use both OSBORNE1 and NABU images - NABU uses the Internet Adapter by default, so it should work without any command line options or cfg files (patch by nathanel23) Updates can be found here: https://gtamp.com/nabu