Benvenuto Ospite,
per utilizzare il Forum ed avere accesso a tutte le sezioni e poter aprire un tuo Topic, rispondere nelle varie discussioni, mandare o ricevere Messaggi Privati devi seguire pochi passaggi:
Leggi il nostro Regolamento -> PREMI QUI <-
Segui il link su come Iscriversi -> PREMI QUI <-
Ricordati di aggiornare l'Avatar usando una immagine che ti distingua nel Forum
per utilizzare il Forum ed avere accesso a tutte le sezioni e poter aprire un tuo Topic, rispondere nelle varie discussioni, mandare o ricevere Messaggi Privati devi seguire pochi passaggi:
Leggi il nostro Regolamento -> PREMI QUI <-
Segui il link su come Iscriversi -> PREMI QUI <-
Ricordati di aggiornare l'Avatar usando una immagine che ti distingua nel Forum
software per recuperare la lista giochi di Teknoparrot
- pucci
- Moderatore
- Messaggi: 4926
- Iscritto il: 19/07/2005, 18:52
- Città: San Clemente (RN)
- Località: Rimini
- Grazie Ricevuti: 69 volte
Re: software per recuperare la lista giochi di Teknoparrot
usando il tuo software ogni volta che aggiornano Teknoparrot (quasi giornalmente) controllo se sono stati aggiunti giochi ma soprattutto cerco di sistemare aspetti non emulativi ma informativi che sembrano essere poco curati dai contributori (anni di release, sistema su cui girano, icone, ecc...), se vai a vedere la pagina github di TeknoParrotUI vedrai che ultimamente ci sono molti mie contenuti
altra cosa utile che potrebbe fare il software (magari automatizzandola) sarebbe quella di esportare questi dati in un formato HTML leggibile da mettere su un sito.
ancora oggi il sito uffciale di TeknoParrot è carente da questo punto di vista, se guardi qui https://teknogods.github.io/compatibility.html mancano molti giochi (oltre che molte informazioni)
NOTA: TeknoParrot non è un emulatore, ma permette di giocare bene a giochi arcade veramente belli e moderni, secondo me avrà sempre più seguito, unico difetto è gestito veramente male da una persona molto attaccata ai soldi
attualmente ha 1379 sostenitori Patreon che versano un minimo di 5,5€ al mese, ma è una stima per difetto. parliamo di più di 7.500€ al mese...
altra cosa utile che potrebbe fare il software (magari automatizzandola) sarebbe quella di esportare questi dati in un formato HTML leggibile da mettere su un sito.
ancora oggi il sito uffciale di TeknoParrot è carente da questo punto di vista, se guardi qui https://teknogods.github.io/compatibility.html mancano molti giochi (oltre che molte informazioni)
NOTA: TeknoParrot non è un emulatore, ma permette di giocare bene a giochi arcade veramente belli e moderni, secondo me avrà sempre più seguito, unico difetto è gestito veramente male da una persona molto attaccata ai soldi
attualmente ha 1379 sostenitori Patreon che versano un minimo di 5,5€ al mese, ma è una stima per difetto. parliamo di più di 7.500€ al mese...
- Gothrek
- Moderatore
- Messaggi: 5498
- Iscritto il: 13/07/2017, 13:30
- Città: Roma
- Grazie Inviati: 20 volte
- Grazie Ricevuti: 313 volte
Re: software per recuperare la lista giochi di Teknoparrot
azz un bel po di soldi,
capito tutto.
per l'html in generale direi si, ma anche da excel salvi/esporti in html
faccio le modifiche e ti aggiorno.
capito tutto.
per l'html in generale direi si, ma anche da excel salvi/esporti in html
faccio le modifiche e ti aggiorno.
- pucci
- Moderatore
- Messaggi: 4926
- Iscritto il: 19/07/2005, 18:52
- Città: San Clemente (RN)
- Località: Rimini
- Grazie Ricevuti: 69 volte
Re: software per recuperare la lista giochi di Teknoparrot
TeknoParrot è veramente un bel software e consiglio a chi non lo ha ancora fatto di provarlo (soprattutto se siete appassionati di fighting in stile street fighter)
se solo avesse una gestione più trasparente e meno dispotica....
se solo avesse una gestione più trasparente e meno dispotica....
- pucci
- Moderatore
- Messaggi: 4926
- Iscritto il: 19/07/2005, 18:52
- Città: San Clemente (RN)
- Località: Rimini
- Grazie Ricevuti: 69 volte
Re: software per recuperare la lista giochi di Teknoparrot
giusto per citarne alcuni tra i 223 attualmente disponibili:
After Burner Climax
Aliens Armageddon
America's Army Arcade
Batman
Chase H.Q. 2
Dariusburst: Another Chronicle
Daytona Championship USA
Dead Heat
Dead or Alive 5 Ultimate Arcade
Dead or Alive 6
Dirty Drivin'
Ghost Squad Evolution
GRID
GTI Club: Supermini Festa!
House of the Dead: Scarlet Dawn
Hummer Extreme Edition
Ikaruga for NESiCAxLive
King of Fighters XIII Climax
Let's Go Island 3D - Lost on the Island of Tropics
Let's Go Jungle: Lost on the Island of Spice
Luigi's Mansion Arcade
Mario and Sonic at the Rio 2016 Olympic Games
Mario Kart: Arcade GP DX
Nirin
Operation G.H.O.S.T.
OutRun 2 SP SDX
Raiden III
Raiden IV
Rambo
Samurai Spirits Sen
SEGA Race TV
SEGA Racing Classic
Sega Rally 3
Silent Hill: The Arcade
Sonic & SEGA All-Stars Racing
Sonic Dash Extreme
Star Trek Voyager
STAR WARS: Battle Pod
Storm Racer G
Street Fighter V: Type Arcade
Super Street Fighter IV: Arcade Edition
Tank! Tank! Tank!
Tekken 7
Terminator Salvation
The Fast and the Furious
The House of the Dead 4 Special
Time Crisis 5
Transformers: Human Alliance
Ultra Street Fighter IV
Under Defeat HD+
Virtua Fighter 5 Final Showdown
Virtua Tennis 3
Virtua Tennis 4
Wartran Troopers
After Burner Climax
Aliens Armageddon
America's Army Arcade
Batman
Chase H.Q. 2
Dariusburst: Another Chronicle
Daytona Championship USA
Dead Heat
Dead or Alive 5 Ultimate Arcade
Dead or Alive 6
Dirty Drivin'
Ghost Squad Evolution
GRID
GTI Club: Supermini Festa!
House of the Dead: Scarlet Dawn
Hummer Extreme Edition
Ikaruga for NESiCAxLive
King of Fighters XIII Climax
Let's Go Island 3D - Lost on the Island of Tropics
Let's Go Jungle: Lost on the Island of Spice
Luigi's Mansion Arcade
Mario and Sonic at the Rio 2016 Olympic Games
Mario Kart: Arcade GP DX
Nirin
Operation G.H.O.S.T.
OutRun 2 SP SDX
Raiden III
Raiden IV
Rambo
Samurai Spirits Sen
SEGA Race TV
SEGA Racing Classic
Sega Rally 3
Silent Hill: The Arcade
Sonic & SEGA All-Stars Racing
Sonic Dash Extreme
Star Trek Voyager
STAR WARS: Battle Pod
Storm Racer G
Street Fighter V: Type Arcade
Super Street Fighter IV: Arcade Edition
Tank! Tank! Tank!
Tekken 7
Terminator Salvation
The Fast and the Furious
The House of the Dead 4 Special
Time Crisis 5
Transformers: Human Alliance
Ultra Street Fighter IV
Under Defeat HD+
Virtua Fighter 5 Final Showdown
Virtua Tennis 3
Virtua Tennis 4
Wartran Troopers
- pucci
- Moderatore
- Messaggi: 4926
- Iscritto il: 19/07/2005, 18:52
- Città: San Clemente (RN)
- Località: Rimini
- Grazie Ricevuti: 69 volte
Re: software per recuperare la lista giochi di Teknoparrot
tra l'altro avevo idea di mettere su un progetto condiviso per poter realizzare un dat per ClrMAME (che però va fatto completamente a mano testando i giochi uno ad uno)
- pucci
- Moderatore
- Messaggi: 4926
- Iscritto il: 19/07/2005, 18:52
- Città: San Clemente (RN)
- Località: Rimini
- Grazie Ricevuti: 69 volte
Re: software per recuperare la lista giochi di Teknoparrot
grazie @Emu!Emu ha scritto: ↑22/11/2022, 1:02 Ciao Pucci
Negli ultimi anni ho latitato il forum per motivi personali, ma sperando di non fare un torto a Gothrek ho buttato giù uno script PowerShell che fa i check che hai chiesto, e volendo scarica pure le icone mancanti.
Per eseguirlo devi salvarlo come file di testo ed estensione .PS1, poi modifichi il path del tuo TecnoParrot e dovrrsti essere a posto. In alto ci sono alcune variabili che puoi modificare
Check-TeknoParrot-Resources.ps1:Spero ti possa essere utile.Codice: Seleziona tutto
############################################################################# ### VARIABILI PERSONALIZZABILI ### ############################################################################# # Specificare di seguito la directory dove si trova TP, terminando la stringa con "\" $TeknoParrotFolder = "E:\Emulator\Arcade\TeknoParrot\" # Per abilitare/disabilitare l'esportazione su CSV $ExportCSV = $true # Nome file CSV di Export, creato nella directory di TecnoParrot $CSVExportFile = "GamesList.csv" # Delimitatore usato nell'esportazione in CSV $CSVDelim = ";" # Per abilitare il download delle icone mancanti $DownloadMissingIcons = $false ############################################################################# ### COSTANTI - NON TOCCARE ### ############################################################################# # Estensione dei files delle icone $IconExtension = "png" # Questo è l'URL base per scaricarsi le icone, se si abilita il download $IconsBaseURL = "https://raw.githubusercontent.com/teknogods/TeknoParrotUIThumbnails/master/Icons/" ############################################################################# ### MAIN ### ############################################################################# # Leggo i files XML dei GamesProfiles Write-Host "Lettura files XML dei GamesProfiles in" $($TeknoParrotFolder + "GameProfiles\") -ForegroundColor Cyan $GamesProfiles = Get-ChildItem $($TeknoParrotFolder + "GameProfiles\*.xml") # Creo l'array vuoto di giochi $Games = @() # Processo tutti i files della directory GamesProfiles Write-Host "Processo i files XML dei GamesProfiles..." -ForegroundColor Cyan foreach ($GameProfile in $GamesProfiles){ # Leggo il file XML [xml]$GP = Get-Content $GameProfile.PSPath # Controllo se esiste il file JSON corrispondente al file XML del GP $DescriptionFilePath = $TeknoParrotFolder + "Descriptions\" + $GameProfile.BaseName + ".json" if (Test-Path $DescriptionFilePath){ # Leggo il file JSON corrispondente al file XML del GP $Json = Get-Content $DescriptionFilePath $Description = $JSON | ConvertFrom-Json } else { Write-Host "" Write-Host "ATTENZIONE: File $DescriptionFilePath non presente!" -ForegroundColor Yellow $Description = @{ platform = "" release_year = "" nvidia = "" nvidia_issues = "" amd = "" amd_issues = "" intel = "" intel_issues = "" general_issues = "" } } # Verifico se c'è il file con l'icona if ($GP.GameProfile.IconName.Length -gt 1){ #$IconFilePath = $TeknoParrotFolder + "Icons\" + $GameProfile.BaseName + "." + $IconExtension $IconFilePath = $TeknoParrotFolder + $GP.GameProfile.IconName if (Test-Path $IconFilePath){ $HasIcon = "Yes" } else { $HasIcon = "No" if ($DownloadMissingIcons){ $IconName = $GP.GameProfile.IconName.Replace("Icons\","") Write-Host Write-Host "Download icona mancante $IconName" -ForegroundColor Magenta $IconURL = $IconsBaseURL + $IconName try { $resp = Invoke-WebRequest -Uri $IconURL -UseBasicParsing -OutFile $IconFilePath } catch { if( $_.Exception.Response.StatusCode.Value__ -eq 200 ) { #Write-Host "Download OK!"-ForegroundColor Green } elseif( $_.Exception.Response.StatusCode.Value__ -eq 404 ) { Write-Host "ERRORE: File non presente all'URL $IconURL"-ForegroundColor Yellow } else { Write-Host "WARNING: Errore download file da verificare manualmente" -ForegroundColor Red } } if (Test-Path $IconFilePath){ $HasIcon = "Yes" } } } } # Estraggo i campi interessanti e me li salvo in un nuovo oggetto $Game = [PSCustomObject][ordered]@{ GameName = $GP.GameProfile.GameName GameGenre = $GP.GameProfile.GameGenre IconName = $GP.GameProfile.IconName EmulationProfile = $GP.GameProfile.EmulationProfile GameProfileRevision = $GP.GameProfile.GameProfileRevision Is64Bit = $GP.GameProfile.Is64Bit EmulatorType = $GP.GameProfile.EmulatorType DevOnly = $GP.GameProfile.DevOnly Patreon = $GP.GameProfile.Patreon ExecutableName = $GP.GameProfile.ExecutableName ExecutableName2 = $GP.GameProfile.ExecutableName2 HasTwoExecutables = $GP.GameProfile.HasTwoExecutables platform = $Description.platform release_year = $Description.release_year nvidia = $Description.nvidia nvidia_issues = $Description.nvidia_issues amd = $Description.amd amd_issues = $Description.amd_issues intel = $Description.intel intel_issues = $Description.intel_issues general_issues = $Description.general_issues HasIcon = $HasIcon } # Aggiungo il record appena creato all'array $Games += $Game Write-Host "." -NoNewline } Write-Host Write-Host # Mostro i giochi a schermo $Games | Out-GridView # Esporto su CSV if ($ExportCSV){ Write-Host "Esportazione elenco giochi in" $($TeknoParrotFolder + $CSVExportFile) -ForegroundColor Cyan $Games | Export-Csv $($TeknoParrotFolder + $CSVExportFile) -Delimiter $CSVDelim -NoTypeInformation }
Per questo genere di attività preferisco degli script, perchè si possono modificare al volo in caso di qualche aggiornamento, e ti puoi fare script nuovi per esigenze analoghe tra diversi emulatori.
Emu
ci sarebbero alcune cose da perfezionare:
1) andrebbe aggiunta un ultima colonna con il nome "breve" del gioco (in pratica è il nome del file che viene letto), la colonna dovrebbe avere come titolo "FileName"
2) sembra esserci un problema con la colonna "HasIcon" perchè viene impostata a "No" su alcuni giochi che in realtà l'icona ce l'hanno, precisamente questi
GameName IconName
Akai Katana Shin for NESiCAxLive Icons\AkaiKatakanaShinNesica.png
Baseball Heroes 2 Icons\BaseballHeroes.png
Battle Climaxx! Icons\BattleClimax.png
Big Buck Hunter Pro Home Icons\BBHHome.png
Guilty Gear Xrd REV2 Icons\GGXrdREV2.png
Guilty Gear Xrd REV2 (APM3) Icons\GGXrdREV2.png
Harikiri Baseball Icons\Harikiri.png
Horse Riders 2 Icons\HorseRiders.png
Hot Wheels Icons\HotWheels.png
Infinity Blade FX Icons\InfinityBlade.png
Koihime Enbu Icons\KoihimeEnbu.png
Spiderman Icons\Spiderman.png
Super Street Fighter IV: Arcade Edition Icons\StreetFighterIVArcadeEdition.png
Super Street Fighter IV: Arcade Edition (Export) Icons\StreetFighterIVArcadeEditionEXP.png
Under Night In-Birth Exe:Late[st] Icons\UnderNightInBirthLatest.png
- Gothrek
- Moderatore
- Messaggi: 5498
- Iscritto il: 13/07/2017, 13:30
- Città: Roma
- Grazie Inviati: 20 volte
- Grazie Ricevuti: 313 volte
Re: software per recuperare la lista giochi di Teknoparrot
diopadre..mi evitavo un paio d'ore di codicepucci ha scritto: ↑01/12/2022, 16:51grazie @Emu!Emu ha scritto: ↑22/11/2022, 1:02 Ciao Pucci
Negli ultimi anni ho latitato il forum per motivi personali, ma sperando di non fare un torto a Gothrek ho buttato giù uno script PowerShell che fa i check che hai chiesto, e volendo scarica pure le icone mancanti.
Per eseguirlo devi salvarlo come file di testo ed estensione .PS1, poi modifichi il path del tuo TecnoParrot e dovrrsti essere a posto. In alto ci sono alcune variabili che puoi modificare
Check-TeknoParrot-Resources.ps1:Spero ti possa essere utile.Codice: Seleziona tutto
############################################################################# ### VARIABILI PERSONALIZZABILI ### ############################################################################# # Specificare di seguito la directory dove si trova TP, terminando la stringa con "\" $TeknoParrotFolder = "E:\Emulator\Arcade\TeknoParrot\" # Per abilitare/disabilitare l'esportazione su CSV $ExportCSV = $true # Nome file CSV di Export, creato nella directory di TecnoParrot $CSVExportFile = "GamesList.csv" # Delimitatore usato nell'esportazione in CSV $CSVDelim = ";" # Per abilitare il download delle icone mancanti $DownloadMissingIcons = $false ############################################################################# ### COSTANTI - NON TOCCARE ### ############################################################################# # Estensione dei files delle icone $IconExtension = "png" # Questo è l'URL base per scaricarsi le icone, se si abilita il download $IconsBaseURL = "https://raw.githubusercontent.com/teknogods/TeknoParrotUIThumbnails/master/Icons/" ############################################################################# ### MAIN ### ############################################################################# # Leggo i files XML dei GamesProfiles Write-Host "Lettura files XML dei GamesProfiles in" $($TeknoParrotFolder + "GameProfiles\") -ForegroundColor Cyan $GamesProfiles = Get-ChildItem $($TeknoParrotFolder + "GameProfiles\*.xml") # Creo l'array vuoto di giochi $Games = @() # Processo tutti i files della directory GamesProfiles Write-Host "Processo i files XML dei GamesProfiles..." -ForegroundColor Cyan foreach ($GameProfile in $GamesProfiles){ # Leggo il file XML [xml]$GP = Get-Content $GameProfile.PSPath # Controllo se esiste il file JSON corrispondente al file XML del GP $DescriptionFilePath = $TeknoParrotFolder + "Descriptions\" + $GameProfile.BaseName + ".json" if (Test-Path $DescriptionFilePath){ # Leggo il file JSON corrispondente al file XML del GP $Json = Get-Content $DescriptionFilePath $Description = $JSON | ConvertFrom-Json } else { Write-Host "" Write-Host "ATTENZIONE: File $DescriptionFilePath non presente!" -ForegroundColor Yellow $Description = @{ platform = "" release_year = "" nvidia = "" nvidia_issues = "" amd = "" amd_issues = "" intel = "" intel_issues = "" general_issues = "" } } # Verifico se c'è il file con l'icona if ($GP.GameProfile.IconName.Length -gt 1){ #$IconFilePath = $TeknoParrotFolder + "Icons\" + $GameProfile.BaseName + "." + $IconExtension $IconFilePath = $TeknoParrotFolder + $GP.GameProfile.IconName if (Test-Path $IconFilePath){ $HasIcon = "Yes" } else { $HasIcon = "No" if ($DownloadMissingIcons){ $IconName = $GP.GameProfile.IconName.Replace("Icons\","") Write-Host Write-Host "Download icona mancante $IconName" -ForegroundColor Magenta $IconURL = $IconsBaseURL + $IconName try { $resp = Invoke-WebRequest -Uri $IconURL -UseBasicParsing -OutFile $IconFilePath } catch { if( $_.Exception.Response.StatusCode.Value__ -eq 200 ) { #Write-Host "Download OK!"-ForegroundColor Green } elseif( $_.Exception.Response.StatusCode.Value__ -eq 404 ) { Write-Host "ERRORE: File non presente all'URL $IconURL"-ForegroundColor Yellow } else { Write-Host "WARNING: Errore download file da verificare manualmente" -ForegroundColor Red } } if (Test-Path $IconFilePath){ $HasIcon = "Yes" } } } } # Estraggo i campi interessanti e me li salvo in un nuovo oggetto $Game = [PSCustomObject][ordered]@{ GameName = $GP.GameProfile.GameName GameGenre = $GP.GameProfile.GameGenre IconName = $GP.GameProfile.IconName EmulationProfile = $GP.GameProfile.EmulationProfile GameProfileRevision = $GP.GameProfile.GameProfileRevision Is64Bit = $GP.GameProfile.Is64Bit EmulatorType = $GP.GameProfile.EmulatorType DevOnly = $GP.GameProfile.DevOnly Patreon = $GP.GameProfile.Patreon ExecutableName = $GP.GameProfile.ExecutableName ExecutableName2 = $GP.GameProfile.ExecutableName2 HasTwoExecutables = $GP.GameProfile.HasTwoExecutables platform = $Description.platform release_year = $Description.release_year nvidia = $Description.nvidia nvidia_issues = $Description.nvidia_issues amd = $Description.amd amd_issues = $Description.amd_issues intel = $Description.intel intel_issues = $Description.intel_issues general_issues = $Description.general_issues HasIcon = $HasIcon } # Aggiungo il record appena creato all'array $Games += $Game Write-Host "." -NoNewline } Write-Host Write-Host # Mostro i giochi a schermo $Games | Out-GridView # Esporto su CSV if ($ExportCSV){ Write-Host "Esportazione elenco giochi in" $($TeknoParrotFolder + $CSVExportFile) -ForegroundColor Cyan $Games | Export-Csv $($TeknoParrotFolder + $CSVExportFile) -Delimiter $CSVDelim -NoTypeInformation }
Per questo genere di attività preferisco degli script, perchè si possono modificare al volo in caso di qualche aggiornamento, e ti puoi fare script nuovi per esigenze analoghe tra diversi emulatori.
Emu
ci sarebbero alcune cose da perfezionare:
1) andrebbe aggiunta un ultima colonna con il nome "breve" del gioco (in pratica è il nome del file che viene letto), la colonna dovrebbe avere come titolo "FileName"
2) sembra esserci un problema con la colonna "HasIcon" perchè viene impostata a "No" su alcuni giochi che in realtà l'icona ce l'hanno, precisamente questi
GameName IconName
Akai Katana Shin for NESiCAxLive Icons\AkaiKatakanaShinNesica.png
Baseball Heroes 2 Icons\BaseballHeroes.png
Battle Climaxx! Icons\BattleClimax.png
Big Buck Hunter Pro Home Icons\BBHHome.png
Guilty Gear Xrd REV2 Icons\GGXrdREV2.png
Guilty Gear Xrd REV2 (APM3) Icons\GGXrdREV2.png
Harikiri Baseball Icons\Harikiri.png
Horse Riders 2 Icons\HorseRiders.png
Hot Wheels Icons\HotWheels.png
Infinity Blade FX Icons\InfinityBlade.png
Koihime Enbu Icons\KoihimeEnbu.png
Spiderman Icons\Spiderman.png
Super Street Fighter IV: Arcade Edition Icons\StreetFighterIVArcadeEdition.png
Super Street Fighter IV: Arcade Edition (Export) Icons\StreetFighterIVArcadeEditionEXP.png
Under Night In-Birth Exe:Late[st] Icons\UnderNightInBirthLatest.png

