Main Restorations Software Audio/Jukebox/MP3 Everything Else Buy/Sell/Trade
Project Announcements Monitor/Video GroovyMAME Merit/JVL Touchscreen Meet Up Retail Vendors
Driving & Racing Woodworking Software Support Forums Consoles Project Arcade Reviews
Automated Projects Artwork Frontend Support Forums Pinball Forum Discussion Old Boards
Raspberry Pi & Dev Board controls.dat Linux Miscellaneous Arcade Wiki Discussion Old Archives
Lightguns Arcade1Up Try the site in https mode Site News

Unread posts | New Replies | Recent posts | Rules | Chatroom | Wiki | File Repository | RSS | Submit news

Recent Posts

Pages: 1 2 [3] 4 5 ... 10

Started by psakhis - Last post by phasermaniac

It was a question because I tested the demo in another pc and did not remember.
But just cheked and yes, its 480x270

22   Main Forum / Re: TRON On 412 in 1 - Spinner Connection?on June 16, 2024, 09:48:28 pm

Started by ckalkhof - Last post by PL1

Does anyone have any input if the 412 in 1 can run TRON correctly and if yes, how is the spinner wired?
Drnick posted some useful wiring info here.

You'll need a spinner that outputs the raw quadrature waveform on 2 data lines from the opto circuit, NOT one that connects via USB or PS/2. i.e. a spinner without an optical (mouse) encoder.
- Pretty sure the optos will need to be an "active low" circuit. (some older opto circuits are "active high")



The default is spinner on the X-axis of the trackball inputs for P1.

There are 4 connections per spinner: 5v, ground, and 2 data lines.
  J6 Pin 1 - 5v
  J6 Pin 10 - Ground
  J6 Pin 2 - X+ data line
  J6 Pin 3 - X- data line

If the spinner operates opposite the expected direction, swap the X+ and X- data lines to reverse the axis.

If you have a spinner for P2, it will either go on the X-axis for P2 (J6 Pins 6 and 7) or the Y-axis for P1 (J6 Pins 4 and 5) -- not sure which the 412-in-1 uses.   :dunno




Scott

23   Monitor/Video Forum / Re: RGB modded TV for Arcade Monitoron June 16, 2024, 09:44:39 pm

Started by Rocketeer2001 - Last post by Zebidee

I am concerned your tv might only support ntsc at.60hz. This is fairly common in certain regions like USA.

Even when TVs support a range of resolutions close to both 50 and 60hz (PAL and NTSC), which are common in regions like Australia, they often have poor support for 55hz. Even the expensive brands.


Sent from my iPhone using Tapatalk

Started by Rocketeer2001 - Last post by Rocketeer2001

While I pondered what to do with my D9200, I put my attention towards making the game run on a Compact Flash Card instead of the original Hard Drive which sounds very much like it's on its last legs.

I had purchased an Eagle V2.09 EPROM boot chip from ebay, which is required for the CF card to work. I wasn't sure if the chip was legit or not, so one way to find out is to boot up the system with the hard drive disconnected and see what the boot screen says.

Since my D9200 is on the fritz I thought I should at least be able to hook up an old VGA monitor directly to the graphics card on the game board to see the boot dialog. First monitor I tried would only say "OUT OF RANGE" and displayed nothing else. Second monitor did the same thing. The 3rd monitor also said this, but this one was smart enough to tell me what signal it was receiving. This was great, because now I could test those dip switches too!

I discovered the switches do in fact work! Here's my results from playing around with them:
DIP 1=ON   DIP 2=ON (low res) the monitor says:  15.9kHz / 55Hz
and shows a blank screen

DIP 1=OFF  DIP 2=ON (med res) the monitor says:  25.7kHz / 61Hz
and shows a blank screen
 
DIP 1=OFF  DIP 2=OFF (med res with Low res B adjust?) the monitor says: 640x480 / 60Hz
and totally shows the boot screen! It's like it's in VGA mode with these settings.

Using this I could now see on the monitor the version of the boot chip, so I swapped out the original to the 'new' one and sure enough it shows it as the V2.09! We're off to a good start.

