Closed sy2002 closed 1 year ago
@MJoergen your original bug report on Skype was:
In the OSM the menu default shows:
Drive x:<Mount Drive>
Drive y:%s
Drive z:%s
Only drive x enters the file selection handler, but when I select a file, and return to the main menu, the file name still doesn't show.
I cannot reproduce this bug in the M2M framework, which is good news.
In Skype you wrote:
This works correctly in the MiSTer2MEGA repo, so it's a bug introduced by my manual merge.
Do you have any ideas what could have gone wrong ?
If you mean by "manual merge" that you merged the M2M framework manually to the Galaga core (because you mentioned this in a Skype chat related to the Galaga core), the main reasons I would see why the VDrive system is not working in the Galaga core are these:
Did you copy all the files from the M2M/rom
folder (including subfoldes) from the M2M framework to Galaga?
Assuming that the answer is yes, here is what I found:
For the VDrive system to work, it needs the VDrive device as configured in CORE/vhdl/globals.vhd
. Looking at Galaga's globals.vhd
I see, that there are three VDrives configured, just as in the demo core, so this is correct.
In the Galaga core's globals.vhd
the device ID for the VDrive device is configured as constant C_DEV_DEMO_VD : std_logic_vector(15 downto 0) := x"0101";
But the in Galaga's mega65.vhd
, there is no device having ID x"0101":
---------------------------------------------------------------------------------------------
-- Core specific device handling (QNICE clock domain)
---------------------------------------------------------------------------------------------
core_specific_devices : process(all)
begin
-- make sure that this is x"EEEE" by default and avoid a register here by having this default value
qnice_dev_data_o <= x"EEEE";
qnice_dev_wait_o <= '0';
case qnice_dev_id_i is
-- @TODO YOUR RAMs or ROMs (e.g. for cartridges) or other devices here
-- Device numbers need to be >= 0x0100
when others => null;
end case;
end process core_specific_devices;
And consequently (as Galaga doesn't need virtual drives), there is no instantiation of MiSTer2MEGA65's vdrive system, neither in mega65.vhd
nor in main.vhd
: M2M/vhdl/vdrives.vhd
.
The menu system actually needs a correctly instantiated vdrives.vhd
and a working vdrives device to function properly.
So this is the reason for the behavior you experienced.
With this I conclude:
It "works as intended". But this reminds me that I should soon take the time to document how the vdrive system works in the M2M wiki :-)
I am closing this issue as invalid.
After merging from newest C64 enhancements: Only one vdrive is working