Author Topic: SOLVED: Nevato Theme - Missing cab graphic  (Read 1083 times)

albert_c

  • Jr. Member
  • **
  • Posts: 21
    • View Profile
SOLVED: Nevato Theme - Missing cab graphic
« on: January 22, 2018, 07:22:58 AM »
SOLUTION:  In this case, the problem was solved by updating Windows default WDDM driver for the Radeon HD4000 series video card to Calamity's CRT_Emu drivers as this build is intended for installation into a 15khz CGA resolution arcade cab. Currently running 1600x1200 resolution. But don't expect any further issues as I drop down to 640x480 for arcade cab installation.

Hi All,

I am trying to make the transition from HyperSpin. Participated heavily over there until I got into arcade collecting and now would like to move to Attract Mode. I am having issues with Nevato. I am missing the cab, background (fanart), wheel. Attached is what things look like for MAME. My configurations are below.

Help! Thanks!

MAME config
Code: [Select]
# Generated by Attract-Mode v2.3.0
#
executable           C:\MAME\mame.exe
args                 [name]
rompath              C:\MAME\roms
romext               .zip;.7z;<DIR>
system               Arcade
info_source          thegamesdb.net
import_extras        C:\HyperSpin\Databases\MAME\MAME.xml
artwork    fanart          C:\AttractMode\scraper\mame\fanart
artwork    flyer           C:\AttractMode\scraper\mame\flyer
artwork    marquee         C:\AttractMode\scraper\mame\marquee
artwork    snap            C:\AttractMode\scraper\mame\snap
artwork    wheel           C:\AttractMode\scraper\mame\wheel
« Last Edit: January 26, 2018, 06:29:00 PM by albert_c »
Took me 3 years to just to get HyperSpin to work. Then spent the past 4 years suffering through all the bugs that will never be fixed. After the few days it took to figure out Attract Mode, I have deleted my HyperSpin directory. Bye HyperSpin, bye!

albert_c

  • Jr. Member
  • **
  • Posts: 21
    • View Profile
Re: Nevato Theme - Missing cab, fanart, wheel art
« Reply #1 on: January 22, 2018, 07:25:00 AM »
Here is the Layout config (Part1):



layout.nut
Code: [Select]
// -------------------------------------------------------
//
// "NEVATO" theme for Attract-Mode Front-End
// version 1.0
//
// graphic design and coding = www.ClanLogoDesign.com
// cabinet design and photo = www.tenDESIGN.pro
//
// read more at www.ONYXarcade.com/nevato
//
// spinwheel code forked from omegaman's "ROBOSPIN" theme
//
// -------------------------------------------------------
//
// this theme is free for private use only
// and can be distributed only with Attract Mode front-end
// for other uses please contact ONYXarcade.com for permission
//
// -------------------------------------------------------
//
// special thanks to omegaman for ROBOSPIN theme
// without it - we wouldn't be able to learn how
// to code AM themes
//
// -------------------------------------------------------


