Jump to content
Due to a large amount of spamers, accounts will now have to be approved by the Admins so please be patient. ×
IGNORED

ZSystem - Dedicated Linux Mame Cabinet - Index/Introduction.


Recommended Posts

INDEX for the ZSystem

 

Welcome to ZSystem

The Dedicated Linux Mame Build

Based on 64bit Debian 10 (Buster)

ZSystem is a Linux based system designed from the ground up to run Mame with the best possible performance available on today's hardware. It is primarily intended for fixed resolution configuration with the advanced capability of refresh rate matching with synchronization and is ideal for OLED, LCD or PC CRT monitors.

 

ZSystem being dedicated means it does not carry the overhead of typical graphical desktop computers such as:

Graphical logins and the software loaded with Desktop systems - Volume widgets, Clocks, Task bars, Window/File managers, Auto updates, Bluetooth stacks etc.

Other benefits from a dedicated Linux Mame cabinet include a very fast boot up time and rock solid emulation/operation.

Typically from the bios logo screen at power on to having your menu in front of you and selecting a game to play is about 10~20 seconds.

 

ZSystem also takes advantage of Mame's waitvsync option, ensuring tear free video display on all systems with compliant video cards.

Depending on your hardware's capabilities, Mame may be run in Syncrefresh mode (SRM) or Throttle mode (Fallback).

Syncrefresh mode provides a much better gaming experience and is the preferred mode for custom Mame cabinets.

Throttle mode is Mame's default configuration option and can be compared to most Xin1 type boards.

 

For Arcade CRT monitors, Please see the Groovy Arcade Live CD project which has OS patches for 15khz displays.

 

Typical Advance Menu & Games with Artwork.

TypicalAdvMenu.thumb.jpg.b8d628e96dfb7e4d8bcfe9e408fdfbff.jpg Scramble.jpg.8a95bfc851b5bf3cd7de771bb7a426c4.jpg SpeedRumbler.jpg.454827b89f14b84c64bde7b1b1d13c54.jpg

(Window bars are not normally displayed)

 

Syncrefresh mode (SRM)

For systems with compatible video cards (Typically AMD, Intel & nVidia) Syncrefresh operation is possible with the addition of refresh rate matching.

When the system video refresh is matched to the original game refresh, Mame can synchronize it's operation to the matched system video refresh for near perfect emulation.

This will result in smooth gameplay & scrolling with no jitter/stutter in the video output. For best results audio should be synchronized as well.

If you want the games to run like they originally did, Then you will want to use Syncrefresh mode (SRM).

Syncrefresh mode requires more CPU power than Throttle mode. Check operation with Show FPS (F12).

 

Throttle mode (Fallback)

Throttle mode, Mame's default and simplest configuration to operate also produces the most shabby emulation.

Games will jitter/stutter every few seconds due to frame rate mismatch, Especially noticeable on fast moving/scrolling games.

Useful when hardware is not powerful enough (CPU), Hardware is not capable (fixed refresh) or as a fallback mode for when a games refresh rate falls outside of the minimum or maximum ranges of the display capabilities.

 

Information

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

[CRT/LCD] - CRT/LCD Support and notes.

[To Do List] - Things that need attention or need to be implemented.

[Video Bugs] - Reproducible X video system bugs (And workarounds).

[Helpful tools] - A brief mention of common Linux utils you should familiarize yourself with.

