Dreamcast:Flycast Emulator: Difference between revisions

From ConsoleMods Wiki
Jump to navigation Jump to search
(This will be heavily changed shortly)
 
No edit summary
Line 145: Line 145:
When Prompted "Are you sure you want to save all settings to flash?", Select "Yes".
When Prompted "Are you sure you want to save all settings to flash?", Select "Yes".
Now, we can select "Exit" and proceed as normal in the main game.
Now, we can select "Exit" and proceed as normal in the main game.
=== Launching "Ives' Pack" PSOV2 From Flycast ===
'''''Flycast Online Warnings:
1 - Do not use save states while in online play! It can break things.
2 - Do not pause/bring up the quick menu while in online play! It can break things.
3 - To save progress in PSO, you must exit the game back to the main menu!'''''
As you may have observed already, Flycast doesn't automatically detect the '''IVES_PSOV2_US_R2_EP.cdi''' inside its built-in file explorer to launch. We can tell Flycast to launch it a couple of different ways:
====Normal Way====
Flycast needs to be pointed to a directory to populate the internal file launcher. Navigate to the Options Menu. In the Settings / General Tab, find the "Content Location" field.
[[File:26.png]]
Click "Add" and navigate to your c:/flycast folder. The folder should now be listed. When you back out, the IVES_PSOV2_US_R2_EP.cdi should be listed. From here, you can select the entry to boot into the game.
====Lazy Way====
To launch the '''IVES_PSOV2_US_R2_EP.cdi''', simply navigate your file explorer to the c:/flycast directory and drag-and-drop the Ives's .cdi onto the flycast .exe file. The emulator should launch, starting the game.
====Fancy Way====
Start by simplifying the file name of the Flycast emulator .exe. The long file name is meant as a version marker, but for our purposes we should rename it to something simpler. Right click on the executable and select "Rename". I've renamed mine for this example '''"flycast"'''. The full file with extension would be '''"flycast.exe"'''.
With out emulator renamed, let's make a link that opens Ives's PSOV2 Pack automatically.
From your c:/flycast directory, right-click the recently renamed "flycast.exe" file and select "Create Shortcut". Windows will place a shortcut in the same directory.
Now right-click the link we just created and select "Rename" to give the shortcut a more specific name for our task. I chose to rename mine "PSOV2 For Flycast Launcher", but rename it anything you prefer.
Finally, right-click the link one last time and select "Properties".
At the end of the "Target" field, enter a space (one push of the spacebar) and type or copy and paste the name of the Ives's .CDI. Unless it was renamed, the pack is titled "IVES_PSOV2_US_R2_EP.cdi".
If you have followed the tutorial example of "c:/flycast", and your Ives's Pack is named "IVES_PSOV2_US_R2_EP.cdi", you can simply copy and paste the following into your "Target" field.
C:\flycast\flycast.exe IVES_PSOV2_US_R2_EP.cdi
[[File:21.png]]
'''''We should now have a handy shortcut that we can copy to our desktop or wherever we like to boot into PSO with a double-click!'''''
When you first boot into the "Ives' Pack" PSOV2 from your Flycast emulator, scroll up and refer to the [[Dreamcast:Phantasy_Star_Online_Connection_Guide#Entering_Your_SNAK_on_PSO|Enter Your SNAK on PSO]] section for details and help getting started.


=== Final Notes About Flycast (PC) ===
=== Final Notes About Flycast (PC) ===
Line 191: Line 150:


'''Closing The Game:''' When in windowed mode, it is simple to close the Flycast with the X in the top-right corner. As mentioned above, you can toggle to windowed mode with Alt-Enter.  
'''Closing The Game:''' When in windowed mode, it is simple to close the Flycast with the X in the top-right corner. As mentioned above, you can toggle to windowed mode with Alt-Enter.  
'''Remember to back out to the main menu to save your PSO progress!'''


== Flycast for Android and PSO ==
== Flycast for Android and PSO ==

Revision as of 00:20, 23 April 2022

Setting Up Flycast

To start, we will need a copy of Flycast.

You can download a nightly build of Flycast here.

The links at the top of the page are the latest builds. Grab the Windows x64 download.

15.png

Extract the .zip file to the folder of your choosing. I would keep your directory simple, like c:\flycast, but so long as you know the directory anywhere will work. The zip should contain one .exe file that is the Flycast emulator program. I will use "c:\flycast" as the working folder in the following examples for simplicity's sake.

Before we can launch the emulator, we need to aquire a Dreamcast BIOS file.

Specifically, we need dc_boot.bin.

We cannot link directly to a Dreamcast BIOS file, but a quick google search for "Dreamcast Bios" should turn up something you can use.

When you have sourced a copy of "dc_boot.bin", place the file in your C:\flycast folder.

We will also need an "Ives' Pack" .CDI image for our Flycast online setup.

Refer to the above Connecting To Sylverant section of this guide for information on the "Ives' Packs".

When done, your c:\flycast folder should look something like this:

17.png

Before we first boot the emulator, we need to decide how we want to configure our controls.

Flycast Controller Configuration

To get the most out of PSOV2 with Flycast, I strongly recommend a controller. Not only will this make playing PSO more enjoyable, but it will free up our PC's keyboard for in-game chat and navigating menus.

Flycast works with any controller Windows can connect to, and my tests have had "zero-configuration required" success with PlayStation 4 controllers over the USB, as well as Xbox One controller synced over Bluetooth.

If you do not already have a gamepad to use, I recommend picking up the 8BitDo SN30 Pro USB as it is cheap, well-made and doesn't require special configuration on your PC. It will connect as an "Xbox 360 Controller" in Windows and is compatible with basically everything.

18.png

You can pick one up on Amazon here.

This guide will assume you have a controller for your PC set up, so we can cover how to configure the game pad / keyboard combo that will work the best with PSO.

With our controller of choice plugged in, launch the Flycast .exe from inside our c:/flycast directory.

19.png

By default, Flycast will launch in a window. Use your mouse to click on the "Settings" option in the top-right of the window. Select the "Controls" tab. We want to change the following settings:

In the Settings / Controls tab:

Dreamcast Devices:
Device A - "Sega Controller" - "Sega VMU" - "Sega VMU"
Device B - "Keyboard"

Physical Devices:
SDL-Keyboard: Port = "None"
SDL-Xbox 360 Controller: Port = "A"

20.png

In the above image I have highlighted the key settings.

In a nutshell, we are telling Flycast to not use the default keyboard control assignments, and that we want our keyboard inputs to simulate a keyboard plugged into Port B, the same as you would with a real Dreamcast. This allows us all the features PSO offered players with keyboards on the Dreamcast, such as keyboard in-game chat and navigating the menus with keyboard commands.

As an aside, some of the more esoteric commands you can enter in PSO with the keyboard are detailed here.

Remapping The Menu Button

By default, Flycast's controller button mappings should be ideal for most games, in my case with the 8BitDo SN30 Pro USB gamepad no further configuration was required for gameplay. However, we have one change that I recommend for PSO online play specifically.

In Flycast, there is a quick menu that can be launched that pauses the game grants access access to disc swapping, save states, and the option menu.

This would normally be a handy feature, but while we are in online play, it is a bad idea to pause or use save states.

Pausing or using save states makes the game client out of sync with the server, and can crash the game or possibly corrupt your character data.

I would suggest that you rebind your controller mapping to disable accidental access to the Quick Menu.

We can accomplish this by navigating to the Settings/Controls window and clicking the "Map" button to the right of our SDL Controller (whatever your gamepad is labeled).

22.png

Scroll down a bit and find where the "Menu" button is located. By default, it is going to be mapped to your "Select" button on 8BitDo or PlayStation controllers, or "Map" button on Xbox controllers.

As far as I can tell, there is no way to delete a controller input binding in Flycast, buy we can simply move the button bind to something that won't break our online game, such as "Left Trigger".

Press "Map" next to "Left Trigger", and press the "Select" button on your gamepad before the countdown runs out.

23.png

In the above example, you can see our controller mapping (6) has moved from the "Menu" to "Left Trigger" assignment. This will prevent us from accidentally pausing the game if we press the select button, and also prevents the quick menu from accessing the save state functions of Flycast. We can simply reverse this change for offline play or for playing other games on Flycast.

Controller Drift in Flycast

While it is not currently available in the menu, Flycast has a dead zone feature that can be used to combat controller drift if you are experiencing issues with characters "moving on their own".

ONLY after you have made an alteration to the controller configuration, Flycast will create a remap file and folder in its main directory, for example "c:/flycast/Mappings/SDL_Xbox 360 Controller.txt".

From here, you can add a line to the config to change the default dead zone to whatever you prefer, in the following example we are increasing the defualt 10% deadzone to 15%:

[emulator]
dead_zone = 15

If you are experiencing controller drift, experiment with this value until you find the lowest setting that corrects the issue.

Additional Flycast Configuration and Optional Settings

Going back into the options menu, we have a few more more settings to configure.

We want to change the language settings to English.

In the Settings / General Tab:
Language = English

Most Dreamcast games (including PSO) support a higher resolution VGA mode. We can set that now.

In the Settings / General Tab:
Cable = VGA

Widescreen [optional]: Widescreen mode will fill the entire 16:9 display when in full-screen mode. This is a emulator trick as the original game was presented in a 4:3 aspect ratio. While there might be a couple graphical pop-ins and inconsistencies, (especially when not in full screen mode), I find PSOV2 to be very attractive and playable with widescreen mode enabled. To enable:

In the Settings / Video Tab:
Check the "Widescreen" Box.

Upscaled Graphics [optional]: If you have a modestly capable graphics card and PC, you can also change the Scaling (SSAA) from the default 1.0 to something higher. I recommend starting at 2.0 and seeing if the game still plays smoothly. To do so, set:

In the Settings / Video Tab:
Scaling (SSAA) = 2.0

Broadband (BBA) Mode [optional]

All Dreamcast shipped with a 56k modem that every online game supported. However, a handful of games supported the Broadband Adapter (BBA) accessory. The BBA replaced the 56k modem and used Ethernet networking to deliver much higher internet speeds. Phantasy Star Online V2 through Flycast supports the BBA, so we can expect a bit better online performance by enabling it. To enable BBA Mode:

In the Settings - Advanced - Networking Tab:
Check the "Broadband Adapter Emulation" Box.

Using the broadband adapter will require an additional configuration step. The Ives's Pack has a BBA configuration screen from the Phantasy Star Online V2 main menu, accessible by selecting "WEBSITE".

24.png

From here, we can ignore the actual configuration. We just need something saved to the emulated Dreamcast's flash memory for PSO and Flycast to connect. Select "Save To Flash".


25.png

When Prompted "Are you sure you want to save all settings to flash?", Select "Yes". Now, we can select "Exit" and proceed as normal in the main game.

Final Notes About Flycast (PC)

Alt-Enter: In Flycast, you can press Alt-Enter to enter and exit full screen mode. The widescreen hacks will not be enabled until you have entered full screen.

Closing The Game: When in windowed mode, it is simple to close the Flycast with the X in the top-right corner. As mentioned above, you can toggle to windowed mode with Alt-Enter.

Flycast for Android and PSO

Flycast also has a fully functional Android version as well that we can use to play PSOV2 Online.

To set this up, we will need to install and use three programs on our Android device: The Flycast emulator apk, a file management app (in this example I am using ZArchiver), and a way to download the Ives' Pack .CDI using a Torrent downloader app (in this example I am using Flud).

We will also need to source the Dreamcast BIOS file "dc_boot.bin", and do some basic configuration on Flycast similar to what was required in the Windows version.

Downloading Flycast for Android

First, we need to grab a nightly build of Flycast from the Flycast Github page. Navigate your Android device to here. In this example I am using Chrome as my web browser.

Flycast1.png

Look for the latest build of the Android release. Long-press the Android release download link.

Flycast2.png

Once the long-press menu pops up, we need to select "Download link".

Flycast3.png

Because the nightly builds of Flycast aren't coming from a "trusted" source (such as the app store), your android device is trying to protect you from running malicious software. However, we trust Flycast and want to run it. Choose "Keep" to continue.

Flycast4.png

Once again your device is warning you. We can choose "OK" to keep Flycast.

Flycast5.png

Once downloaded, you should see this prompt at the bottom of your device. Press the "Open" link to launch the Flycast APK.

Flycast6.png

Once the Flycast APK launches, it will prompt you to install the software on your device. Choose "Install" to continue.

Flycast7.png

We don't want to open the program just yet, click "Done" to continue.

Flycast8.png

If Flycast was installed correctly, we should have a new shortcut on our device's home screen. Before we run Flycast and PSOV2, we need to complete a few more steps.