class UserConfig {

</ label="NEVATO theme", help=" ", options=" ", order=1 /> divider1="";
</ label="- - -", help=" ", options=" ", order=1 /> divider1="";
//-----------------------------------------------------------------
</ label="mute videos snaps sound", help="yes = sound disabled, no = sound enabled", options="yes,no", order=2 /> mute_videoSnaps="no";

</ label="- - -", help=" ", options=" ", order=3 /> divider2="";
//-----------------------------------------------------------------
</ label="cab screen", help="video = video snap, screenshot = game screenshot", options="video, screenshot", order=4 /> cabScreenType="video";
</ label="scanlines on screen", help="show scanlines effect on cab screen.", options="light,medium,dark,off", order=5 /> enable_scanlines="light";

</ label="- - -", help=" ", options=" ", order=6 /> divider3="";
//-----------------------------------------------------------------
</ label="marquee artwork", help="marquee type, replace ''my-own-marquee.jpg'' file with your own", options="marquee,emulator-name,my-own", order=7 /> marquee_type="marquee";
 
</ label="- - -", help=" ", options=" ", order=9 /> divider4="";
//-----------------------------------------------------------------
</ label="LCD right side", help="what's on right side of LCD", options="filter, emulator, display-name, rom-filename, off,", order=10 /> lcdRight="filter";

</ label="- - -", help=" ", options=" ", order=11 /> divider5="";
//-----------------------------------------------------------------
</ label="spinwheel artwork", help="marquee or wheel", options="marquee,wheel", order=12 /> spinwheelArt="wheel";
</ label="speenwheel transition time", help="Time in milliseconds for wheel spin.", order=13 /> transition_ms="80";
   
</ label="- - -", help=" ", options=" ", order=14 /> divider6="";
//-----------------------------------------------------------------
</ label="background art", help="Display the flyer/fanart/snap(screenshot)/video in background.", options="flyer,fanart,snap,video,none", order=15 /> enable_bg_art="fanart";
</ label="background ststic image", help="background image if there is no background art", options="blue,black,none", order=16 /> enable_static_bkg="black";
</ label="background mask", help="make background medium or dark", options="dark,medium", order=17 /> enable_mask="dark";

</ label="- - -", help=" ", options=" ", order=18 /> divider7="";
//-----------------------------------------------------------------



local my_config = fe.get_config();


fe.load_module( "fade" );

local blip = fe.layout.height;
local flx = fe.layout.width;
local fly = fe.layout.height;
local flw = fe.layout.width;
local flh = fe.layout.height;


//fe.layout.width = 640;
//fe.layout.height = 480;






//coordinates table for different screen aspects -------------------------- START



local settings = {
   "default": {
      aspectDepend = {
        snap_skewX = 42.0,
        snap_skewY = -8.0,

        snap_pinchX = 0,
        snap_pinchY = 29.0,
        snap_rotation = 0.9,

        marquee_skewX = 17,
        marquee_skewY = 0,
        marquee_pinchX = -2,
        marquee_pinchY = 7,
        marquee_rotation = 6.2,

        wheelNumElements = 10 }
   },
   "16x10": {
      aspectDepend = {
        res_x = 1920,
        res_y = 1200,

        maskFactor = 1.9,

        snap_skewX = 62.5,
        snap_skewY = -12.9,
        snap_pinchX = 0,
        snap_pinchY = 40.0,
        snap_rotation = 1.0,

        wheelNumElements = 10 }
   },
    "16x9": {
      aspectDepend = {
        res_x = 2133,
        res_y = 1200,

        maskFactor = 1.9,

        snap_skewX = 62.5,
        snap_skewY = -12.9,
        snap_pinchX = 0,
        snap_pinchY = 40.0,
        snap_rotation = 1.0,

        wheelNumElements = 8 }
   },
   "4x3": {
      aspectDepend = {
        res_x = 1600,
        res_y = 1200,

        maskFactor = 1.6,

        snap_skewX = 62.5,
        snap_skewY = -12.9,
        snap_pinchX = 0,
        snap_pinchY = 40.0,
        snap_rotation = 1.0,

        wheelNumElements = 10 }
   }
   "5x4": {
      aspectDepend = {
        res_x = 1500,
        res_y = 1200,

        maskFactor = 1.6,

        snap_skewX = 62.5,
        snap_skewY = -12.9,
        snap_pinchX = 0,
        snap_pinchY = 40.0,
        snap_rotation = 1.0,

        wheelNumElements = 10 }
   }
}




local aspect = fe.layout.width / fe.layout.height.tofloat();
print (aspect);
local aspect_name = "";
switch( aspect.tostring() )
{
    case "1.77865":  //for 1366x768 screen
    case "1.77778":  //for any other 16x9 resolution
        aspect_name = "16x9";
        break;
    case "1.6":
        aspect_name = "16x10";
        break;
    case "1.33333":
        aspect_name = "4x3";
        break;
    case "1.25":
        aspect_name = "5x4";
        break;
    case "0.75":
        aspect_name = "3x4";
        break;
}


function Setting( id, name )
{
    if ( aspect_name in settings && id in settings[aspect_name] && name in settings[aspect_name][id] )
  {
    ::print("\tusing settings[" + aspect_name + "][" + id + "][" + name + "] : " + settings[aspect_name][id][name] + "\n" );
    return settings[aspect_name][id][name];
  } else if ( aspect_name in settings == false )
  {
    ::print("\tsettings[" + aspect_name + "] does not exist\n");
  } else if ( name in settings[aspect_name][id] == false )
  {
    ::print("\tsettings[" + aspect_name + "][" + id + "][" + name + "] does not exist\n");
  }
  ::print("\t\tusing default value: " + settings["default"][id][name] + "\n" );
  return settings["default"][id][name];
}




fe.layout.width = Setting("aspectDepend", "res_x");
fe.layout.height = Setting("aspectDepend", "res_y");

local blip = fe.layout.height;

local flx = fe.layout.width;
local fly = fe.layout.height;
local flw = fe.layout.width;
local flh = fe.layout.height;

local mask_factor = Setting("aspectDepend", "maskFactor");


//coordinates table for different screen aspects -------------------------- END









// mute audio variable - definable via user config ------------------------ START

if ( my_config["mute_videoSnaps"] == "yes")
{
::videoSound <- Vid.NoAudio;
}
if ( my_config["mute_videoSnaps"] == "no")
{
::videoSound <- Vid.Default;
}

// mute audio variable - definable via user config ------------------------ END







Took me 3 years to just to get HyperSpin to work. Then spent the past 4 years suffering through all the bugs that will never be fixed. After the few days it took to figure out Attract Mode, I have deleted my HyperSpin directory. Bye HyperSpin, bye!

albert_c