I made a CHD copy of my HDD and cloned it onto an 8GB CF card, then slapped that in an IDE to CF Card adapter, hooked up the floppy drive power connector from the power supply, and set the adapter to work in 3.3V mode, and it was totally happy! Game booted up nice and fast!

However, this is where things got interesting. I couldn't see the game, I could only hear it playing over the speakers. After the boot screen is done and the game loads, the monitor goes blank and I get that same "OUT OF RANGE" message I had before, but this time it says the resolution is 25.7kHz / 61Hz.
I thought I was in VGA mode, so what gives?

Having DIP 1 in the OFF position meant it was in medium res, so this time I tried it in the ON position to enable Low Res. I knew I wouldn't be able to see the boot screen, and likely wouldn't see the game either, but the monitor should at least tell me the resolution it's running.
I fire it up and during the boot process the monitor says it's in 15.9Khz / 55Hz. The switches work! The boot sequence is working! This is it, I'm gonna get the game running in low res mode!
Then after the game loaded and I could hear the music playing, the monitor was black and said "OUT OF RANGE" 25.7kHz / 61Hz. What the?

Now I was back on my theory that the operating system was setting the resolution, so if I tried different versions of the game, maybe I'll find one that's from a kit? I downloaded and tried CHD version V2.02.11 , V2.02.09 , V2.02.08 and they all had the same result. What did change was the volume, oddly enough. It became quiet and would make subtle squealing noises, like it was picking up interference. When using the HDD, it isn't nearly as quiet, but does still have some of that interference. Extra odd was the volume buttons in the coin door not having any effect to change the volume...a different problem for another day.

In summary, the dip switches work to change the resolution, but my prior assumption that the data on the hard drive sets the resolution must be correct. What else could counteract the dip switch setting after the game loads?

If I could get this thing to stay in 15.9Khz, then I could use a standard TV with an RGB mod, and that 55Hz vertical refresh wouldn't matter since RGB doesn't care about that.

25   Monitor/Video Forum / Re: RGB modded TV for Arcade Monitoron June 16, 2024, 08:48:55 pm

Started by Rocketeer2001 - Last post by Rocketeer2001

Gained some intel today.

Since my D9200 is on the fritz I thought I should at least be able to hook up an old VGA monitor directly to the graphics card on the game board to see the boot dialog in VGA resolution. First monitor I tried would only say "OUT OF RANGE" and displayed nothing else. Second monitor did the same thing. The 3rd monitor also said this, but this one was smart enough to tell me what signal it was receiving. This was great, because now I could test those dip switches too!

I discovered the switches do in fact work! Here's my results from playing around with them:

DIP 1=ON DIP 2=ON (low res) the monitor says: 15.9kHz / 55Hz
and shows a blank screen

DIP 1=OFF DIP 2=ON (med res) the monitor says: 25.7kHz / 61Hz
and shows a blank screen

DIP 1=OFF DIP 2=OFF (med res with Low res B adjust?) the monitor says: 640x480 / 60Hz
and totally shows the boot screen! It's like it's in VGA mode with these settings.

However, this is where things got interesting. I couldn't see the game, I could only hear it playing over the speakers. After the boot screen is done and the game loads, the monitor goes blank and I get that same "OUT OF RANGE" message I had before, but this time it says the resolution is 25.7kHz / 61Hz.
I thought I was in VGA mode, so what gives?

Having DIP 1 in the OFF position meant it was in medium res, so this time I tried it in the ON position to enable Low Res. I knew I wouldn't be able to see the boot screen, and likely wouldn't see the game either, but the monitor should still list the resolution it's running.
I fire it up and during the boot process the monitor says it's in 15.9Khz / 55Hz. The switches work! The boot sequence is working! This is it, I'm gonna get the game running in low res mode!
Then after the game loaded and I could hear the music playing, the monitor was black and said "OUT OF RANGE" 25.7kHz / 61Hz. What the?

