Minggu, 23 Agustus 2009

Snes9X Super Nintendo Emulation

I always used zSnes, until I stumbled over Snes9X. I prefer the windows based technology over the dated dos-like menu that zSnes utilized. Another small factor was the controller settings screen. In Snes9x you can see an on-screen image of a Snes Controller as a guide to assign your keys/buttons.

Little experience is required to use Snes9x Software; create a directory on your computer and fill it with your favorite ROMS. The ROM files are then easily accessible from the File menu.

Like most modern emulators, Snes9x has a 'Save State' option in the File menu. Slam the Esc key to pause your game at a crucial point, and save the state to give yourself another attempt, rather than re-run that entire level twice.

SNES9x improves on the original output of a SNES cartridge / Analogue television setup. The software utilizes both hardware and software rendering. In the options, you can apply Super Eagle screen filtering to update the old pixilated graphics to look slightly smoother, dependant on your Graphics Card additional filters such as bi-liner can be included for improved smoothing.

Legally as stated by most emulation software and websites providing ROMS, you should not have these files on your hard drive if you do not own the original Cartridge. It’s as good as piracy despite the age of the product.

Sabtu, 22 Agustus 2009

VirtualNes 0.97

VirtuaNES is a modern Nintendo emulator of Japanese origin. The English version is now available. Although it is one of the latest release NES emulators about I am still yet to report a bug. In my experience thus far it has been very stable, offering full CPU and sound emulation.

As it is a Windows based emulator, prepare to have a decent version of DirectX installed, but do not fear you will not need a killer PC at this level of emulation.

DOWNLOAD VirtualNES Version 0.97











Jumat, 21 Agustus 2009

MAME

MAME is an emulator application designed to recreate the hardware of arcade game systems in software, with the intent of preserving gaming history and preventing vintage games from being lost or forgotten. The aim of MAME is to be a reference to the inner workings of the emulated arcade machines; the ability to actually play the games is considered as "a nice side effect" [1]. The name is an acronym for Multiple Arcade Machine Emulator.

Kamis, 20 Agustus 2009

KeyWiz Software

SETUP

Instructional *.Pdf as found in Software Package.

KeyWiz Uploader 2 TM
Software Reference
Copyright 2007, IDVT Inc. / www.GroovyGameGear.com
Advance Release v.90

Installation: If you have properly executed the install program, you should have a folder with the "KeyWiz_Uploader2" executable and another under that one called "config". The config folder will contain the profiles used by the software. Do not manually modify any files in these folders. You may create shortcuts to the executable, so long as the starting folder is the one containing the executable.

Startup: If your KeyWiz has a keyboard switch, make sure the switch isn't pointed to your keyboard before running the software. If it is, the software will try to connect 5 times and fail and you'll have to exit and re-start the software. If you do not have a keyboard switch, just make sure the KeyWiz is connected and run the software. If connection fails, you may click on the wizard character and another attempt will be made.

Profile Uploading: The first thing the software will do attempt to verify that the KeyWiz hardware is present. All functions are disabled until the status window says "KeyWiz Ready". If connection fails, you may click on the wizard character and another attempt will be made.

After connection has been made, you can select a profile button. Letting the cursor hover over any of the profile buttons will show you the name of that profile. Click on any of the profile buttons and you will see a RED letter for that profile appear in the window to the right of the action buttons. Click on the radio button under "Configuration to be active after upload" to reflect the state you want the KeyWiz to be left in after the upload. Pressing the "Upload" action button will upload the selected profile to the KeyWiz. If it gets interrupted, it will try again until it finishes and the letter in the window will turn GREEN. It is recommended that you don't disturb the PC while the profile is being uploaded to KeyWiz. When your profile has been uploaded, click the "Exit" button to exit the software.

Diagnostic Feature: From the main screen, you may check for proper operation of your controls by simply activating them. The screen will show (in a rather interesting way) the key that the system is receiving. If more than one input is activated, the screen will simply show "Multiple." This is an indicator of a problem if only one input is being activated. Likewise, if you are attempting to activate an input and the screen shows no inputs activated, this is also a problem indicator. The only current exception to the above is the input assigned to the "TAB" key. This key is ignored in this version of the software.

