virtua stick postscript layout

The place for all discussion on gaming hardware
Post Reply
fl0w
Posts: 250
Joined: Tue Jun 14, 2005 5:47 pm

virtua stick postscript layout

Post by fl0w »

Hi,

I'm looking for help from someone owning a virtua stick.
I'd like to build a stick which has the same button layout. I've been unable to find top view photographs of the VS (without perspective distorsion).

I've written some lines of postscript:

Code: Select all

%!

/cm {
  72 mul
  2.54 div
} def


/cross {
  gsave

  0 0 1.9 cm 0 360 arc
  stroke

  0 90 360 {
    newpath
    gsave
      0 0 moveto
      rotate
      2 cm 0 rlineto

      0 0 moveto
      45 rotate
      1 cm 0 rlineto

      stroke
    grestore

  } for
  grestore
} def %cross


12 cm 19 cm translate

  % horizontal line
  0 20 cm moveto
  0 -40 cm rlineto
  stroke

  gsave
  cross
  grestore

  gsave
  0 4 cm translate
    cross

    -25 rotate
    0 4 cm translate
    cross
  grestore

  gsave
    25 rotate
    0 -4 cm translate
    cross

    35 rotate
    0 -4.5 cm translate
    cross
  grestore

-4 cm 0 translate

  gsave
  cross
  grestore

  gsave
  0 4 cm translate
    cross

    %-20 rotate
    %0 4 cm translate
    %cross
  grestore

  gsave
    25 rotate
    0 -4 cm translate
    cross

  grestore

showpage
Could anyone print this file and compare the results with a real virtua stick ?

I assumed there are 4 cms between the centers of to adjacent buttons, which AFAIK is the standard for arcade cabinets, but the VS might use smaller buttons, I don't know...

Huge thanks to the volunteer!

BTW it took me a very few hours to learn (the basics of) the PS language and reach this result, better than I've ever done with any other software...
np: Image
User avatar
landshark
Posts: 2156
Joined: Wed Jan 26, 2005 5:27 am
Location: Chicago 'Burbs

Post by landshark »

Totally unrelated, but it's nice to see someone else who knows postscript.
User avatar
oxtsu
Posts: 965
Joined: Tue Jan 25, 2005 10:14 pm
Location: USA - Oklahoma City

Re: virtua stick postscript layout

Post by oxtsu »

fl0w wrote:I assumed there are 4 cms between the centers of to adjacent buttons, which AFAIK is the standard for arcade cabinets, but the VS might use smaller buttons, I don't know...
Sega standard, post-Astro, is 35mm center to center. Most other cabinet manufacturers followed their lead.

I have a template image that might be useful. Feel free to PM if you need it.

BTW, which Virtua Stick are you talking about?
fl0w
Posts: 250
Joined: Tue Jun 14, 2005 5:47 pm

Post by fl0w »

This one http://www.play-asia.com/paOS-13-71-m-1 ... 0-imc.html or this one http://www.play-asia.com/paOS-13-71-2a- ... -2nd.html#

35mm ain't much... I have Happ buttons which must be about 37mm wide :-/

Maybe should I have bought smaller buttons...
np: Image
User avatar
oxtsu
Posts: 965
Joined: Tue Jan 25, 2005 10:14 pm
Location: USA - Oklahoma City

Post by oxtsu »

Ok. Those VS' have an authentic spacing but the layout is high relative to the joystick. I was thinking maybe you were trying for the VS Pro which is almost identical to Sega Astro> layout.

35mm is the horizontal measurement, button center to button center. 38.5mm for the vertical (not button size). Happ buttons are near the same in diameter as Japan made buttons. It shouldn't be a problem using this layout with them.

PM responded w/email, BTW.
fl0w
Posts: 250
Joined: Tue Jun 14, 2005 5:47 pm

Post by fl0w »

OK, I've revamped the layout sent by oxtsu in postscript, here it is:

Code: Select all

%! 

/cm { 
  72 mul 
  2.54 div 
} def 

/mm { 
  72 mul 
  25.4 div 
} def 