Now I was back on my theory that the operating system was setting the resolution, so if I tried different versions of the game, maybe I'll find one that's from a kit? I have an IDE adapter and CF card so I downloaded and tried CHD version V2.02.11 , V2.02.09 , V2.02.08 and they all had the same result. What did change was the volume, oddly enough. It became quiet and would make subtle squealing noises, like it was picking up interference. When using the HDD, it isn't nearly as quiet, but does still have some of that interference. Extra odd was the volume buttons in the coin door not having any effect to change the volume...a different problem for another day.

In summary, the dip switches work to change the resolution, but my prior assumption that the data on the hard drive sets/overrides the resolution must be correct. What else could counteract the dip switch setting after the game loads?

If I could get this thing to stay in 15.9Khz, then I could use a standard TV with an RGB mod, and that 55Hz vertical refresh wouldn't matter since RGB doesn't care about that.

26   Main Forum / TRON On 412 in 1 - Spinner Connection?on June 16, 2024, 07:31:23 pm

Started by ckalkhof - Last post by ckalkhof

Hello all! Just joined - first post.

I'm getting all the components put together for my first arcade cabinet build. I will be using the 412 in 1 . One of my favorite games is TRON and I really want to make sure I can get TRON working properly. Does anyone have any input if the 412 in 1 can run TRON correctly and if yes, how is the spinner wired? I've searched the forums a little , but didn't seem to find a really good answer and most of the posts were pretty old. Regarding my background, I'm an Electrical Engineer , so I know just enough to be dangerous :-)

Thanks in advance for any help ! 

Started by meltedcactus86 - Last post by meltedcactus86

Monitor is in and I feel like I'm on the home stretch with the wood working piece. I also ordered two additional monitors of the same spec that way when they inevitably fail over the course of years I can just pop them in and not worry about tweaking the mount or the bezel. I have the control panel art on order and it's time for teardown and paint prep. So happy with how it has turned out so far.

28   Project Announcements / Re: Hoping for a neato idea.on June 16, 2024, 05:07:58 pm

Started by Zakk - Last post by PL1

almost all items will have to have powered lighting of some sort.
Then you'll definitely want the version with an emergency switch.



Before you connect the stepper motor to the driver, you need to adjust Vref so the driver provides enough current to move the motor but not so much that it damages it.
- This "MechDriverAdjustment" sketch will work with either the A4988 or TMC2130 driver. (TMC2130 reads Vref from a different location)

Code: [Select]
// Adjustment sketch for A4988 driver board installed on stepper motor mech control board.

/*
Sketch sets direction and step pins to constant high so you have time to adjust Vref on the driver.

1. Without stepper motor attached, adjust Vref. (Initial safe setting)
  - Read voltage off metal top of potentiometer on driver.

2. Power off.

3. Attach stepper motor with jumpers, multimeter set to amps in series with coil 1.

4. Power on.

5. Adjust Vref to control current output of driver. (Final accurate setting)
*/

// Adapted from https://dronebotworkshop.com/stepper-motor-hall-effect/

// Define connections
#define DIR       8   // Arduino pin that connects to A4988 driver board DIR pin.
#define STEP      9   // Arduino pin that connects to A4988 driver board STEP pin.

void setup() {

  // Setup the stepper controller pins as Outputs and set the pins to HIGH
  pinMode(DIR,OUTPUT);
  pinMode(STEP,OUTPUT);
 
  digitalWrite(DIR,HIGH);
  digitalWrite(STEP,HIGH);
 
}
 
void loop() {

}

Once you have Vref properly adjusted, load this "MechHallSwitchesInterrupt" sketch on an Arduino Pro Micro.
- You'll need to greatly increase the variable "pd" from 180 to 4000(?) on line 22 to slow it way down.

*** Test your setup to ensure that the variables on lines 23 and 26 that control the first direction of travel and the limit switch direction changes are correct. The emergency switch must be in the first direction of travel. ***

Code: [Select]
// Stepper motor mechanism controlled by an Arduino Pro Micro, a stepper motor driver board, two Hall Effect directional limit switches, and an emergency reverse microswitch.

// Stepper motor goes one direction until it triggers one Hall Effect switch and goes the other direction until it triggers the other Hall Effect switch and goes the original direction again.

