Jump to content

Main Menu Themes

3 files

  1. Under messui, go to the Options, Directories... tab, under Show directories; ROMs, add by clicking on Insert the folder containing your games and bios, the detection is carried out Put the studio2.zip and the studio2.xml from the ROMs subfolder studio2 in the hash folder Once in game activate scroll lock (Fn and K) then press the TAB key, go to Input (this machine) and reassign the keys necessary for the smooth running of the game
     
    :

    MEmu := "MESS"
    MEmuV := "0.195"
    MURL := ["http://www.mess.org/"]
    MAuthor := ["djvj","faahrev","brolly","Tomkun"]
    MVersion := ""
    MCRC := ""
    iCRC := ""
    MID := ""
    MSystem := ["RCA Studio II"]
    RCA Studio II - studio2
    StartModule()
    BezelGUI()
    FadeInStart()
    ; This object controls how the module reacts to different systems. MESS can play a lot of systems, but needs to know what system you want to run, so this module has to adapt.
    mTypeVar=
    RCA Studio II|studio2
    )
    mType := Object()
    Loop, Parse, mTypeVar, `n, `r
    {
        obj := {}
        Loop, Parse, A_LoopField, |
            If A_Index = 1
                obj.System := A_LoopField
            Else    ; 2
                obj.MessID := A_LoopField
        mType.Insert(obj["System"], obj)
    }
    Log("Module - Finished building the " . MEmu . " object",4)
    ; For easier use throughout the module
    messSystem := mType[systemName].System
    messID := mType[systemName].MessID
    If !messSystem
        ScriptError("Your systemName is: " . systemName . "`nIt is not one of the known supported systems for this " . MEmu . " module.")
    settingsFile := modulePath . "\" . moduleName . ".ini"
    Fullscreen := IniReadCheck(settingsFile, "Settings", "Fullscreen","true",,1)        ; Set fullscreen mode
    messBiosPath := IniReadCheck(settingsFile, "Settings", "MESS_BIOS_Path", emuPath . "\roms",,1)
    Videomode := IniReadCheck(settingsFile, "Settings", "Videomode","d3d",,1)    ; Choices are gdi,ddraw,d3d. If left blank, mess uses d3d by default
    hlsl := IniReadCheck(settingsFile, "Settings|" . messSystem . "|" . romName, "HLSL","false",,1)
    glsl := IniReadCheck(settingsFile, "Settings|" . messSystem . "|" . romName, "GLSL","false",,1)
    bezelMode := IniReadCheck(settingsFile, "Settings", "BezelMode","normal",,1)    ; "layout" or "normal"
    UseSoftwareList := IniReadCheck(settingsFile, messSystem, "UseSoftwareList","false",,1)
    sysStaticParams := IniReadCheck(settingsFile, messSystem, "StaticParameters", A_Space,,1)
    sysParams := IniReadCheck(settingsFile, messSystem, "Parameters", A_Space,,1)
    romParams := IniReadCheck(settingsFile, romName, "Parameters", sysParams,,1)
    Artwork_Crop := IniReadCheck(settingsFile, messSystem . "|" . romName, "Artwork_Crop", "true",,1)
    Use_Bezels := IniReadCheck(settingsFile, messSystem . "|" . romName, "Use_Bezels", "true",,1)
    Use_Overlays := IniReadCheck(settingsFile, messSystem . "|" . romName, "Use_Overlays", "true",,1)
    Use_Backdrops := IniReadCheck(settingsFile, messSystem . "|" . romName, "Use_Backdrops", "true",,1)
    messBiosPath := GetFullName(messBiosPath)
    ;Read settings from system name ini file
    sysSettingsFile := modulePath . "\" . messSystem . ".ini"
    IfExist, %sysSettingsFile% 
    {
        romParams := IniReadCheck(sysSettingsFile, romName, "Parameters", romParams,,1)
        hlsl := IniReadCheck(sysSettingsFile, romName, "HLSL",hlsl,,1)
        glsl := IniReadCheck(sysSettingsFile, romName, "GLSL",glsl,,1)
        Artwork_Crop := IniReadCheck(sysSettingsFile, romName, "Artwork_Crop", Artwork_Crop,,1)
        Use_Bezels := IniReadCheck(sysSettingsFile, romName, "Use_Bezels", Use_Bezels,,1)
        Use_Overlays := IniReadCheck(sysSettingsFile, romName, "Use_Overlays", Use_Overlays,,1)
        Use_Backdrops := IniReadCheck(sysSettingsFile, romName, "Use_Backdrops", Use_Backdrops,,1)
    }
    artworkCrop := If (Artwork_Crop = "true") ? " -artwork_crop" : " -noartwork_crop"
    useBezels := If (Use_Bezels = "true") ? " -use_bezels" : " -nouse_bezels"
    useOverlays := If (Use_Overlays = "true") ? " -use_overlays" : " -nouse_overlays"
    useBackdrops := If (Use_Backdrops = "true") ? " -use_backdrops" : " -nouse_backdrops"
    ; Get MESS version from executable, this is needed since some CLI switches are not available in older MESS versions
    exeAtrib := FileGetVersionInfo_AW( EmuPath . "\" . executable, "FileVersion|ProductVersion", "|"  )
    Loop, Parse, exeAtrib, |%A_Tab%, %A_Space%
     A_Index & 1 ? ( _ := A_LoopField ) : ( %_% := A_LoopField )
    If (ProductVersion)
        StringRight, MESSVersion, ProductVersion, StrLen(ProductVersion) - 2
    Log("Detected MESS Product Version from '" . EmuPath . "\" . executable . "' is " . MESSVersion)
    hideEmuObj := Object(dialogOpen . " ahk_class ConsoleWindowClass",0,"ahk_class MAME",1)    ;Hide_Emu will hide these windows. 0 = will never unhide, 1 = will unhide later
    If bezelEnabled = true
    BezelStart()
    7z(romPath, romName, romExtension, 7zExtractPath)
    winstate := If (Fullscreen = "true") ? "Hide UseErrorLevel" : "UseErrorLevel"
    fullscreen := If (Fullscreen = "true") ? " -nowindow" : " -window"
    If (Videomode = "opengl")
    {
        hlsl := " -nohlsl_enable"
        If (MESSVersion > 159)
            glsl := If glsl = "true" ? " -gl_glsl" : (If glsl = "ini" ? "" : " -nogl_glsl")
        Else
            glsl := ""
    }
    Else
    {
        hlsl := If hlsl = "true" ? " -hlsl_enable" : (If hlsl = "ini" ? "" : " -nohlsl_enable")
        If (MESSVersion > 159)
            glsl := If Videomode = "ini" ? "" : " -nogl_glsl"
        Else
            glsl := ""
            
        If (Videomode = "ini")
            Videomode := ""
    }
    videomode := If (Videomode != "" )? " -video " . videomode : ""
    param1 := " -cart """ . romPath . "\" . romName . romExtension . """"    ; default param1 used for launching most systems.
    If romExtension = .txt    ; This can be applied to all systems
        param1:=
    param1 := " -cdrm """ . romPath . "\" . romName . romExtension . """"
        }Else If messID = studio2 ; RCA Studio II
        {    If romExtension != .asm
                param1 := " -cart1 """ . romPath . "\" . romName . romExtension . """"
    sysStaticParams := If sysStaticParams != ""  ? A_Space . sysStaticParams : "" ; tacking on a space in case user forgot to add one
    romParams := If romParams != ""  ? A_Space . romParams : "" ; tacking on a space in case user forgot to add one
    StringReplace,messRomPaths,romPathFromIni,|,`"`;`",1    ; replace all instances of | to ; in the Rom_Path from RL's Emulators.ini so mess knows where to find your roms
    messRomPaths := " -rompath """ .  messRomPaths . (If messBiosPath ? ";" . messBiosPath : "") . """"    ; if a bios path was supplied, add it into the rom paths sent to mess
    If InStr(romParams,"-rompath")
        ScriptError("""-rompath"" is defined as a parameter for " . romName . ". The MESS module fills this automatically so please remove this from Params in the module's settings.")
    If InStr(sysStaticParams,"-rompath")
        ScriptError("""-rompath"" is defined as a parameter for " . messSystem . ". The MESS module fills this automatically so please remove this from Params in the module's settings.")
    ; use a custom cfg file if it exists and append it to param1
    IfExist, % emuPath . "\cfg\" . messID . "\" . dbName
        param1 := " -cfg_directory " . """" . emuPath . "\cfg\" . messID . "\" . dbName . """" . param1
    HideEmuStart()
    errLvl := Run(executable . A_Space . messID . param1 . param2 . param3 . param4 . param5 . param6 . messRomPaths . sysStaticParams . romParams . fullscreen . hlsl . glsl . videomode . artworkCrop . useBezels . useOverlays . useBackdrops . " -skip_gameinfo", emuPath, winstate)
    If errLvl {
        If (errLvl = 1)
            Error = Failed Validity
        Else If(errLvl = 2)
            Error = Missing Files
        Else If(errLvl = 3)
            Error = Fatal Error
        Else If(errLvl = 4)
            Error = Device Error
        Else If(errLvl = 5)
            Error = Game Does Not Exist
        Else If(errLvl = 6)
            Error = Invalid Config
        Else If errLvl in 7,8,9
            Error = Identification Error
        Else
            Error = MESS Error
        Log("MESS Error - " . Error,3)
    }
    WinWait("ahk_class MAME")
    WinWaitActive("ahk_class MAME")
    BezelDraw()
    If romName = ICBMromName    ; for Bally Astrocade only
    {    Sleep, 2000 ; increase if you don't see the title screen
        SetKeyDelay(50)
        Send, {F3 down}{F3 up}    ; sends a reset to MESS, needed for ICBM to boot
    }
    HideEmuEnd()
    FadeInExit()
    Process("WaitClose", executable)
    7zCleanUp()
    BezelExit()
    FadeOutExit()
    ExitModule()

    ; This will simply create a new blank ini if one does not exist
    CheckFileMESS(file){
        IfNotExist, %file%
            FileAppend,, %file%
        Return file
    }
    ListXMLInfo(rom){ ; returns MAME/MESS info about parent rom, orientation angle, resolution
        Global emuFullPath, emuPath
        ListXMLtable := []
        Log("Module - RunWait`, " .  comspec . " /c " . """" . emuFullPath . """" . " -listxml " . rom . " > tempBezel.txt`, " . emuPath . "`, Hide")
        RunWait, % comspec . " /c " . """" . emuFullPath . """" . " -listxml " . rom . " > tempBezel.txt", %emuPath%, Hide
        Fileread, ListxmlContents, %emuPath%\tempBezel.txt
        RegExMatch(ListxmlContents, "s)<game.*name=" . """" . rom . """" . ".*" . "cloneof=" . """" . "[^""""]*", parent)
        RegExMatch(parent,"cloneof=" . """" . ".*", parent)
        RegExMatch(parent,"""" . ".*", parent)
        StringTrimLeft, parent, parent, 1
        RegExMatch(ListxmlContents, "s)<display.*rotate=" . """" . "[0-9]+" . """", angle)
        RegExMatch(angle,"[0-9]+", angle, "-6")
        RegExMatch(ListxmlContents, "s)<display.*width=" . """" . "[0-9]+" . """", width)
        RegExMatch(width,"[0-9]+", width, "-6")
        RegExMatch(ListxmlContents, "s)<display.*height=" . """" . "[0-9]+" . """", Height)
        RegExMatch(Height,"[0-9]+", Height, "-6")
        ListXMLtable[1] := parent
        ListXMLtable[2] := angle
        ListXMLtable[3] := height
        ListXMLtable[4] := width
        If (ListXMLtable[3] > ListXMLtable[4])
            ListXMLtable[2] := true
        FileDelete, %emuPath%\tempBezel.txt
        Return ListXMLtable    
    }
    BezelLabel:
        WinSet, Transparent, 0, ahk_class ConsoleWindowClass
    Return
    CloseProcess:
        FadeOutStart()
        WinClose("ahk_class MAME")
    Return








































    Letters.zip
    82
  2. Buenas, aquí os traigo el sistema en el que he estado trabajando, está basado en el sistema de Floatingyeti de la Software List con el core MAME en retroarch. ya hay disponibles diferentes main menu y defaults, pero he querido hacer un main inspirado en la caja original de la máquina y completar el sistema con lo disponible o con la creación de las diferentes medias.
     



    80
  3. RCA Studio II - Main Menu Theme (16:9) - Knewlife
    93
  • emumovies partner.png


×
×
  • Create New...