/button { 
  gsave 

  0 0 1.5 cm 0 360 arc 
  stroke 

  0 90 360 { 
    newpath 
    gsave 
      0 0 moveto 
      rotate 
      1.5 cm 0 rlineto 

      0 0 moveto 
      45 rotate 
      1 cm 0 rlineto 

      stroke 
    grestore 

  } for 
  grestore 
} def %button 

/smallbutton {
gsave
  24 30 div dup scale
  button
grestore
} def %smallbutton

/button4 {

gsave
  button
  33 mm 14 mm translate
  button
  36 mm -6 mm translate
  button
  34 mm -15 mm translate
  button
grestore
} def %button4

12 cm 4 cm translate 
90 rotate %landscape

  smallbutton %stick

  59.5 mm -13.5 mm translate
  button4
  
  gsave
  7 mm 38.5 mm translate
  button4
  grestore

  %option buttons
  33 36 34 66.5 add add add mm 14 -6 -15 4 add add add mm translate
  smallbutton
  
  0 34 mm translate
  smallbutton

showpage
imho the stick is really close to the buttons, I find this a bit disturbing :-/

Enjoy !
np: Image
japtor
Posts: 367
Joined: Wed Feb 02, 2005 9:16 am

Post by japtor »

not that this helps, but i took a pic of my sega panel and added some measurements a while ago for someone here (the guy that made his own sit down cab). it has distortion, but it should be decent enough to at least get a rough look at relative spaces.

Image

...just realized it doesnt have the extra 2 buttons of the virtua stick, oh well, who needs em!
fl0w
Posts: 250
Joined: Tue Jun 14, 2005 5:47 pm

Post by fl0w »

Here's the final design for my stick:

Code: Select all

%! 

/cm { 
  72 mul 
  2.54 div 
} def 

/mm { 
  72 mul 
  25.4 div 
} def 

/inch {
  72 mul
} def %inch

/button { 
  gsave 

  0 0 1.5 cm 0 360 arc 
  stroke 

  0 90 360 { 
    newpath 
    gsave 
      0 0 moveto 
      rotate 
      1.5 cm 0 rlineto 

      0 0 moveto 
      45 rotate 
      1 cm 0 rlineto 

      stroke 
    grestore 

  } for 
  grestore 
} def %button 

/smallbutton {
gsave
  24 30 div dup scale
  button
grestore
} def %smallbutton

/screw {
  0 0 0.3 cm 0 360 arc 
  stroke 

  0 90 360 { 
    newpath 
    gsave 
      0 0 moveto 
      rotate 
      0.3 cm 0 rlineto 

      %0 0 moveto 
      %45 rotate 
      %1 cm 0 rlineto 

      stroke 
    grestore 

  } for 
} def %screw

%happ competition
/stick {
	gsave
	
	button
	
	1.5 inch 1.3 inch translate
	screw
	
	0 inch -2.6 inch translate
	screw
	
	-3 inch 0 inch translate
	screw
	
	0 inch 2.6 inch translate
	screw
	
	grestore
} def %stick

/button4 {
gsave
  button
  33 mm 14 mm translate
  button
  36 mm -6 mm translate
  button
  34 mm -15 mm translate
  button
grestore
} def %button4

15 cm 7 cm translate 
90 rotate %landscape

stick

%option buttons
gsave
1.5 inch 75 mm translate
button
40 mm 0 translate
button
grestore

%about 12 cm between the stick and the 2nd button
%59.5 mm -13.5 mm translate
59.5 mm 28 mm add -13.5 mm translate
button4

gsave
7 mm 38.5 mm translate
button4
grestore

%%option buttons
%33 36 34 66.5 add add add mm 14 -6 -15 4 add add add mm translate
%smallbutton
%0 34 mm translate
%smallbutton

showpage
and here's hot it looks:
Image

Michaelm, is it OK for you ?
np: Image
User avatar
Michaelm
Posts: 1091
Joined: Mon Sep 12, 2005 1:13 am
Location: Western ignorant scum country

Post by Michaelm »

Yes, it's great. Thanks very much !
fl0w
Posts: 250
Joined: Tue Jun 14, 2005 5:47 pm

Post by fl0w »

if you want the option buttons to be on the right,

Code: Select all

%option buttons 
gsave 
1.5 inch 75 mm translate 
button 
40 mm 0 translate 
button 
grestore
change "75 mm" to a greater value...
np: Image
Post Reply