5thWolf Posted Monday at 01:57 AM Posted Monday at 01:57 AM Well, it use to be just fine a while back but now Kega fusion is having "highdpiaware" issues (When full screen you only see 1/4 of the screen) in Win11. If I make a .bat file with highdpiaware and run KF its all perfect. If I run the .bat it through LB it launches but doesn't load the game. I think I tried every checkbox for loading the rom in the emulator options. So my question is, is there a command or anything I can put in LB to launch emulators with highdpiaware so I can avoid using a .bat? And if not can anyone help me figure out how to run KF with the .bat and the game? Quote
5thWolf Posted Monday at 02:10 AM Author Posted Monday at 02:10 AM I read that adding "-HighDPIAware true/false" in the emulator's Default Command-line Parameters" might have worked, but it did nothing. Here is screen of what I tried: Quote
JoeViking245 Posted Monday at 12:55 PM Posted Monday at 12:55 PM 10 hours ago, 5thWolf said: If I make a .bat file with highdpiaware and run KF its all perfect. If I run the .bat it through LB it launches but doesn't load the game. Did you set the batch file as an emulator with no command line parameters and in the batch, capturing %1 to pass as the game/ROM? If it works outside of LB, it'll work in LB. I don't have the abandoned Kega Fusion emulator setup on my machine, but if the different platforms it emulates requires different parameters, you'll want to capture %1, %2 (and/or more?) as well. 1 Quote
5thWolf Posted yesterday at 02:22 AM Author Posted yesterday at 02:22 AM I don't know what you mean by capture %1 / 2. But I will try to run the .bat as you mentions see how that goes. Quote
5thWolf Posted yesterday at 02:38 AM Author Posted yesterday at 02:38 AM Seems to run the bat launching KF, however not the game. I tried again each checkbox just incase for ROM loading. but nothing. Just launches KF without the game. Before how I had it above, it launched into the the Sega CD boot screen but stated no CD disc. Now its just KF with nothing loaded at all just the home screen. Quote
JoeViking245 Posted yesterday at 04:03 AM Posted yesterday at 04:03 AM Can you show what your batch file looks like? Also, how are you running it from LaunchBox? As the game (e.g. it's the games application path)? Or did you set it up as an emulator? Can you share screenshot of this? 1 Quote
JoeViking245 Posted yesterday at 11:45 AM Posted yesterday at 11:45 AM 9 hours ago, 5thWolf said: I don't know what you mean by capture %1 I was referring to when you set the batch file as an emulator, LB will pass the games ROM path [as a variable] to it. And in the batch file it (the ROM path) becomes the variable %1. 1 Quote
5thWolf Posted yesterday at 01:23 PM Author Posted yesterday at 01:23 PM (edited) Originally ran the .bat as a game, where it didn't go into the SDC bios, but I removed my command line parameters as you instructed. Second time ran the .bat as emu where it opened the emu just fine but it it just sat in the KF homescreen, also with no commands. Here is screen of what I tried last running it as emu: The .bat file works perfectly running it on it's own. Here is the command: set __COMPAT_LAYER=highdpiaware start "" Fusion.exe Edited yesterday at 01:38 PM by 5thWolf Quote
5thWolf Posted yesterday at 01:32 PM Author Posted yesterday at 01:32 PM (edited) I just added the -scd command in the .bat. It is the only way I could get it to even go into Sega CD after trying to launch it. This is using the .bat as emu. set __COMPAT_LAYER=highdpiaware start "" Fusion.exe -scd Edited yesterday at 01:32 PM by 5thWolf Quote
JoeViking245 Posted yesterday at 01:39 PM Posted yesterday at 01:39 PM 5 minutes ago, 5thWolf said: The .bat file works perfectly running it on it's own. Here is the command: set __COMPAT_LAYER=highdpiaware start "" Fusion.exe This won't load a game. Just the emulator (because it wasn't told what game to load). That's where %1 comes into play. to use an emulator, try: set __COMPAT_LAYER=highdpiaware start "" Fusion.exe -scd %1 You might need to put quotes around it set __COMPAT_LAYER=highdpiaware start "" Fusion.exe -scd "%1" Or you might need to declare it 1st set game=%1 set __COMPAT_LAYER=highdpiaware start "" Fusion.exe -scd %game% And possibly add quotes set game=%1 set __COMPAT_LAYER=highdpiaware start "" Fusion.exe -scd "%game%" 1 Quote
5thWolf Posted yesterday at 01:47 PM Author Posted yesterday at 01:47 PM Oh now I completely see what you meant by the %1 and how LB and the .bat file uses it!!! Trying those now. With and without quotes! Quote
5thWolf Posted yesterday at 02:05 PM Author Posted yesterday at 02:05 PM (edited) None of them worked 😓 Any of the checkboxes needed in the emu set up? Currently none are checked. Edited yesterday at 02:13 PM by 5thWolf Quote
JoeViking245 Posted yesterday at 02:42 PM Posted yesterday at 02:42 PM 21 minutes ago, 5thWolf said: None of them worked 😓 Any of the checkboxes needed in the emu set up? Currently none are checked. Again, I don't use/have that emulator setup. So flying blind here. Remember, you're passing along whatever details to your batch file. So, whatever your batch file requires to be sent to it. And since you're running 'my' batch file, no boxes should be checked. Including boxes in the Associated Platforms section (except for Set As Default Emulator for the platform). I presume when you imported the games, you imported the .cue files. Correct? Try creating a batch file and run it by itself, outside of LaunchBox to start a game. You indicated you did that and it worked, but you didn't show what that one looked like. Should be something like set __COMPAT_LAYER=highdpiaware start "" Fusion.exe -scd "D:\myGames\Sega cd\my favorite game.cue" pause Change the above path to reflect the game that you were testing in LaunchBox, its ROM path. Now see if that works. I added a pause at the end (for testing purposes) so if any errors come about, you should be able to see them. 1 Quote
5thWolf Posted yesterday at 03:21 PM Author Posted yesterday at 03:21 PM No worries at!!! I really appreciate the help! I am learning a lot as well! Yes the game is the cue file and its tracks. And the original .bat file I ran outside of LB was: set __COMPAT_LAYER=highdpiaware start "" Fusion.exe -scd And..... on it! Quote
5thWolf Posted yesterday at 03:25 PM Author Posted yesterday at 03:25 PM Yep it worked perfectly! Here is the .bat: set __COMPAT_LAYER=highdpiaware start "" Fusion.exe -scd "E:\Emulators\Sega\CD\Games\Night Trap (32X) (disc 1) (u).cue" pause Quote
5thWolf Posted yesterday at 03:30 PM Author Posted yesterday at 03:30 PM (edited) Oh was going to ask as well... is it worth asking LB dev team to implement a highdpiaware checkbox for emulators so it does what it needs to like the .bat files do? Seems like it should be doable launching an EMU with it active. Edited yesterday at 03:30 PM by 5thWolf Quote
JoeViking245 Posted yesterday at 03:45 PM Posted yesterday at 03:45 PM 15 minutes ago, 5thWolf said: Yes the game is the cue file and its tracks. And when you edit the game in LaunchBox, the game's ROM path is pointing to the correct .cue file? (Not "and its tracks") 11 minutes ago, 5thWolf said: Yep it worked perfectly! Here is the .bat: set __COMPAT_LAYER=highdpiaware start "" Fusion.exe -scd "E:\Emulators\Sega\CD\Games\Night Trap (32X) (disc 1) (u).cue" pause Good! Now in LB, use the 1st of the 4 examples as your batch-file/emulator. In the Running Script section of this emulator, put Sleep, 3000 queryEnum := ComObjGet("winmgmts:").ExecQuery("" . "Select * from Win32_Process where caption='fusion.exe'")._NewEnum() While queryEnum[proc] t .= proc.CommandLine "`n`n" FileAppend, % t, .\Plugins\CommandLine_Fusion.txt Launch a game using the batch-file/emulator. Wait at least 3 seconds before closing the emulator. Close the emulator. Navigate to your /LaunchBox/Plugins/ folder and open CommandLine_Fusion.txt What's it say? Quote
5thWolf Posted 23 hours ago Author Posted 23 hours ago Yes correct, always has been the cue file. And on it... Quote
5thWolf Posted 23 hours ago Author Posted 23 hours ago ok set example 1 in .bat copied you script into the emu option's "running script" However it didn't create a txt file. Quote
JoeViking245 Posted 23 hours ago Posted 23 hours ago In the emulation section of the game you launched, is it set to use the batch-file/emulator? If you've created more than one test-emulator, is it pointing to the correct one? Is the script I gave you the only thing in the Running Script section? If not, make sure it's at the top. Try changing where caption='fusion.exe'" to where name='fusion.exe'" (in that script). Try using a different emulator that is actually currently active. Like RetroArch with the Genesis Plus GX core. Or Ares. Try removing the 1st line in the batch file (set __COMPAT_LAYER=highdpiaware). Verify it works (even if it's only shows on 1/4 of the screen) with it removed when used as the emulator. Is there something in your graphic card settings you can change specific for "Fusion.exe" where you could run the emulator directly without the need of a batch file. Does the "1/4 of the screen" change to show everything when using the emulator directly from LB if you change your screen Scale (in Windows Display Settings) to 100%? Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.