np
scusa l'ignoranza, ma siti di scraping tipo screenscraper piuttosto che adb non hanno info su questi giochi?
- pucci
- Moderatore
- Messaggi: 4926
- Iscritto il: 19/07/2005, 18:52
- Città: San Clemente (RN)
- Località: Rimini
- Grazie Ricevuti: 69 volte
Re: software per recuperare la lista giochi di Teknoparrot
avete approcciato lo stesso problema con 2 percorsi diversi ma entrambi efficaci. ci vedo solo cose positive in questo.
Riguardo allo scraping io penso che alcuni siti abbiano info su questi giochi, ADB non li ha essendo dedicato al MAME
- Gothrek
- Moderatore
- Messaggi: 5498
- Iscritto il: 13/07/2017, 13:30
- Città: Roma
- Grazie Inviati: 20 volte
- Grazie Ricevuti: 313 volte
Re: software per recuperare la lista giochi di Teknoparrot
se dovessi avere contezza di qualche sito che ha queste info, fammelo sapere cosi che possa includerlo direttamente nel gotscraper.
Ti allego l'ultima versione che avevo fatto.
Non hai i permessi necessari per visualizzare i file allegati in questo messaggio.
- Gothrek
- Moderatore
- Messaggi: 5498
- Iscritto il: 13/07/2017, 13:30
- Città: Roma
- Grazie Inviati: 20 volte
- Grazie Ricevuti: 313 volte
Re: software per recuperare la lista giochi di Teknoparrot
Sto cercando di capirci qualcosa di piu'...e sicuramente ne sai piu' di me.
mi dici che NON è un emulatore, quindi chi emula? lancia altri emulatori?
la rom invece in che "formato" è?
chi, e come, viene creata una rom? con quale software partendo dall'originale?
il progetto teknoparrotUI ho visto che è open come diversi pubblicati in github, perchè pagare?
- pucci
- Moderatore
- Messaggi: 4926
- Iscritto il: 19/07/2005, 18:52
- Città: San Clemente (RN)
- Località: Rimini
- Grazie Ricevuti: 69 volte
- Gothrek
- Moderatore
- Messaggi: 5498
- Iscritto il: 13/07/2017, 13:30
- Città: Roma
- Grazie Inviati: 20 volte
- Grazie Ricevuti: 313 volte
Re: software per recuperare la lista giochi di Teknoparrot
impossibile