Profile Editing: Click on any of the profile buttons and you will see a RED letter for that profile appear in the window to the right of the action buttons.

Click on the "Edit" action button and you'll see the Profile Editor. The first thing you'll probably want to do is change the "Profile Name". Click on that window and you'll notice the background will start blinking. Use the on-screen keyboard to enter a profile name up to 15 characters in length. Only alpha-numerics and "Space" will be accepted. The software prevents you from using anything else.

The next step is to click on any of boxes associated with the inputs on theKeyWiz, including their Shazaaam! key counterparts. These are on the upper portion of the screen. After clicking on the input you wish to change, you will see its box begin to blink.You can then click on a key on the on-screen keyboard to assign that key to the input. Repeat this step until all the inputs are set the way you want them.

Then click on the "Save" button to save your changes to that profile. Or, click "Cancel". If you clicked on "Save", a file requestor will pop up and ask what application or "KeyWiz Link" file you would like to associate with the profile you just edited. Navigate to the application or .kwl file you want to associate with that profile and click "OK". If you want to keep the current file, click "Keep Current" and if you don't want an executable assigned to the profile, click the button that states that.

You will then return to the main screen. If you want to use the profile you just modified, you would upload it at this point.

Launching Programs: Click on any of the profile buttons and you will see a RED letter for that profile appear in the window to the right of the action buttons. If there is an executable associated with the profile you just clicked, you can click on the "Launch" action button. This will automatically change the "Configuration After Upload" radio button to the Custom set, upload the profile, exit the KeyWiz software and boot the associated executable.

A note about .lnk files: These are also known as "shortcut" files and some of these can be launched under 98se and some cannot. 2K/XP does not allow these to be launched from the KeyWiz software at all, and therefore the option to select these has been removed when the software is run from these OS's. The only advantage to using .lnk files is the ability to launch a file with command line parameters. This has been remedied in the KeyWiz software through the use of"KeyWiz Link" files. These will be explained in a later section.

Startup Options: The startup options are new for version 2.0 and make it much simpler to automate the hardware configuration. They are as follows:
- The Stealth option will prevent the software from showing the main screen with the wizard animation while uploading the keycodes to the unit. It will, however, show the upload progress in theWindows menu bar (if visible) and will use a standard pop-up to inform you of any problems during the process. The software will allow selection of the Stealth option only when either the "E-EEPROM" or "Default Set" is selected.

- aka the "Virtual EEPROM Feature" - This option allows your KeyWiz to act exactly as though it used onboard EEPROM storage for the codeset when used in conjunction with the KeyWiz Uploader 2 software. That is to say that every time you upload a set of data to the KeyWiz, it is remembered by the system. The next time the system is started, the same data is uploaded so the unit is always configured as you last left it, even between re-boots of the system. This option can be selected at any time.

- The "Default Set" option allows a specific set to be persistent. This will allow the KeyWiz to always be configured to a specific, user defined state between re-boots of the system, regardless of what a user may have uploaded to the unit during the previous session. The Default Set is selected by first selecting a profile and then choosing the "Default Set" Option. The current Default Set is indicated by a letter to the right of the selection indicator. To change the Default Set once one is already selected, you must first click on the Default Set option to disable it, and then make a new selection.

It is important to note that the /L or "Launch" command is assumed for all automatic startup options. If a profile has an executable associated with it, and it is used for automatic operation, it
will be launched after upload. If this is not desirable, create an identical profile, omitting the launch executable, and use it instead.

Command line switches are as follows:
/A - Automode. Fully automatic operation and exiting of program. Without this switch, no
other switches are active.
/P - Profile to use
/L - Launch. This switch will launch the executable associated with the selected profile (if it
exists) immediately after the profile is uploaded.
/S - Stealth. This will activate the Stealth startup option as described earlier.

Examples of use: (NOTE These methods are for demonstration purposes only. These functions are now performed automatically by the “startup options” described earlier)

Create a shortcut to the KeyWiz Software.

Add /A to the end of the command line in the Shortcut's properties.

Apply the change and then drag it into your startup folder.