// The emergency reverse switch is there in case power is shut off when the magnet is too close to the Hall Effect sensor on the first travel direction end.
// When power is reapplied, the voltage on that input starts below logic HIGH so the Arduino doesn't see a falling transition from HIGH to LOW.

// *** Test your setup to ensure that the variables on lines 23 and 26 that control the first direction of travel and the limit switch direction changes are correct. ***

// Adapted from https://dronebotworkshop.com/stepper-motor-hall-effect/


// Define connections
#define SWITCH_A  2            // Arduino pin that connects to the limit switch closest to the stepper motor.
#define SWITCH_B  3            // Arduino pin that connects to the limit switch farthest from the stepper motor.
#define SWITCH_E  7            // Arduino pin that connects to the emergency reverse switch.
#define DIR       8            // Arduino pin that connects to the stepper driver board DIR pin.
#define STEP      9            // Arduino pin that connects to the stepper driver board STEP pin.


// Variables
int pd = 180;                  // Pulse duration period in microseconds.  Minimum value is 180 for TMC2130 in Halfstep, 85 in Qtrstep, 45? in 16 μsteps.
boolean setdir = HIGH;         // Set first travel direction to HIGH or LOW. *** Verify that the first travel direction is correct for your setup. ***
boolean emergswdir = !setdir;  // Set emergency reverse switch direction to opposite of setdir.

boolean nearswdir = HIGH;      // Set near switch new direction to either HIGH or LOW. *** Verify that the direction changes triggered by the limit switches are correct for your setup. ***
boolean farswdir = !nearswdir; // Set far switch new direction to opposite of nearswdir.

// Near limit switch interrupt handler.
void limit_a (){
  setdir = nearswdir; // Change motor travel direction.
    delayMicroseconds(pd);
  Serial.println("Go away from the motor"); // Print direction and carriage return.
} // End near limit switch interrupt handler.


// Far limit switch interrupt handler.
void limit_b (){
  setdir = farswdir; // Change motor travel direction.
  Serial.println("Go toward the motor"); // Print direction and carriage return.
} // End far limit switch interrupt handler.


// Emergency reverse switch interrupt handler.
void limit_e (){
  setdir = emergswdir; // Change motor travel direction.
  Serial.println("Emergency reverse"); // Print direction and carriage return.
} // End emergency reverse switch interrupt handler.


void setup() { // Start program setup.

// Set the stepper controller pins as outputs.
pinMode(DIR,OUTPUT);
pinMode(STEP,OUTPUT);

// Set the switches as inputs.  Use INPUT_PULLUP for an internal pullup resistor.  Use INPUT if your Arduino requires an external pullup resistor.
pinMode(SWITCH_A, INPUT);
pinMode(SWITCH_B, INPUT);
pinMode(SWITCH_E, INPUT_PULLUP);

// Attach interrupt pins to handlers.
attachInterrupt(digitalPinToInterrupt(SWITCH_A), limit_a, FALLING);
attachInterrupt(digitalPinToInterrupt(SWITCH_B), limit_b, FALLING);
attachInterrupt(digitalPinToInterrupt(SWITCH_E), limit_e, FALLING);

} // End program setup.


void loop() { // Main program loop.

    // Turn the motor one step in the current direction.
    digitalWrite(DIR,setdir);
    digitalWrite(STEP,HIGH);
    delayMicroseconds(pd);
    digitalWrite(STEP,LOW);
    delayMicroseconds(pd);
    // Print step, direction (0 or 1), and carriage return.
    Serial.print("Step ");
    Serial.println(setdir);

} // End main program loop.


Scott

Started by geecab - Last post by xfassa

Started by geecab - Last post by xfassa

Geecab,

Sorry for the delayed response.   I am just catching up on all the responses/posts from the last few weeks.   Looks like there may be some fixes for my issue.   I will give it a try tonight.   Before I read any of these posts,  I made/posted a few videos of my cabinet and teleport issue.   I will report back soon after trying done of the recommendations.   Thanks!!!


https://youtu.be/jrE81-RN8zo?si=v9JZ9Me2s6dEE2Iq
Pages: 1 2 [3] 4 5 ... 10