[Gotcha's] - Things to be aware of that may trip you up or impede your progress.

[Mame Roms] - Working with Rom, Bios and Device lists. Identify required rom dependencies.

 

 

Core Installation

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

[Base Install] - This will guide your through the Base install of the Arch system - Text only.

[Packages] - Required support packages are installed for running & compiling programs.

[Swap File] - The swap file can be created if required for compiling due to low memory.

[Admin User] - Prepare Admin access for "arcade" user and practice good security habits.

[Add User] - The steps to create an "arcade" user and make the user autologin.

 

 

Optional Components

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

[Boot Speed] - Optional step to remove boot menu delays & silence boot messages.

[Auto Mount] - Optional step to setup automatic mount for user access to USB storage.

 

 

Initial User Setup & Preliminary Testing

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

[Skel User] - Default ~/.bash_profile and ~/.xinitrc files are created.

[Start twm] - ~/.xinitrc is modified to set graphic mode & load a terminal.

[Manual Sound] - From GFX terminal, Manually set sound device volumes etc.

[Initial Testing] - From GFX terminal, Load sdlmame & play a game.

[Video Orientation] - Rotate/Flip the screen to make your setup easier.

 

 

Main Program Installation

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

[AdvMenu] - Download, Compile and install AdvanceMenu (Version 3.1 or greater).

[SDLMame] - Download, Compile and install SDLMame (Version 0.178 or greater).

 

 

Main Program Configuration

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

[Mame Config] - Standard & SDL Mame configuration. Sample Syncrefresh & Throttle options. Pending update to sdlMame V0.178

[Hi_Score Config] - Correctly setting up Hi_Score patch and options (Info on video cfg bug). Pending update to sdlMame V0.178

[AdvMenu Config] - Standard Advance Menu configuration. Sample config included. Pending update to AdvMenu V2.9

 

 

ZSystem Script Suite

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

ZSystem Script Suite is a complete set of scripts for running ZSystem - Taking away the hassle of writing your own scripts.

You should be able to download/extract the Script Suite Archive and run the "Quick_Run.sh" script to evaluate it's operation.

ZSystem Script Suite Sub Sections

[User Init] - ZSystem user initialization with custom ~/.bash_profile and ~/.xinitrc scripts.

[Sound Init] - Sound initialization (Balance & Volume) with the InitPulse.sh script.

[Mouse Hide] - Options to hide the mouse cursor from view (ie. Bootup & Start game).

 

Advanced Setup "Variable Refresh Rate (VRR)"

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

[VRR Info] - General info about Variable Refresh Rate mode. Pending transition to ZSystem Script Suite

[VRR System Config] - A "DEFAULT" video mode is required to run VRR. Pending transition to ZSystem Script Suite

[VRR Wrapper Script] - Script to execute Variable Refresh Rate & Mame. Pending transition to ZSystem Script Suite

[VRR AudioSync Patch] - Synchronize audio patch and Mame.ini settings. Pending transition to ZSystem Script Suite

[VRR Benchmark Results] - Real world VRR benchmark test results. Pending transition to ZSystem Script Suite

 

 

Advanced Setup "Privileged access to program hardware"

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

[uDev Rules] Grant (IPac) hardware access with vendor & product ID.

[Sudo Access] Grant (LPT) hardware access to programs via sudo control.

[Group Access] Grant (TTY) hardware access to devices such as serial ports.

[sticky Access] Grant unsecure hardware access to programs via sticky control.

 

 

Advanced Setup "Programming I-Pac boards"

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

[IPac Programming Tool] - Choose the tool for your model of IPac.

 

[uMTool] - Download, Compile and install UMTool for programming I-Pac boards.

[uMTool Use] - Using UMTool/Modifying key assignments and programming your I-Pac board.

[uMTool Boot Init] - Optional script to program your I-Pac on system boot up.

 

[I-PacUtil] - Download, Compile and install I-PacUtil for programming I-Pac boards.

[I-PacUtil Use] - Using IPac-Util/Modifying key assignments and programming your I-Pac board.

[I-PacUtil Boot Init] - Optional script to program your I-Pac on system boot up.

 

 

Advanced Setup "Operator control panel"

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

[Operator Control Panel] - Setting up OCP Test credit/Service 1-4, Mame config & Game config.

 

 

Advanced Setup "Simple Coin Counter"

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

[Coin Counter Info] - Using a coin counter to log credits passed through coin mechanism.

[Coin Counter Device] - Building the circuit to drive our 12v coin counter mechanism.

 

 

Advanced Setup "C&C PCB" (Credit Lock & Credit Counter PCB)

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

[C&C PCB Info] - Explaining credit lockout & credit couter operation.

[C&C PCB Controller Options] - Interfaces to communicate with C&C PCB.

[C&C PCB USB Controller Project] - Modify a USB Relay into USB Digital Controller.

[C&C PCB USB Controller Software] - Download open source software for Windows or Linux.

[C&C PCB Testing] - Wire up and bench test our C&C PCB to find any faults.

[C&C PCB Wrapper Scripts] - Scripts to execute credit lockout between Menu & Game.

 

 

Advanced Setup "Mame LED/Device output"

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

[ZHooker Information] - Information on Mame OSD Output.

 

 

Power and Safety

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

[Mains Wiring] - Consumer grade mains wiring - Adding secure earth grounding point.

 

 

Other useful links

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

[Resource for ZSystem files]

[All the important Mame Updates/Links]

[Daphne configuration and single credit play]

[How to build your custom rom sets with clrmamepro]

 

[PCB Production Tools] - Tools to create circuits with the toner transfer method.

[PCB Toner Transfer PID Controller] - Build a temperature controlled laminator.

[uSB Microscope Mini Drill Press] - Build a sub millimeter accurate press drill.

[uSB2Controller] - 5 Volt signal controller.

 

Links with possibly useful information

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

[Mame with pre-defined refresh rates]

 

 

All components (Text/Code) of ZSystem fall under the Creative Commons BY-SA licence.

Open source code for open source projects

Copyright (CC) BY-SA [OzFalcon of bden.org]

Edited by ozfalcon
Link to comment
Share on other sites

  • 3 weeks later...
This is really great. Looking forward to the mame compiling etc

I have been busy transfering my domain to a new domain provider, The new provider has the ability to redirect subdomains.

 

I hope to make it simpler - Less typing ;)

Edited by ozfalcon
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...