Create a shortcut to the KeyWiz Software.

Add /A /P to the end of the command line in the Shortcut's
properties.

Apply the change and then drag it into your startup folder.

To make the software automatically upload a selected profile to the KeyWiz and launch into the associated application:

Create a shortcut to theKeyWiz Software.
Add /A /L /P to the end of the command line in the Shortcut's
properties.

Apply the change and then drag it into your startup folder.

Note: Any of the shortcuts created in the above examples can also be left on the desktop, and the
same functions will be performed by simply double-clicking on them.

KeyWiz Link Files: (.kwl)

Sometimes you will want the KeyWiz software to launch applications that require command line
options to work properly. To do this, you will need to useKeyWiz Link files. A KeyWiz Link file is a standard text file which has the complete path and filename of the application you want to launch, as well as any command line parameters, encased in quotes and residing on the first line of the .kwl file.

Example: Run a standard text editor

On the first line, you would type something like "c:\MyFolder\Myfile.exe /myparameters" including the quotes.

Then you would save the file as something like MyApp.kwl

Since the KeyWiz software recognizes .kwl files as applications, you can select these to be launched like any other application.

The information inside the .kwl file is read and executed at launch time.

Differences between 98 and 2K/XP:

The major difference is speed. Due to OS constraints, a different upload method is used when the
software is run on 2K/XP machines than with 98 se machines. Due to the use of updated methods of data transfer, the speed is now very fast on any system. However,the 2K/XP upload times are still about 2 times as long as on a 98se machine. 98 se has limited support for launching "shortcut" files and 2K/XP has none. Limited support means some work and some don't depending on the application the shortcut is pointing to. The best way to use the software is to launch the actual executable files, or use the .kwl files in cases where command line arguments are necessary.


Special thanks to Mike Quinlan for his efforts in helping to accelerate the profile uploads under 2K/XP. And a thank you to all current KeyWiz users who have helped to made the product the success that it has become and who ensure that we can continue to provide improvements like those contained in this software.

TESTING



Main Screen, once KeyWiz has been booted. Note: KeyWiz Ready and Green Bar indicates the PC is communicating with the KeyWiz.



Assigning Keys Example in this case one of my red buttons has been assigned to position A.



Quick directional check, to ensure the North Vertice of the Joystick is communicating as "UP"

Jumat, 23 Januari 2009

Wiring Diagram

I have Daisy Chained all the ground terminals together by soldering links in between each micro switch. For the positive input signals I have used orange wire too the allocated position on the KeyWiz. I have rotated the buttons accordingly as to direct the micro switches in a fashion to keep the wiring neat & tidy. The extra orange wire will be used for a start button If I choose that path in the future.

Kamis, 22 Januari 2009

KeyWiz Mount ASCII K/Board Lead Entry

I Mounted the KeyWiz as shown in image with two of the spacing screws provided. Then I gently filed out a slot to allow the ASCII Keyboard input lead to sit flush with the base. I used a round file and matched the diameter of the cord.

Rabu, 21 Januari 2009

Dummy Assembly



There we have it, pre-assembled & everything seems to fit OK, now I'm going to Google what type glue to secure polycarbonate to MDF.

Selasa, 20 Januari 2009

Outer Face Plate

After Googling several sites, and browsing through many forum posts, I came across a comment how someone was using there router on low speed to make clean cuts through polycarbonate without splintering or cracking the material.









Dimensions as per diagram earlier match the Inner Faceplate; ideally I should have cut and drilled both Face plates @ the same time, but I took the hard path although I still managed to get them to match.

Senin, 19 Januari 2009

Second Coat

Second Coat applied, and I'm happy with the finish, the texture is still quiet rough so I might consider wet rubbing it back slightly.

Minggu, 18 Januari 2009

First Coat

Twas a cold evening ahead, with the help of my little electric IXL Heater I warmed the room temperature to above 10 degrees as per Cabot's advice. First Coat of Varnish great success.


Sabtu, 17 Januari 2009

Surface Preparation

The Hardwood Side Panels had to be sanded smooth. If your material choice is hardwood take caution when sanding flat towards the edge as the corners tend to fray easily.