il primo è vuoto (perchè prima non lo avevi) e poi se premi la x che chiude il programma lo salva.
- pucci
- Moderatore
- Messaggi: 4926
- Iscritto il: 19/07/2005, 18:52
- Città: San Clemente (RN)
- Località: Rimini
- Grazie Ricevuti: 69 volte
Re: software per recuperare la lista giochi di Teknoparrot
a me non lo fa. se vuoi mando un video
può essere che le versioni precedenti sporchino la configurazione? ho installato la nuova in cartella separata
può essere che le versioni precedenti sporchino la configurazione? ho installato la nuova in cartella separata
- Gothrek
- Moderatore
- Messaggi: 5498
- Iscritto il: 13/07/2017, 13:30
- Città: Roma
- Grazie Inviati: 20 volte
- Grazie Ricevuti: 313 volte
Re: software per recuperare la lista giochi di Teknoparrot
la versione (sul lato sx) è la 1.0.0.3 ?
quando riavvii l'app (naturalmente la textbox è vuota) ma se premi i punti per selezionare una dir lui ha automaticamente settato la precedente quindi devi solo confermare
questa "riselezione" con conferma è necessaria per evitare che avviando il software inneschi prima dell'avvio tutte le attività di caricamento della tabella che "pianterebbe" il software fino alla sua conclusione.
ps ora salva anche la disposizione delle colonne e la larghezza ultima impostata.
- pucci
- Moderatore
- Messaggi: 4926
- Iscritto il: 19/07/2005, 18:52
- Città: San Clemente (RN)
- Località: Rimini
- Grazie Ricevuti: 69 volte
Re: software per recuperare la lista giochi di Teknoparrot
SI
Non hai i permessi necessari per visualizzare i file allegati in questo messaggio.
- Gothrek
- Moderatore
- Messaggi: 5498
- Iscritto il: 13/07/2017, 13:30
- Città: Roma
- Grazie Inviati: 20 volte
- Grazie Ricevuti: 313 volte
Re: software per recuperare la lista giochi di Teknoparrot
quando riavvii l'app (naturalmente la textbox è vuota) ma se premi i punti per selezionare una dir lui ha automaticamente settato la precedente quindi devi solo confermare
questa "riselezione" con conferma è necessaria per evitare che avviando il software inneschi prima dell'avvio tutte le attività di caricamento della tabella che "pianterebbe" il software fino alla sua conclusione. Caricamente che potrebbe essere inutile/non voluto se si volesse scegliere una dir diversa
ps ora salva anche la disposizione delle colonne e la larghezza ultima impostata.
- pucci
- Moderatore
- Messaggi: 4926
- Iscritto il: 19/07/2005, 18:52
- Città: San Clemente (RN)
- Località: Rimini
- Grazie Ricevuti: 69 volte
Re: software per recuperare la lista giochi di Teknoparrot
ok perfetto, ora funziona, pensavo che compilasse già la textbox
Re: software per recuperare la lista giochi di Teknoparrot
Ciao Puccipucci ha scritto: ↑01/12/2022, 16:51grazie @Emu!Emu ha scritto: ↑22/11/2022, 1:02 Ciao Pucci
Negli ultimi anni ho latitato il forum per motivi personali, ma sperando di non fare un torto a Gothrek ho buttato giù uno script PowerShell che fa i check che hai chiesto, e volendo scarica pure le icone mancanti.
Per eseguirlo devi salvarlo come file di testo ed estensione .PS1, poi modifichi il path del tuo TecnoParrot e dovrrsti essere a posto. In alto ci sono alcune variabili che puoi modificare
[removed]
Spero ti possa essere utile.
Per questo genere di attività preferisco degli script, perchè si possono modificare al volo in caso di qualche aggiornamento, e ti puoi fare script nuovi per esigenze analoghe tra diversi emulatori.
Emu
ci sarebbero alcune cose da perfezionare:
1) andrebbe aggiunta un ultima colonna con il nome "breve" del gioco (in pratica è il nome del file che viene letto), la colonna dovrebbe avere come titolo "FileName"
2) sembra esserci un problema con la colonna "HasIcon" perchè viene impostata a "No" su alcuni giochi che in realtà l'icona ce l'hanno, precisamente questi
GameName IconName
Akai Katana Shin for NESiCAxLive Icons\AkaiKatakanaShinNesica.png
Baseball Heroes 2 Icons\BaseballHeroes.png
Battle Climaxx! Icons\BattleClimax.png
Big Buck Hunter Pro Home Icons\BBHHome.png
Guilty Gear Xrd REV2 Icons\GGXrdREV2.png
Guilty Gear Xrd REV2 (APM3) Icons\GGXrdREV2.png
Harikiri Baseball Icons\Harikiri.png
Horse Riders 2 Icons\HorseRiders.png
Hot Wheels Icons\HotWheels.png
Infinity Blade FX Icons\InfinityBlade.png
Koihime Enbu Icons\KoihimeEnbu.png
Spiderman Icons\Spiderman.png
Super Street Fighter IV: Arcade Edition Icons\StreetFighterIVArcadeEdition.png
Super Street Fighter IV: Arcade Edition (Export) Icons\StreetFighterIVArcadeEditionEXP.png
Under Night In-Birth Exe:Late[st] Icons\UnderNightInBirthLatest.png
Ti allego la versione con la colonna del FileName:
Check-TeknoParrot-Resources_v1.1.ps1
Codice: Seleziona tutto
#############################################################################
### VARIABILI PERSONALIZZABILI ###
#############################################################################
# Specificare di seguito la directory dove si trova TP, terminando la stringa con "\"
$TeknoParrotFolder = "E:\Emulator\Arcade\TeknoParrot\"
# Per abilitare/disabilitare l'esportazione su CSV
$ExportCSV = $true
# Nome file CSV di Export, creato nella directory di TecnoParrot
$CSVExportFile = "GamesList.csv"
# Delimitatore usato nell'esportazione in CSV
$CSVDelim = ";"
# Per abilitare il download delle icone mancanti
$DownloadMissingIcons = $true
#############################################################################
### COSTANTI - NON TOCCARE ###
#############################################################################
# Estensione dei files delle icone
$IconExtension = "png"
# Questo è l'URL base per scaricarsi le icone, se si abilita il download
$IconsBaseURL = "https://raw.githubusercontent.com/teknogods/TeknoParrotUIThumbnails/master/Icons/"
#############################################################################
### MAIN ###
#############################################################################
# Leggo i files XML dei GamesProfiles
Write-Host "Lettura files XML dei GamesProfiles in" $($TeknoParrotFolder + "GameProfiles\") -ForegroundColor Cyan
$GamesProfiles = Get-ChildItem $($TeknoParrotFolder + "GameProfiles\*.xml")
# Creo l'array vuoto di giochi
$Games = @()
# Processo tutti i files della directory GamesProfiles
Write-Host "Processo i files XML dei GamesProfiles..." -ForegroundColor Cyan
foreach ($GameProfile in $GamesProfiles){
# Leggo il file XML
[xml]$GP = Get-Content $GameProfile.PSPath
# Controllo se esiste il file JSON corrispondente al file XML del GP
$DescriptionFilePath = $TeknoParrotFolder + "Descriptions\" + $GameProfile.BaseName + ".json"
if (Test-Path $DescriptionFilePath){
# Leggo il file JSON corrispondente al file XML del GP
$Json = Get-Content $DescriptionFilePath
$Description = $JSON | ConvertFrom-Json
} else {
Write-Host ""
Write-Host "ATTENZIONE: File $DescriptionFilePath non presente!" -ForegroundColor Yellow
$Description = @{
platform = ""
release_year = ""
nvidia = ""
nvidia_issues = ""
amd = ""
amd_issues = ""
intel = ""
intel_issues = ""
general_issues = ""
}
}
# Verifico se c'è il file con l'icona
if ($GP.GameProfile.IconName.Length -gt 1){
#$IconFilePath = $TeknoParrotFolder + "Icons\" + $GameProfile.BaseName + "." + $IconExtension
$IconFilePath = $TeknoParrotFolder + $GP.GameProfile.IconName
if (Test-Path $IconFilePath){
$HasIcon = "Yes"
} else {
$HasIcon = "No"
if ($DownloadMissingIcons){
$IconName = $GP.GameProfile.IconName.Replace("Icons\","")
Write-Host
Write-Host "Download icona mancante $IconName" -ForegroundColor Magenta
$IconURL = $IconsBaseURL + $IconName
try {
$resp = Invoke-WebRequest -Uri $IconURL -UseBasicParsing -OutFile $IconFilePath
}
catch {
if( $_.Exception.Response.StatusCode.Value__ -eq 200 ) {
#Write-Host "Download OK!"-ForegroundColor Green
} elseif( $_.Exception.Response.StatusCode.Value__ -eq 404 ) {
Write-Host "ERRORE: File non presente all'URL $IconURL"-ForegroundColor Yellow
} else {
Write-Host "WARNING: Errore download file da verificare manualmente" -ForegroundColor Red
}
}
if (Test-Path $IconFilePath){
$HasIcon = "Yes"
}
}
}
}
# Estraggo i campi interessanti e me li salvo in un nuovo oggetto
$Game = [PSCustomObject][ordered]@{
FileName = $GameProfile.BaseName
GameName = $GP.GameProfile.GameName
GameGenre = $GP.GameProfile.GameGenre
IconName = $GP.GameProfile.IconName
EmulationProfile = $GP.GameProfile.EmulationProfile
GameProfileRevision = $GP.GameProfile.GameProfileRevision
Is64Bit = $GP.GameProfile.Is64Bit
EmulatorType = $GP.GameProfile.EmulatorType
DevOnly = $GP.GameProfile.DevOnly
Patreon = $GP.GameProfile.Patreon
ExecutableName = $GP.GameProfile.ExecutableName
ExecutableName2 = $GP.GameProfile.ExecutableName2
HasTwoExecutables = $GP.GameProfile.HasTwoExecutables
platform = $Description.platform
release_year = $Description.release_year
nvidia = $Description.nvidia
nvidia_issues = $Description.nvidia_issues
amd = $Description.amd
amd_issues = $Description.amd_issues
intel = $Description.intel
intel_issues = $Description.intel_issues
general_issues = $Description.general_issues
HasIcon = $HasIcon
}
# Aggiungo il record appena creato all'array
$Games += $Game
Write-Host "." -NoNewline
}
Write-Host
Write-Host
# Mostro i giochi a schermo
$Games | Out-GridView
# Esporto su CSV
if ($ExportCSV){
Write-Host "Esportazione elenco giochi in" $($TeknoParrotFolder + $CSVExportFile) -ForegroundColor Cyan
$Games | Export-Csv $($TeknoParrotFolder + $CSVExportFile) -Delimiter $CSVDelim -NoTypeInformation
}
Ho verificato diversi files e posso dirti questo:
- *Per quanto riguarda Rambo (Che tu però hai), il file indicato nell'XML è "Icons\RAMBO.png" (In maiuscolo) mentre su GitHub si chiama Rambo.png (Con solo la prima lettera minuscola), per questo non riesce a scaricarlo.
*AkaiKatakanaShinNesica ha un typo nel campo IconName Icons\AkaiKatakanaShinNesica.png, quindi in base al nome del campo effettivamente il file che c'è su GitHub ha un nome differente
* BaseballHeroes.png, BattleClimax.png, BBHHome.png, GGXrdREV2.png e Spiderman.png su GitHub non ci sono
* SuperStreetFighterIVArcadeEdition ha come IconName Icons\StreetFighterIVArcadeEdition.png , questo forse è stato rinominato perchè su GitHub il file si chiama SuperStreetFighterIVArcadeEdition.png
Ora non ho tempo di controllarli tutti, ma ti chiedo: se controlli a mano i files che sono nella tua directory Icons, rispetto alla colonna IconName quelli indicati come mancanti ci sono? Da cosa dici che ci sono, hai visto il file o l'icona in TP?
Se effettivamente non hai i file con il nome esatto, visto il numero esiguo di files, io li sistemerei a mano uno per uno, poi rilanci lo script e verifichi se manca ancora qualcosa.
Se può aitare, posso scrivere a schermo l'elenco dei vari files mancanti (JSON e Icone) in due elenchi facilmente fruibili al termine dello script, senza dover aprire il CSV in Excel ed applicare filtri
Emu
Emu
Re: software per recuperare la lista giochi di Teknoparrot
Ciao GothrekGothrek ha scritto: ↑01/12/2022, 22:42diopadre..mi evitavo un paio d'ore di codicepucci ha scritto: ↑01/12/2022, 16:51grazie @Emu!Emu ha scritto: ↑22/11/2022, 1:02 Ciao Pucci
Negli ultimi anni ho latitato il forum per motivi personali, ma sperando di non fare un torto a Gothrek ho buttato giù uno script PowerShell che fa i check che hai chiesto, e volendo scarica pure le icone mancanti.
Per eseguirlo devi salvarlo come file di testo ed estensione .PS1, poi modifichi il path del tuo TecnoParrot e dovrrsti essere a posto. In alto ci sono alcune variabili che puoi modificare
Check-TeknoParrot-Resources.ps1:Spero ti possa essere utile.Codice: Seleziona tutto
############################################################################# ### VARIABILI PERSONALIZZABILI ### ############################################################################# # Specificare di seguito la directory dove si trova TP, terminando la stringa con "\" $TeknoParrotFolder = "E:\Emulator\Arcade\TeknoParrot\" # Per abilitare/disabilitare l'esportazione su CSV $ExportCSV = $true # Nome file CSV di Export, creato nella directory di TecnoParrot $CSVExportFile = "GamesList.csv" # Delimitatore usato nell'esportazione in CSV $CSVDelim = ";" # Per abilitare il download delle icone mancanti $DownloadMissingIcons = $false ############################################################################# ### COSTANTI - NON TOCCARE ### ############################################################################# # Estensione dei files delle icone $IconExtension = "png" # Questo è l'URL base per scaricarsi le icone, se si abilita il download $IconsBaseURL = "https://raw.githubusercontent.com/teknogods/TeknoParrotUIThumbnails/master/Icons/" ############################################################################# ### MAIN ### ############################################################################# # Leggo i files XML dei GamesProfiles Write-Host "Lettura files XML dei GamesProfiles in" $($TeknoParrotFolder + "GameProfiles\") -ForegroundColor Cyan $GamesProfiles = Get-ChildItem $($TeknoParrotFolder + "GameProfiles\*.xml") # Creo l'array vuoto di giochi $Games = @() # Processo tutti i files della directory GamesProfiles Write-Host "Processo i files XML dei GamesProfiles..." -ForegroundColor Cyan foreach ($GameProfile in $GamesProfiles){ # Leggo il file XML [xml]$GP = Get-Content $GameProfile.PSPath # Controllo se esiste il file JSON corrispondente al file XML del GP $DescriptionFilePath = $TeknoParrotFolder + "Descriptions\" + $GameProfile.BaseName + ".json" if (Test-Path $DescriptionFilePath){ # Leggo il file JSON corrispondente al file XML del GP $Json = Get-Content $DescriptionFilePath $Description = $JSON | ConvertFrom-Json } else { Write-Host "" Write-Host "ATTENZIONE: File $DescriptionFilePath non presente!" -ForegroundColor Yellow $Description = @{ platform = "" release_year = "" nvidia = "" nvidia_issues = "" amd = "" amd_issues = "" intel = "" intel_issues = "" general_issues = "" } } # Verifico se c'è il file con l'icona if ($GP.GameProfile.IconName.Length -gt 1){ #$IconFilePath = $TeknoParrotFolder + "Icons\" + $GameProfile.BaseName + "." + $IconExtension $IconFilePath = $TeknoParrotFolder + $GP.GameProfile.IconName if (Test-Path $IconFilePath){ $HasIcon = "Yes" } else { $HasIcon = "No" if ($DownloadMissingIcons){ $IconName = $GP.GameProfile.IconName.Replace("Icons\","") Write-Host Write-Host "Download icona mancante $IconName" -ForegroundColor Magenta $IconURL = $IconsBaseURL + $IconName try { $resp = Invoke-WebRequest -Uri $IconURL -UseBasicParsing -OutFile $IconFilePath } catch { if( $_.Exception.Response.StatusCode.Value__ -eq 200 ) { #Write-Host "Download OK!"-ForegroundColor Green } elseif( $_.Exception.Response.StatusCode.Value__ -eq 404 ) { Write-Host "ERRORE: File non presente all'URL $IconURL"-ForegroundColor Yellow } else { Write-Host "WARNING: Errore download file da verificare manualmente" -ForegroundColor Red } } if (Test-Path $IconFilePath){ $HasIcon = "Yes" } } } } # Estraggo i campi interessanti e me li salvo in un nuovo oggetto $Game = [PSCustomObject][ordered]@{ GameName = $GP.GameProfile.GameName GameGenre = $GP.GameProfile.GameGenre IconName = $GP.GameProfile.IconName EmulationProfile = $GP.GameProfile.EmulationProfile GameProfileRevision = $GP.GameProfile.GameProfileRevision Is64Bit = $GP.GameProfile.Is64Bit EmulatorType = $GP.GameProfile.EmulatorType DevOnly = $GP.GameProfile.DevOnly Patreon = $GP.GameProfile.Patreon ExecutableName = $GP.GameProfile.ExecutableName ExecutableName2 = $GP.GameProfile.ExecutableName2 HasTwoExecutables = $GP.GameProfile.HasTwoExecutables platform = $Description.platform release_year = $Description.release_year nvidia = $Description.nvidia nvidia_issues = $Description.nvidia_issues amd = $Description.amd amd_issues = $Description.amd_issues intel = $Description.intel intel_issues = $Description.intel_issues general_issues = $Description.general_issues HasIcon = $HasIcon } # Aggiungo il record appena creato all'array $Games += $Game Write-Host "." -NoNewline } Write-Host Write-Host # Mostro i giochi a schermo $Games | Out-GridView # Esporto su CSV if ($ExportCSV){ Write-Host "Esportazione elenco giochi in" $($TeknoParrotFolder + $CSVExportFile) -ForegroundColor Cyan $Games | Export-Csv $($TeknoParrotFolder + $CSVExportFile) -Delimiter $CSVDelim -NoTypeInformation }
Per questo genere di attività preferisco degli script, perchè si possono modificare al volo in caso di qualche aggiornamento, e ti puoi fare script nuovi per esigenze analoghe tra diversi emulatori.
Emu
ci sarebbero alcune cose da perfezionare:
1) andrebbe aggiunta un ultima colonna con il nome "breve" del gioco (in pratica è il nome del file che viene letto), la colonna dovrebbe avere come titolo "FileName"
2) sembra esserci un problema con la colonna "HasIcon" perchè viene impostata a "No" su alcuni giochi che in realtà l'icona ce l'hanno, precisamente questi
GameName IconName
Akai Katana Shin for NESiCAxLive Icons\AkaiKatakanaShinNesica.png
Baseball Heroes 2 Icons\BaseballHeroes.png
Battle Climaxx! Icons\BattleClimax.png
Big Buck Hunter Pro Home Icons\BBHHome.png
Guilty Gear Xrd REV2 Icons\GGXrdREV2.png
Guilty Gear Xrd REV2 (APM3) Icons\GGXrdREV2.png
Harikiri Baseball Icons\Harikiri.png
Horse Riders 2 Icons\HorseRiders.png
Hot Wheels Icons\HotWheels.png
Infinity Blade FX Icons\InfinityBlade.png
Koihime Enbu Icons\KoihimeEnbu.png
Spiderman Icons\Spiderman.png
Super Street Fighter IV: Arcade Edition Icons\StreetFighterIVArcadeEdition.png
Super Street Fighter IV: Arcade Edition (Export) Icons\StreetFighterIVArcadeEditionEXP.png
Under Night In-Birth Exe:Late[st] Icons\UnderNightInBirthLatest.png
np
scusa l'ignoranza, ma siti di scraping tipo screenscraper piuttosto che adb non hanno info su questi giochi?
Scusami ma mi ero messo a fae lo script in background nei ritagli di tempo, poi quando sono andato a postarlo ho trovato le tue risposte, ho preferito postarlo ugualmente per non buttare via l'oretta di lavoro, anche perchè ho pensato che potrebbe essere utile anche ad altri per altre situazioni riciclando pezzi
Emu
Emu
- Gothrek
- Moderatore
- Messaggi: 5498
- Iscritto il: 13/07/2017, 13:30
- Città: Roma
- Grazie Inviati: 20 volte
- Grazie Ricevuti: 313 volte
Re: software per recuperare la lista giochi di Teknoparrot
@Emu
hai fatto benissimo, è stata cmq una scusa per capire qualcosa in piu' su teknoparrot che ignoravo completamente.
hai fatto benissimo, è stata cmq una scusa per capire qualcosa in piu' su teknoparrot che ignoravo completamente.