  • Jr. Member
  • **
  • Posts: 21
    • View Profile
Re: Nevato Theme - Missing cab, fanart, wheel art
« Reply #2 on: January 22, 2018, 07:25:45 AM »
Here is the Layout (Part 2)
Code: [Select]
// default background image (if background art is not enabled) ------------- START

if ( my_config["enable_static_bkg"] == "blue")
{
 local bg = fe.add_image( "background_blue.png", 0, 0, flw, flh );
}
if ( my_config["enable_static_bkg"] == "black")
{
 local bg = fe.add_image( "background_black.png", 0, 0, flw, flh );
}
if ( my_config["enable_static_bkg"] == "none")
{
 local bg = fe.add_image( "", 0, 0, flw, flh );
}

// default background image (if background art is not enabled) ------------- END







// background art --------------------------------------------------------- START

if ( my_config["enable_bg_art"] == "flyer")
{
 local bgart = fe.add_artwork( "flyer", flw*0.2, flw*0, flw*0.6, 0);
 bgart.preserve_aspect_ratio = true;
 local mask = fe.add_image( "mask_edges.png", 0 , 0, mask_factor*flh, flh );  //gradient to mask left and right edge of the flyer 1.6 for 4:3 and 16:10  1.9 for 16:9
 mask.preserve_aspect_ratio = false;
}



if ( my_config["enable_bg_art"] == "fanart")
{
 local bgart = FadeArt( "fanart", 0, 0, 0, flh);
 bgart.preserve_aspect_ratio = true;
 local mask = fe.add_image( "mask_edges.png", 0 , 0, mask_factor*flh, flh );  //gradient to mask left and right edge of the flyer
 mask.preserve_aspect_ratio = false;
 //mask.alpha = 255;
}



if ( my_config["enable_bg_art"] == "snap")
{
 local bgart = fe.add_artwork( "snap", flx-flh*1.34, 0, flh*1.34, 0);
 bgart.preserve_aspect_ratio = true;
 bgart.video_flags=Vid.ImagesOnly;
}



if ( my_config["enable_bg_art"] == "video")
{
 local bgart = fe.add_artwork( "snap", flx-flh*1.34, 0, flh*1.34, 0);
 bgart.preserve_aspect_ratio = true;
 bgart.video_flags = videoSound;
}


// background art --------------------------------------------------------- END






//masking background (adding scanlines and vignette) -------------------- START

if ( my_config["enable_mask"] == "none" )
{
local masking = fe.add_image( "", 0, 0, flw, 0 );
}


if ( my_config["enable_mask"] == "medium" )
{
local masking = fe.add_image( "background_mask.png", 0, 0, flx, fly );
masking.preserve_aspect_ratio = false;
masking.alpha = 150;           // here you can change mask opacity light=100, medium=150, dark (default)=255
local maskingMedium = fe.add_image( "background_mask_medium.png", 0, 0, flx, fly );
maskingMedium.preserve_aspect_ratio = false;
}


if ( my_config["enable_mask"] == "dark" )
{
local masking = fe.add_image( "background_mask.png", 0, 0, flx,fly);   //for 4:3 fix 1.6*fly
masking.preserve_aspect_ratio = false;
masking.alpha = 255;           // here you can change mask opacity light=100, medium=150, dark (default)=255
}

//masking background (adding scanlines and vignette) -------------------- END







//static tv effect on cab screen snap change (of if no snap at all) ------------- START

local tvStatic = fe.add_image( "static.jpg", blip*0.0984, blip*0.24, blip*0.405, blip*0.3536);
tvStatic.skew_x = Setting("aspectDepend", "snap_skewX");
tvStatic.skew_y = Setting("aspectDepend", "snap_skewY");
tvStatic.pinch_x = Setting("aspectDepend", "snap_pinchX");
tvStatic.pinch_y = Setting("aspectDepend", "snap_pinchY");
tvStatic.rotation = Setting("aspectDepend", "snap_rotation");





//snap (video or screenshot) on cab screen ------------- START

local cabScreen = fe.add_artwork ("snap", blip*0.0984, blip*0.24, blip*0.405, blip*0.3536);
cabScreen.skew_x = Setting("aspectDepend", "snap_skewX");
cabScreen.skew_y = Setting("aspectDepend", "snap_skewY");
cabScreen.pinch_x = Setting("aspectDepend", "snap_pinchX");
cabScreen.pinch_y = Setting("aspectDepend", "snap_pinchY");
cabScreen.rotation = Setting("aspectDepend", "snap_rotation");
cabScreen.trigger = Transition.EndNavigation;
cabScreen.preserve_aspect_ratio = false;

cabScreen.video_flags = videoSound;

if ( my_config["cabScreenType"] == "screenshot" )
{
cabScreen.video_flags=Vid.ImagesOnly;
}





//scanlines over cab screen --------------------------- START

if ( my_config["enable_scanlines"] == "light" )
{
local scanlines = fe.add_image( "scanlines.png", blip*0.0984, blip*0.24, blip*0.405, blip*0.3536 );
scanlines.skew_x = Setting("aspectDepend", "snap_skewX");
scanlines.skew_y = Setting("aspectDepend", "snap_skewY");
scanlines.pinch_x = Setting("aspectDepend", "snap_pinchX");
scanlines.pinch_y = Setting("aspectDepend", "snap_pinchY");
scanlines.rotation = Setting("aspectDepend", "snap_rotation");
scanlines.preserve_aspect_ratio = false;
scanlines.alpha = 50;
}

if ( my_config["enable_scanlines"] == "medium" )
{
local scanlines = fe.add_image( "scanlines.png", blip*0.0984, blip*0.24, blip*0.405, blip*0.3536 );
scanlines.skew_x = Setting("aspectDepend", "snap_skewX");
scanlines.skew_y = Setting("aspectDepend", "snap_skewY");
scanlines.pinch_x = Setting("aspectDepend", "snap_pinchX");
scanlines.pinch_y = Setting("aspectDepend", "snap_pinchY");
scanlines.rotation = Setting("aspectDepend", "snap_rotation");
scanlines.preserve_aspect_ratio = false;
scanlines.alpha = 150;
}

if ( my_config["enable_scanlines"] == "dark" )
{
local scanlines = fe.add_image( "scanlines.png", blip*0.0984, blip*0.24, blip*0.405, blip*0.3536 );
scanlines.skew_x = Setting("aspectDepend", "snap_skewX");
scanlines.skew_y = Setting("aspectDepend", "snap_skewY");
scanlines.pinch_x = Setting("aspectDepend", "snap_pinchX");
scanlines.pinch_y = Setting("aspectDepend", "snap_pinchY");
scanlines.rotation = Setting("aspectDepend", "snap_rotation");
scanlines.preserve_aspect_ratio = false;
scanlines.alpha = 200;
}

//scanlines over cab screen --------------------------- END






//marquee  ------------------------------------------ START

if ( my_config["marquee_type"] == "marquee" )
{
local marqueeBkg = fe.add_image("black.png", blip*0.1032, blip*0.0763, blip*0.3984, blip*0.1349 );
marqueeBkg.skew_x = Setting("aspectDepend", "marquee_skewX");
marqueeBkg.skew_y = Setting("aspectDepend", "marquee_skewY");
marqueeBkg.pinch_x = Setting("aspectDepend", "marquee_pinchX");
marqueeBkg.pinch_y = Setting("aspectDepend", "marquee_pinchY");
marqueeBkg.rotation = Setting("aspectDepend", "marquee_rotation");
marqueeBkg.trigger = Transition.EndNavigation;
marqueeBkg.preserve_aspect_ratio = false;

local marquee = FadeArt("marquee", blip*0.1032, blip*0.0763, blip*0.3984, blip*0.1349 );
marquee.skew_x = Setting("aspectDepend", "marquee_skewX");
marquee.skew_y = Setting("aspectDepend", "marquee_skewY");
marquee.pinch_x = Setting("aspectDepend", "marquee_pinchX");
marquee.pinch_y = Setting("aspectDepend", "marquee_pinchY");
marquee.rotation = Setting("aspectDepend", "marquee_rotation");
marquee.trigger = Transition.EndNavigation;
marquee.preserve_aspect_ratio = false;
}

//marquee  ------------------------------------------ END



//marquee (with emulator name)   ---------------------- START

if ( my_config["marquee_type"] == "emulator-name" )

{
local emuMarquee = fe.add_image("[Emulator]" + "-marquee.jpg", blip*0.1032, blip*0.0763, blip*0.3984, blip*0.1349 );
emuMarquee.skew_x = Setting("aspectDepend", "marquee_skewX");
emuMarquee.skew_y = Setting("aspectDepend", "marquee_skewY");
emuMarquee.pinch_x = Setting("aspectDepend", "marquee_pinchX");
emuMarquee.pinch_y = Setting("aspectDepend", "marquee_pinchY");
emuMarquee.rotation = Setting("aspectDepend", "marquee_rotation");
emuMarquee.trigger = Transition.EndNavigation;
emuMarquee.preserve_aspect_ratio = false;
}



//marquee (my own image) ----------------------------- START

if ( my_config["marquee_type"] == "my-own" )
{
local myOwnMarquee = fe.add_image("my-own-marquee.jpg", blip*0.1032, blip*0.0763, blip*0.3984, blip*0.1349 );
myOwnMarquee.skew_x = Setting("aspectDepend", "marquee_skewX");
myOwnMarquee.skew_y = Setting("aspectDepend", "marquee_skewY");
myOwnMarquee.pinch_x = Setting("aspectDepend", "marquee_pinchX");
myOwnMarquee.pinch_y = Setting("aspectDepend", "marquee_pinchY");
myOwnMarquee.rotation = Setting("aspectDepend", "marquee_rotation");
myOwnMarquee.trigger = Transition.EndNavigation;
myOwnMarquee.preserve_aspect_ratio = false;
}






//cabinet image -------------------------------------- START
local cab = fe.add_image( "cab_body.png", 0, 0, blip*0.992, blip*1.008);
cab.preserve_aspect_ratio = true;







//LCD display text under cab screen ------------------------------------------------ START

local lcdLeftText = fe.add_text( "PLAYED: " + "[PlayedCount]", blip*0.1536, blip*0.6208, blip*0.48, blip*0.04 );  // here you can change what is displayed on left side
lcdLeftText.set_rgb( 59, 45, 3 );
lcdLeftText.align = Align.Left; 
lcdLeftText.rotation = -6.5;
lcdLeftText.font="digital-7 (italic)";  // free font (for personal use) - can be downloaded here: http://www.dafont.com/digital-7.font



if ( my_config["lcdRight"] == "filter" )
{
local lcdRightText = fe.add_text( "[FilterName]", blip*0.1584, blip*0.6208, blip*0.4, blip*0.04 );
lcdRightText.set_rgb( 59, 45, 3 );
lcdRightText.align = Align.Right;
lcdRightText.rotation = -6.6;
lcdRightText.font="digital-7 (italic)";  // free font (for personal use) - can be downloaded here: http://www.dafont.com/digital-7.font
}


if ( my_config["lcdRight"] == "rom-filename" )
{
local lcdRightText = fe.add_text( "[Name]", blip*0.1584, blip*0.6208, blip*0.4, blip*0.04 );
lcdRightText.set_rgb( 59, 45, 3 );
lcdRightText.align = Align.Right;
lcdRightText.rotation = -6.6;
lcdRightText.font="digital-7 (italic)";  // free font (for personal use) - can be downloaded here: http://www.dafont.com/digital-7.font
}


if ( my_config["lcdRight"] == "display-name" )
{
local lcdRightText = fe.add_text( "[DisplayName]", blip*0.1584, blip*0.6208, blip*0.4, blip*0.04 );
lcdRightText.set_rgb( 59, 45, 3 );
lcdRightText.align = Align.Right;
lcdRightText.rotation = -6.6;
lcdRightText.font="digital-7 (italic)";  // free font (for personal use) - can be downloaded here: http://www.dafont.com/digital-7.font
}


if ( my_config["lcdRight"] == "emulator" )
{
local lcdRightText = fe.add_text( "[Emulator]", blip*0.1584, blip*0.6208, blip*0.4, blip*0.04 );
lcdRightText.set_rgb( 59, 45, 3 );
lcdRightText.align = Align.Right;
lcdRightText.rotation = -6.6;
lcdRightText.font="digital-7 (italic)";  // free font (for personal use) - can be downloaded here: http://www.dafont.com/digital-7.font
}


if ( my_config["lcdRight"] == "off" )
{
local lcdRightText = fe.add_text( my_config["lcdRightText"], blip*0.1584, blip*0.6208, blip*0.4, blip*0.04 );
lcdRightText.set_rgb( 59, 45, 3 );
lcdRightText.align = Align.Right;
lcdRightText.rotation = -6.6;
lcdRightText.font="digital-7 (italic)";  // free font (for personal use) - can be downloaded here: http://www.dafont.com/digital-7.font
}

//LCD display text --------------------------------------------------------- END

 







// SpinWheel -------------------------- START - this part is slightly modified code from omegaman's ROBOSPIN theme

 
fe.load_module( "conveyor" );
local wheel_x = [ flx*0.87, flx*0.79, flx*0.765, flx*0.745, flx*0.73, flx*0.72, flx*0.67, flx*0.72, flx*0.73, flx*0.745, flx*0.765, flx*0.79, ];
local wheel_y = [ -fly*0.22, -fly*0.105, fly*0.0, fly*0.105, fly*0.215, fly*0.325, fly*0.436, fly*0.61, fly*0.72 fly*0.83, fly*0.935, fly*0.99, ];
local wheel_w = [ flw*0.18, flw*0.18, flw*0.18, flw*0.18, flw*0.18, flw*0.18, flw*0.28, flw*0.18, flw*0.18, flw*0.18, flw*0.18, flw*0.18, ];
local wheel_a = [  80,  80,  80,  80,  80,  80, 255,  80,  80,  80,  80,  80, ];
local wheel_h = [  flw*0.07,  flw*0.07,  flw*0.07,  flw*0.08,  flw*0.08,  flw*0.08, flw*0.11,  flw*0.07,  flw*0.07,  flw*0.07,  flw*0.07,  flw*0.07, ];
//local wheel_r = [  31,  26,  21,  16,  11,   6,   0, -11, -16, -21, -26, -31, ];
local wheel_r = [  30,  25,  20,  15,  10,   5,   0, -10, -15, -20, -25, -30, ];
local num_arts = Setting("aspectDepend", "wheelNumElements");  // number of elements in wheel - depending on screen aspect ratio




class WheelEntry extends ConveyorSlot
{
constructor()
{
base.constructor( ::fe.add_artwork( my_config["spinwheelArt"] ) );
    preserve_aspect_ratio = true;
    video_flags=Vid.ImagesOnly; // added just in case if you have video marquees - like I do :)
}

function on_progress( progress, var )
{
local p = progress / 0.1;
local slot = p.tointeger();
p -= slot;

slot++;

if ( slot < 0 ) slot=0;
if ( slot >=10 ) slot=10;

m_obj.x = wheel_x[slot] + p * ( wheel_x[slot+1] - wheel_x[slot] );
m_obj.y = wheel_y[slot] + p * ( wheel_y[slot+1] - wheel_y[slot] );
m_obj.width = wheel_w[slot] + p * ( wheel_w[slot+1] - wheel_w[slot] );
m_obj.height = wheel_h[slot] + p * ( wheel_h[slot+1] - wheel_h[slot] );
m_obj.rotation = wheel_r[slot] + p * ( wheel_r[slot+1] - wheel_r[slot] );
m_obj.alpha = wheel_a[slot] + p * ( wheel_a[slot+1] - wheel_a[slot] );
}
};

local wheel_entries = [];
for ( local i=0; i<num_arts/2; i++ )
wheel_entries.push( WheelEntry() );

local remaining = num_arts - wheel_entries.len();

// we do it this way so that the last wheelentry created is the middle one showing the current
// selection (putting it at the top of the draw order)

for ( local i=0; i<remaining; i++ )
wheel_entries.insert( num_arts/2, WheelEntry() );

local conveyor = Conveyor();
conveyor.set_slots( wheel_entries );
conveyor.transition_ms = 50;
try { conveyor.transition_ms = my_config["transition_ms"].tointeger(); } catch ( e ) { }
Took me 3 years to just to get HyperSpin to work. Then spent the past 4 years suffering through all the bugs that will never be fixed. After the few days it took to figure out Attract Mode, I have deleted my HyperSpin directory. Bye HyperSpin, bye!

albert_c