A very fine grit was used to achieve a smooth surface. Any Dried up PVA solution was removed as too not create discrepancy in the varnish end finish.

Kamis, 15 Januari 2009

Join together!

The Outer Chassis; or side panels have been joined with PVA Glue, then screwed from the inside with a right-angled Phillips head screwdriver ratchet through the pre-drilled holes made earlier.

I have placed cardboard between the wood paneling and clamps to avoid indentation whilst the glue dries.



Minggu, 11 Januari 2009

Inner Chassis

As below a picture says a 1000 words; Ive used 40 x 20mm pine, as it is a soft easy to work with timber; and it will not be in view. I have cut sections to desired lengths that best fit my face plate, around the joystick, button and keywiz components.



I have pre-drilled some holes along the center line of the inner side; forward planning in order to secure the outer side plates (polished hardwood) later on with wood screws.



Aquadere/PVA glue has been used to secure the Pine to the MDF Inner Faceplate; I held the pieces in place to dry with some scissor clamps.

Sabtu, 10 Januari 2009

Joystick Mount

I've read bibles on joystick mounting techniques of recent, and never realised there were so many options, I've chosen this design, courtesy of Slagcoin a highly recommended detailed Joystick building resource I use.

Jumat, 09 Januari 2009

Body Design

Im after a smooth clean finish, my objective is to have no screw heads visible, but structural integrity must not be lost.

To achieve a solid product, without messy joins or visible fixtures, I have chosen to go with the inner & outer chassis design, where the inner chassis will be the mounting platform for all components, and the outer chassis a robust visual shell; aesthetically pleasing.

Inner Chassis dimensions have been determined as follows; Depth derived from the Length of the button component with micro switch attached; allowing 5mm clearance for wire terminals. Length determined based on the popular 6 button schematic layout (shown earlier) & recommended joystick distant. Width via the schematic; and the size of my palm & what I thought felt comfortable.

Kamis, 08 Januari 2009

Internal Face Plate



I have cut out the Inner Face Plate Rectangle (12mm MDF) with a Circular saw; and quick basic mock up jig I have clamped together as shown Above.



The cut is straight, but for that ultra smooth finish I ran over it with a straight edge with a coarse grit sandpaper.



Using my printed template of the Button layout schematic, I have marked the center of the button circle guides with a pen.



I used a IRWIN 28mm hole plain to drill.



After drilling the initial Joystick Center Hole, I clamped the Joystick chassis to the Faceplate, made sure the distance to the edge matched each side, then used the existing holes on Joystick chassis as a guide where to drill for mounts.

Rabu, 07 Januari 2009

Controller Layout

I have Chosen a traditional Sanwa 6 Button Layout; courtesy of Joystick Vault.

Polycarbonate



I chose Polycarbonate over Perspex because it is less likely to split when drilled. Color polycarbonate was used to cover the Joystick mounting screws and so that I could glue it too the inner face plate to avoid Screw fixtures.

Selasa, 06 Januari 2009

KeyWiz Max v1.5



