[UPADTE] - Media parse

This commit is contained in:
Guillaume Astier Ruiz 2022-12-05 12:59:54 +01:00
parent cd6d1bad76
commit 945d0ecab0
5 changed files with 116 additions and 84 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 221 KiB

After

Width:  |  Height:  |  Size: 647 KiB

View File

@ -1,10 +1,8 @@
ROM_NAME: 1942b name 1942b
description 1942 set 3
Name: 1942 (First Version) (clone of: 1942 ) year 1984
Year: 1984 manufacturer Capcom
Manufacturer: Capcom video screen raster orientation vertical x 224 y 256
Category: Shooter_/_Flying_Vertical sound channels 1
Status: good input players 2 control joy8way buttons 2
Emulation: good genre: Shooter / Flying Vertical
Color: good
Sound:

1
media/nodoc.txt Normal file
View File

@ -0,0 +1 @@
NO DATA

BIN
media/nosnap.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 134 KiB

179
start.py
View File

@ -3,9 +3,13 @@
global cpt global cpt
global Origcpt global Origcpt
global EmuMod global EmuMod
global RomCpt
global MaxRomCpt
global CurentEmu
FirstRun = 1 FirstRun = 1
cpt = 0 cpt = 0
RomCpt =0
import configparser import configparser
from collections import Counter from collections import Counter
from tkinter import * from tkinter import *
@ -32,38 +36,74 @@ import os
def ViewRom(EmuName): def ViewRom(EmuName,RomCpt):
print("Canevas ROM MEDIA : " + str(Cnv.find_all()))
for IdCanvas in Cnv.find_all():
if IdCanvas != 1:
Cnv.delete(IdCanvas)
BackgroundRom(str(CurentEmu))
print("DEBUG MAX ROM: " + str(MaxRomCpt))
WheelEmu="./data/roms/"+str(EmuName)+"/media/wheel/" + str(EmuName) + "_wheel.png" WheelEmu="./data/roms/"+str(EmuName)+"/media/wheel/" + str(EmuName) + "_wheel.png"
IsWheelEmu = IsImgExist(WheelEmu,"wheelemu") IsWheelEmu = IsFileExist(WheelEmu,"wheelemu")
OpenWheelEmu=Image.open(IsWheelEmu) OpenWheelEmu=Image.open(IsWheelEmu)
ResizeOpenWheelEmu=OpenWheelEmu.resize((RomUpSquareSizeX,RomUpSquareSizeY)) ResizeOpenWheelEmu=OpenWheelEmu.resize((RomUpSquareSizeX,RomUpSquareSizeY))
TkOpenWheelEmu=ImageTk.PhotoImage(ResizeOpenWheelEmu) TkOpenWheelEmu=ImageTk.PhotoImage(ResizeOpenWheelEmu)
LabelResizeOpenWheelEmu=Label(arkadeus, image=TkOpenWheelEmu) LabelResizeOpenWheelEmu=Label(arkadeus, image=TkOpenWheelEmu)
LabelResizeOpenWheelEmu.TkOpenWheelEmu = TkOpenWheelEmu LabelResizeOpenWheelEmu.TkOpenWheelEmu = TkOpenWheelEmu
print("AHHHHHHHHHHHHHHHHHH : " + str(IsWheelEmu))
Wheel="./data/roms/"+str(EmuName)+"/media/wheel/" + str(RomRes[RomCpt]) + ".png"
print("Wheel : "+ Wheel)
IsWheel = IsFileExist(Wheel,"wheelemu")
OpenWheel=Image.open(IsWheel)
ResizeOpenWheel=OpenWheel.resize((RomMiddleSquareSizeX,RomMiddleSquareSizeY))
TkOpenWheel=ImageTk.PhotoImage(ResizeOpenWheel)
LabelResizeOpenWheel=Label(arkadeus, image=TkOpenWheel)
LabelResizeOpenWheel.TkOpenWheel = TkOpenWheel
Wheel="./data/roms/"+str(EmuName)+"/media/wheel/" + str(RomRes[RomCpt]) + ".png"
IsWheel = IsFileExist(Wheel,"wheelemu")
OpenWheel=Image.open(IsWheel)
ResizeOpenWheel=OpenWheel.resize((RomBottomSquareSizeX,RomBottomSquareSizeY))
TkOpenWheel=ImageTk.PhotoImage(ResizeOpenWheel)
LabelResizeOpenWheel=Label(arkadeus, image=TkOpenWheel)
LabelResizeOpenWheel.TkOpenWheel = TkOpenWheel
Text="./data/roms/"+str(EmuName)+"/media/doc/" + str(RomRes[RomCpt]) + ".txt"
IsText = IsFileExist(Text,"doc")
with open(IsText, 'rb') as RomFile:
DataRomFile = RomFile.read().rstrip()
SnapEmu="./data/roms/"+str(EmuName)+"/media/snap/" + str(RomRes[RomCpt]) + ".png"
IsSnapEmu = IsFileExist(SnapEmu,"snap")
OpenSnapEmu=Image.open(IsSnapEmu)
ResizeOpenSnapEmu=OpenSnapEmu.resize((RomLeftSquareSizeX,RomLeftSquareSizeY))
TkOpenSnapEmu=ImageTk.PhotoImage(ResizeOpenSnapEmu)
LabelResizeOpenSnapEmu=Label(arkadeus, image=TkOpenSnapEmu)
LabelResizeOpenSnapEmu.TkOpenSnapEmu = TkOpenSnapEmu
BoxText=Cnv.create_text(RomBottomSquareX,RomBottomSquareY,width= RomBottomSquareSizeX, text=DataRomFile,fill="white",font="Times 20 bold")
BoxRect=Cnv.create_rectangle(RomBottomSquareTxtUpX,RomBottomSquareTxtUpY,RomBottomSquareTxtBottomX,RomBottomSquareTxtBottomY ,fill='black')
Cnv.tag_lower(BoxRect,BoxText)
Cnv.create_image(RomUpSquareX, RomUpSquareY, image=TkOpenWheelEmu)
Cnv.create_image(RomMiddleSquareX, RomMiddleSquareY, image=TkOpenWheel)
#Cnv.create_image(RomBottomSquareX, RomBottomSquareY, image=TkOpenWheel)
Cnv.create_image(RomLeftSquareX, RomLeftSquareY, image=TkOpenSnapEmu)
Cnv.pack(fill = "both", expand = True) Cnv.pack(fill = "both", expand = True)
# for IdCanvas in Cnv.find_all():
# if IdCanvas != 1:
# Cnv.delete(IdCanvas)
Cnv.create_image(RomUpSquareX, RomUpSquareY, image=TkOpenWheelEmu)
print(str(RomUpSquareX) + " : " + str(RomUpSquareY) + "(" + str(RomUpSquareSizeX) + ":" + str(RomUpSquareSizeY) +")")
print("Curent Emu : " + str(EmuRes[RomCpt]))
def BackgroundRom(Emu): def BackgroundRom(Emu):
print("Canevas ROM : " + str(Cnv.find_all()))
EmuBgFile = "./data/emu/media/" + str(Emu) +"_bg.png" EmuBgFile = "./data/emu/media/" + str(Emu) +"_bg.png"
EmuBgFile = IsImgExist(EmuBgFile,"bg") EmuBgFile = IsFileExist(EmuBgFile,"bg")
OpenEmuBgfile=Image.open(EmuBgFile) OpenEmuBgfile=Image.open(EmuBgFile)
PhotoEmuBgFile=OpenEmuBgfile.resize((Xsize,Ysize)) PhotoEmuBgFile=OpenEmuBgfile.resize((Xsize,Ysize))
@ -73,7 +113,7 @@ def BackgroundRom(Emu):
Cnv.create_image(0, 0, image=TkPhotoEmuBgFile, anchor = "nw") Cnv.create_image(0, 0, image=TkPhotoEmuBgFile, anchor = "nw")
def IsImgExist(AbsPathFile,TypeMedia): def IsFileExist(AbsPathFile,TypeMedia):
if not os.path.exists(AbsPathFile): if not os.path.exists(AbsPathFile):
match TypeMedia: match TypeMedia:
case "emu": case "emu":
@ -83,7 +123,7 @@ def IsImgExist(AbsPathFile,TypeMedia):
case "wheel": case "wheel":
return "./media/nowheel.png" return "./media/nowheel.png"
case "snap": case "snap":
return "./media/nopsnap.png" return "./media/nosnap.png"
case "wheelemu": case "wheelemu":
return "./media/nowheelemu.png" return "./media/nowheelemu.png"
case "doc": case "doc":
@ -102,24 +142,30 @@ def BackgroundEmu():
def EnterEmu(GetEmuMod): def EnterEmu(GetEmuMod):
global EmuMod global EmuMod
global cpt global cpt
if EmuMod == 0: global RomCpt
EmuMod=1 RomCpt=0
runMcpt = cpt + 1 if GetEmuMod == 0:
if runMcpt > EmuCpt: RomCpt = 1
runMcpt = 0 EmuMod = 1
print("Emu : " + str(EmuRes[runMcpt])) print("Emu : " + str(CurentEmu))
#Cnv.delete("all") #Cnv.delete("all")
BackgroundRom(str(EmuRes[runMcpt])) #BackgroundRom(str(CurentEmu))
GenRomListPerGame(str(EmuRes[runMcpt])) GenRomListPerGame(str(CurentEmu))
#if RomCpt > MaxRomCpt:
# RomCpt = 0
print("ENTER MODE : " + str(EmuRes[RomCpt]) + " ID :" + str(RomCpt))
ViewRom(CurentEmu,RomCpt)
def ViewEmu(cL,xL,yL,cM,xM,yM,cR,xR,yR): def ViewEmu(cL,xL,yL,cM,xM,yM,cR,xR,yR):
NfL="./data/emu/media/" + EmuRes[cL] + ".png" NfL="./data/emu/media/" + EmuRes[cL] + ".png"
NfL = IsImgExist(NfL,"emu") NfL = IsFileExist(NfL,"emu")
NfM="./data/emu/media/" + EmuRes[cM] + ".png" NfM="./data/emu/media/" + EmuRes[cM] + ".png"
NfM = IsImgExist(NfM,"emu") NfM = IsFileExist(NfM,"emu")
NfR="./data/emu/media/" + EmuRes[cR] + ".png" NfR="./data/emu/media/" + EmuRes[cR] + ".png"
NfR = IsImgExist(NfR,"emu") NfR = IsFileExist(NfR,"emu")
OpenNfL=Image.open(NfL) OpenNfL=Image.open(NfL)
@ -153,6 +199,7 @@ def ViewEmu(cL,xL,yL,cM,xM,yM,cR,xR,yR):
def leftKey(GetEmuMod): def leftKey(GetEmuMod):
if GetEmuMod == 0: if GetEmuMod == 0:
global CurentEmu
global cpt global cpt
cpt = cpt - 1 cpt = cpt - 1
if cpt < 0: if cpt < 0:
@ -166,15 +213,20 @@ def leftKey(GetEmuMod):
if Rcpt > EmuCpt: if Rcpt > EmuCpt:
Rcpt = 0 Rcpt = 0
print("DEBUG : " + str(EmuMod) + " Emu : " + str(cpt)) print("DEBUG : " + str(EmuMod) + " Emu : " + str(cpt))
CurentEmu = EmuRes[Mcpt]
ViewEmu(Lcpt,EmuLeftSquareX, EmuLeftSquareY,Mcpt,EmuMiddleSquareX, EmuMiddleSquareY,Rcpt,EmuRightSquareX, EmuRightSquareY) ViewEmu(Lcpt,EmuLeftSquareX, EmuLeftSquareY,Mcpt,EmuMiddleSquareX, EmuMiddleSquareY,Rcpt,EmuRightSquareX, EmuRightSquareY)
if GetEmuMod == 1: if GetEmuMod == 1:
global RomCpt global RomCpt
print ("get in ") RomCpt=RomCpt - 1
ViewRom(EmuRes[RomCpt]) if RomCpt < 0:
RomCpt = MaxRomCpt
print("Running - : " + str(RomCpt) + " ROM : " + str(RomRes[RomCpt]))
ViewRom(CurentEmu,RomCpt)
def rightKey(GetEmuMod): def rightKey(GetEmuMod):
if GetEmuMod == 0: if GetEmuMod == 0:
global CurentEmu
global cpt global cpt
cpt = cpt + 1 cpt = cpt + 1
if cpt > EmuCpt: if cpt > EmuCpt:
@ -189,10 +241,15 @@ def rightKey(GetEmuMod):
Rcpt = 0 Rcpt = 0
print("DEBUG : " + str(EmuMod) + " Emu : " + str(cpt)) print("DEBUG : " + str(EmuMod) + " Emu : " + str(cpt))
ViewEmu(Lcpt,EmuLeftSquareX, EmuLeftSquareY,Mcpt,EmuMiddleSquareX, EmuMiddleSquareY,Rcpt,EmuRightSquareX, EmuRightSquareY) ViewEmu(Lcpt,EmuLeftSquareX, EmuLeftSquareY,Mcpt,EmuMiddleSquareX, EmuMiddleSquareY,Rcpt,EmuRightSquareX, EmuRightSquareY)
CurentEmu = EmuRes[Mcpt]
if GetEmuMod == 1: if GetEmuMod == 1:
global RomCpt global RomCpt
print ("get in ") RomCpt=RomCpt + 1
ViewRom(EmuRes[RomCpt]) if RomCpt > MaxRomCpt:
RomCpt = 0
print("Running + : " + str(RomCpt) + " ROM : " + str(RomRes[RomCpt]))
ViewRom(CurentEmu,RomCpt)
def Escape(GetEmuMod): def Escape(GetEmuMod):
@ -229,6 +286,7 @@ def GenEmuList():
def GenRomListPerGame(Emu): def GenRomListPerGame(Emu):
global RomRes global RomRes
RomRes.clear() RomRes.clear()
print("DEBUG Gen List ROM : " + str(Emu))
DirRomPath='./data/roms/'+Emu+'/roms' DirRomPath='./data/roms/'+Emu+'/roms'
dir_rom_path = r''+DirRomPath dir_rom_path = r''+DirRomPath
@ -244,8 +302,9 @@ def GenRomListPerGame(Emu):
cntrom = Counter(RomRes) cntrom = Counter(RomRes)
global RomCpt global RomCpt
RomCpt=len(cntrom) - 1 global MaxRomCpt
print("Nmbre de roms : " + str(RomCpt)) MaxRomCpt=len(cntrom) - 1
print("Nmbre de roms : " + str(MaxRomCpt))
print ("ListROms : " + str(RomRes)) print ("ListROms : " + str(RomRes))
print ("TEST 1942 : " + str(RomRes[0]) ) print ("TEST 1942 : " + str(RomRes[0]) )
@ -258,13 +317,10 @@ global RomRes
EmuRes = [] EmuRes = []
RomRes = [] RomRes = []
EmuMod = 0 EmuMod = 0
GenEmuList() GenEmuList()
config_obj = configparser.ConfigParser() config_obj = configparser.ConfigParser()
config_obj.read("./conf/config.ini") config_obj.read("./conf/config.ini")
Media = config_obj["Media"] Media = config_obj["Media"]
@ -294,10 +350,6 @@ else:
Ysize = arkadeus.winfo_screenheight() Ysize = arkadeus.winfo_screenheight()
print("res : " + str(Xsize) + ":" + str(Ysize) )
################ Carto Emu Mode #################### ################ Carto Emu Mode ####################
EmuMiddleSquareX=(Xsize/2) EmuMiddleSquareX=(Xsize/2)
EmuMiddleSquareY=(Ysize/2) EmuMiddleSquareY=(Ysize/2)
@ -326,46 +378,27 @@ RomUpSquareSizeY=round(((Ysize-(RomIndiceY*4))/3))
RomUpSquareX=round(RomIndiceX + RomUpSquareSizeX/2) RomUpSquareX=round(RomIndiceX + RomUpSquareSizeX/2)
RomUpSquareY=round(RomIndiceY + RomUpSquareSizeY/2) RomUpSquareY=round(RomIndiceY + RomUpSquareSizeY/2)
RomMiddleSquareX=RomIndiceX
RomMiddleSquareY=(RomIndiceY*2) + RomUpSquareSizeY
RomMiddleSquareSizeX=RomUpSquareSizeX RomMiddleSquareSizeX=RomUpSquareSizeX
RomMiddleSquareSizeY=RomUpSquareSizeY RomMiddleSquareSizeY=RomUpSquareSizeY
RomMiddleSquareX=RomUpSquareX
RomMiddleSquareY=RomUpSquareY*2 + RomUpSquareSizeY/2
RomBottomSquareX=RomIndiceX
RomBottomSquareY=(RomIndiceY*3) + (RomUpSquareSizeY*2)
RomBottomSquareSizeX=RomUpSquareSizeX RomBottomSquareSizeX=RomUpSquareSizeX
RomBottomSquareSizeY=RomUpSquareSizeY RomBottomSquareSizeY=RomUpSquareSizeY
RomBottomSquareX=RomUpSquareX
RomBottomSquareY=RomUpSquareY*3 + RomUpSquareSizeY
RomLeftSquareX=(RomIndiceX*2) + RomUpSquareSizeX RomBottomSquareTxtUpX=RomIndiceX
RomLeftSquareY=RomIndiceY RomBottomSquareTxtUpY= RomIndiceY*3+RomUpSquareSizeY*2
RomLeftSquareSizeX=round(((Xsize-(RomIndiceX*3))/2))
RomBottomSquareTxtBottomX=RomBottomSquareTxtUpX + RomBottomSquareSizeX
RomBottomSquareTxtBottomY=RomBottomSquareTxtUpY +RomUpSquareSizeY
RomLeftSquareSizeX=RomUpSquareSizeX - RomIndiceX
RomLeftSquareSizeY=round((Ysize-(RomIndiceY*2))) RomLeftSquareSizeY=round((Ysize-(RomIndiceY*2)))
RomLeftSquareX=RomIndiceX+ RomLeftSquareSizeX/2 + Xsize/2
RomLeftSquareY=round(RomIndiceY + RomLeftSquareSizeY/2)
print("RomIndice :" + str(RomIndice))
print("RomIndiceX :" + str(RomIndiceX))
print("RomIndiceY :" + str(RomIndiceY))
print("RomUpSquareX :" + str(RomUpSquareX))
print("RomUpSquareY :" + str(RomUpSquareY))
print("RomUpSquareSizeX :" + str(RomUpSquareSizeX))
print("RomUpSquareSizeY :" + str(RomUpSquareSizeY))
print("RomMiddleSquareX :" + str(RomMiddleSquareX))
print("RomMiddleSquareY :" + str(RomMiddleSquareY))
print("RomMiddleSquareSizeX :" + str(RomMiddleSquareSizeX))
print("RomMiddleSquareSizeY :" + str(RomMiddleSquareSizeY))
print("RomBottomSquareX :" + str(RomBottomSquareX))
print("RomBottomSquareY :" + str(RomBottomSquareY))
print("RomBottomSquareSizeX :" + str(RomBottomSquareSizeX))
print("RomBottomSquareSizeY :" + str(RomBottomSquareSizeY))
print("RomLeftSquareX :" + str(RomLeftSquareX))
print("RomLeftSquareY :" + str(RomLeftSquareY))
print("RomLeftSquareSizeX :" + str(RomLeftSquareSizeX))
print("RomLeftSquareSizeY :" + str(RomLeftSquareSizeY))
#################################################### ####################################################