  • Jr. Member
  • **
  • Posts: 21
    • View Profile
Re: Nevato Theme - Missing cab, fanart, wheel art
« Reply #3 on: January 26, 2018, 10:13:39 AM »
Bueller...............?  Bueller...............?  Bueller...............? 
Took me 3 years to just to get HyperSpin to work. Then spent the past 4 years suffering through all the bugs that will never be fixed. After the few days it took to figure out Attract Mode, I have deleted my HyperSpin directory. Bye HyperSpin, bye!

keilmillerjr

  • Sr. Member
  • ****
  • Posts: 455
    • View Profile
Re: Nevato Theme - Missing cab, fanart, wheel art
« Reply #4 on: January 26, 2018, 11:25:22 AM »
Bueller...............?  Bueller...............?  Bueller...............?

What does the console say? Start there. It will tell you missing artwork or errors.

verion

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 751
    • View Profile
    • new projects
Re: Nevato Theme - Missing cab, fanart, wheel art
« Reply #5 on: January 26, 2018, 12:25:11 PM »
Start with NEVATO thread.
http://forum.attractmode.org/index.php?topic=370.0

I know it little intimidating (22 pages long) - but IIRC this problem was resolved somewhere in this thread.

albert_c

  • Jr. Member
  • **
  • Posts: 21
    • View Profile
Re: Nevato Theme - Missing cab, fanart, wheel art
« Reply #6 on: January 26, 2018, 03:22:48 PM »
Bueller...............?  Bueller...............?  Bueller...............?

What does the console say? Start there. It will tell you missing artwork or errors.

It says this:  Failed to create texture, its internal size is too high (2048x2048, maximum is 1024x1024). Even after installing the low res graphics, I get the same missing cab.

Start with NEVATO thread.
http://forum.attractmode.org/index.php?topic=370.0

I know it little intimidating (22 pages long) - but IIRC this problem was resolved somewhere in this thread.

Interestingly enough, I get the same problem with the cab being missing in the robospin theme (ver4). Here is a snapshot. Should I open the cab png in GIMP and resize it? Currently it is at 1200x1200. I am on page 18 right now.
Took me 3 years to just to get HyperSpin to work. Then spent the past 4 years suffering through all the bugs that will never be fixed. After the few days it took to figure out Attract Mode, I have deleted my HyperSpin directory. Bye HyperSpin, bye!

albert_c