Why I chose the Keywiz Max v1.5
  • 32 direct input lines. No Matrix means No Blocking, No Phantom Keys and no variable delays. All inputs are given equal priority and speed.
  • 12mhz Processor. Fast RISC based microcontroller. The proprietary KeyWiz firmware is coded in 100% pure Machine Language for blinding speed!
  • Custom, State-Based De-bounce Code. Keys are sent the moment the inputs have stabilized. No time delays!
  • The Shazaaam! Key. Like the shift key on a keyboard, the Shazaaam! Key lets 24 of your buttons have an alternate key assignment. The Shazaaam! Key does not take away an input, so all 32 inputs are always available for use. Another unique Shazaaam! feature is that, with an additional low-cost adapter, any switch can be modified to send a code from the alternate set with a single button press! This means you can have up to 24 additional switches for secondary functions, and still have all 32 inputs available for primary controls.
  • Fully Programmable. All 32 normal and 24 Shazaaam! key definitions can be configured through the custom codeset to suit your application.
  • Jumperless Operation. The Custom codeset can be uploaded at any time, with no re-configuration of the hardware required.
  • On-The-Fly Codeset Switching. Just hold down the Shazaaam! Key and move control stick 1 left or right to seamlessly toggle between the default MAME compatible keycode assignments and the custom keycode set.
  • Whopping 72 Character Circular Buffer. Gives KeyWiz the highest reliability and maximum throughput capabilities without "stuck" or "missed" keys. Also allows KeyWiz to pass the grueling "Single Button Test."
  • MAMETM Ready Right-Out-Of-The-Box. By popular demand, the KeyWiz firmware-default codeset has been made compatible with MAME defaults and includes other useful regular and Shazaaam! Key definitions (Custom firmware-default keycode definitions can be supplied for specialized applications. Contact us for more information).
  • Fully Interrupt Driven. The key processing begins the instant activity is sensed on ANY input.
  • Full-featured Custom Codeset Management Software. Completely mouse/trackball driven. One-click selection of any of 15 user definable codesets (32 normal and 24 Shazaaam! codes per). Codeset to be active after programming is user-selectable. Each KeyWiz codeset can have an application associated with it for automatic launching after programming.Command line options for autoprogramming / batch file operation. Screenshots / Download NEW V2.0!

  • Small Footprint. 2.1 x 3.2 inches. Large enough for easy connections, but small enough to mount just about anywhere.
  • Dual-layer PCB. Highest quality for durability and reliable operation.
  • 34 Screw Connection Points Available on the PCB. 32 inputs, 1 ground, 1 Shazaaam! Key, plus a solderable +5v connection.
  • Completely PS/2 Port Powered. No external power source necessary.
  • 6' PS/2 Cable Included
  • Proudly Designed, Developed and Manufactured in the USA. Inexpensive 2-3 day Priority Mail delivery to anywhere in the US.

Senin, 05 Januari 2009

Button Configuration

The industrial grade buttons I purchased have an inside diameter of 28mm and a visible external rim diameter of 33mm. Once again these buttons were quiet cheap off a reputable eBay power sellers and easy enough to attain.

I originally bought a Super Nintendo color range 2 x yellow, 2 x blue, 2 x red, 2 x green & 4 x white.

Minggu, 04 Januari 2009

Retro Joysticks

I Chose Retro style Joysticks, as I think there visually appealing with there chrome finish, and industrial grade metal components as opposed to the solid plastic option. The Resin knobs are interchangeable and simply screw off with a brass internal thread. I ordered mine off a reputable power seller on eBay, you should be able to purchase them for around $20.00 AUD each including postage.

Sabtu, 03 Januari 2009

Tooling Required

  1. 28mm metal or wood hole saw
  2. Phillips head screwdriver
  3. Soldering Iron or Terminal Crimping Pliers
  4. Drill (Bench Drill an advantage!, otherwise I did without)
  5. Paintbrush
  6. Circular Saw, Hand Saw, Jig Saw
  7. G Clamps / Scissor Clamps (These will really make life easier)
  8. Sturdy work platform
  9. 90 degree square / Measuring tape


Jumat, 02 Januari 2009

Bill Of Materials

Basic Bill of Materials Summary

  1. Industrial Grade Joystick
  2. Industrial Grade Buttons x 6
  3. Industrial Grade Micro switches x 6
  4. 2-3Amp Copper Core Wiring
  5. Screws/Insulation/Solder/consumables
  6. KeyWiz Controller board
  7. ASCII Keyboard controller cord
  8. Chassis- Hardwood Timber / MDF / Polycarbonate


Kamis, 01 Januari 2009

Introduction

Many DIY Arcade Controllers have been designed, built and documented online, in an attempt to make mine shine, I have put together a small list of characteristics I would like to uphold during my build.

1. Indestructible (to an extent) - my aim is to create a very robust chassis, one that can take the constant pummeling and torment dealt by frustrated / overexcited gaming addicts.

2. A very simple concept, to reverberate the first point, robustness.

3. Infallible electronic components - wiring, solder or terminals must be of superior workmanship.

3. Built from relatively easy to find materials & components.

4. Offer an in-detail step by step Blog Entry of how I attained materials & components, detailing the build.