  • Jr. Member
  • **
  • Posts: 21
    • View Profile
Re: Nevato Theme - Missing cab, fanart, wheel art
« Reply #7 on: January 26, 2018, 04:48:09 PM »
The console says some message about the version of OpenGL possibly not working right. The video drivers I have are default from the Windows installation. The intention of this build is to go into a 15khz cab using Calamity's CRT_Emu drivers The video card is a Radeon HD4350. So I am installing CRT_Emu drivers now and will report back if it fixes anything. Also, I tried the same thing in the previous version of AM, same issue.
Took me 3 years to just to get HyperSpin to work. Then spent the past 4 years suffering through all the bugs that will never be fixed. After the few days it took to figure out Attract Mode, I have deleted my HyperSpin directory. Bye HyperSpin, bye!

albert_c

  • Jr. Member
  • **
  • Posts: 21
    • View Profile
Re: Nevato Theme - Missing cab, fanart, wheel art
« Reply #8 on: January 26, 2018, 06:35:58 PM »
The console says some message about the version of OpenGL possibly not working right. The video drivers I have are default from the Windows installation. The intention of this build is to go into a 15khz cab using Calamity's CRT_Emu drivers The video card is a Radeon HD4350. So I am installing CRT_Emu drivers now and will report back if it fixes anything. Also, I tried the same thing in the previous version of AM, same issue.

We can close this one up boys! Updating the drivers added in the necessary OpenGL "stuff" and fixed the problem. Lesson learned. Seems Windows default WDDM drivers that come with the OS install don't have the necessary files to run AM properly. I now have nevato and robospin running beautifully (see screenshots).

Many thanks. I have been a long time HyperSpin users (even made a tutorial on Youtube a few years back) and have built many cabs as a hobby and for some extra scratch here and there. I have since moved onto collecting arcades but still build the occasional MAME CRT-based cab here and there. I can tell you all this, I am dumping HyperSpin for good. That FE gives me headaches even though I am a master at it. Attract Mode from now on and hours of life are gained back in the process. Updated the original post with the solution. I'll also see if I can participate here more often to pay it forward. Thanks again!
« Last Edit: January 27, 2018, 10:32:47 AM by albert_c »
Took me 3 years to just to get HyperSpin to work. Then spent the past 4 years suffering through all the bugs that will never be fixed. After the few days it took to figure out Attract Mode, I have deleted my HyperSpin directory. Bye HyperSpin, bye!

verion

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 751
    • View Profile
    • new projects
Re: SOLVED: Nevato Theme - Missing cab graphic
« Reply #9 on: January 28, 2018, 06:50:11 AM »
Yes - you can resize all assets (artwork) - the theme is coded to scale it to fit the screen size. Not only the cab image but all other assets like the gradient overlays. Just to be on the safe side - scale all of the assets using the same factor. You can search the NEVATO thread. I've uploaded scaled down version of the theme somewhere IIRC.

albert_c

  • Jr. Member
  • **
  • Posts: 21
    • View Profile
Re: SOLVED: Nevato Theme - Missing cab graphic
« Reply #10 on: January 29, 2018, 10:45:09 PM »
Yes - you can resize all assets (artwork) - the theme is coded to scale it to fit the screen size. Not only the cab image but all other assets like the gradient overlays. Just to be on the safe side - scale all of the assets using the same factor. You can search the NEVATO thread. I've uploaded scaled down version of the theme somewhere IIRC.

I found the scaled down theme art for NEVATO in the theme thread, but it didn't make a difference for the original the problem. The problem required the driver to be installed for solution. In the long run, the scaled down version works for my needs as I shall be running at 640x480 for installation in a 15khz CGA cab. So thank you for that. I am working on a new build now. I'll try to see if the default theme art works for this same purpose and let you know. The reason why I ran into this problem is that typically my process for MAME cab building, Calamity's drivers is installed last. It is the last thing I do before before I stuff it into a cab. Reason being is I don't want to have to trouble shoot emulator setup at 640x480. But I'll have to switch up that process now.

Great work, BTW!! I have been using HyperSpin's wheel for years. Your theme and Attract Mode beats the pants off that. If I had a critique, I would say, you need to add in a wheel pointer; lots of drunk people play on my cab builds :).
Took me 3 years to just to get HyperSpin to work. Then spent the past 4 years suffering through all the bugs that will never be fixed. After the few days it took to figure out Attract Mode, I have deleted my HyperSpin directory. Bye HyperSpin, bye!

verion

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 751
    • View Profile
    • new projects
Re: SOLVED: Nevato Theme - Missing cab graphic
« Reply #11 on: January 29, 2018, 11:21:30 PM »
If I had a critique, I would say, you need to add in a wheel pointer; lots of drunk people play on my cab builds

The wheel code is ported from ROBOSPIN theme - so there was a pointer originally, but I've removed it 'cos I didn't like it.
But you can simply copy-paste coresponding code from Robospin (and copy pointer image to Nevato folder) and it should work.

albert_c

  • Jr. Member
  • **
  • Posts: 21
    • View Profile
Re: SOLVED: Nevato Theme - Missing cab graphic
« Reply #12 on: January 30, 2018, 01:17:19 AM »
If I had a critique, I would say, you need to add in a wheel pointer; lots of drunk people play on my cab builds

The wheel code is ported from ROBOSPIN theme - so there was a pointer originally, but I've removed it 'cos I didn't like it.
But you can simply copy-paste coresponding code from Robospin (and copy pointer image to Nevato folder) and it should work.

Great! I'll check it out tomorrow and see if I can play around with some custom pointer graphics.

FYI, I started a new build. Same deal, installed a Radeon HD4000 series video card needed for use with Calamity's hacked CRT_Emu drivers. With default Windows WDDM drivers, the cab graphic is missing. So yeah, users definitely need to update their drivers for the cab graphic to show. Probably will only ever be a problem for cab builds where older hardware is sacrificed to power MAME.
Took me 3 years to just to get HyperSpin to work. Then spent the past 4 years suffering through all the bugs that will never be fixed. After the few days it took to figure out Attract Mode, I have deleted my HyperSpin directory. Bye HyperSpin, bye!