3 |
|
* |
4 |
|
* (C) 1997 Andreas Dehmel |
5 |
|
* |
6 |
< |
* Frodo (C) 1994-1997,2002-2003 Christian Bauer |
6 |
> |
* Frodo (C) 1994-1997,2002-2005 Christian Bauer |
7 |
|
* |
8 |
|
* This program is free software; you can redistribute it and/or modify |
9 |
|
* it under the terms of the GNU General Public License as published by |
527 |
|
PrefsWindow->WriteIconNumber(Icon_Prefs_CycleBad,ThePrefs.BadLineCycles); |
528 |
|
PrefsWindow->WriteIconNumber(Icon_Prefs_CycleCIA,ThePrefs.CIACycles); |
529 |
|
PrefsWindow->WriteIconNumber(Icon_Prefs_CycleFloppy,ThePrefs.FloppyCycles); |
530 |
+ |
|
531 |
+ |
#ifdef SUPPORT_XROM |
532 |
+ |
// XROM |
533 |
+ |
PrefsWindow->SetIconState(Icon_Prefs_XROMOn,(ThePrefs.XPandROMOn)?IFlg_Slct:0,IFlg_Slct); |
534 |
+ |
PrefsWindow->WriteIconText(Icon_Prefs_XROMPath,ThePrefs.XPandROMFile); |
535 |
+ |
#endif |
536 |
|
} |
537 |
|
|
538 |
|
|
613 |
|
prefs->CIACycles = PrefsWindow->ReadIconNumber(Icon_Prefs_CycleCIA); |
614 |
|
prefs->FloppyCycles = PrefsWindow->ReadIconNumber(Icon_Prefs_CycleFloppy); |
615 |
|
|
616 |
+ |
#ifdef SUPPORT_XROM |
617 |
+ |
// XROM |
618 |
+ |
pread_opt(XPandROMOn,XROMOn); |
619 |
+ |
strcpy(prefs->XPandROMFile,PrefsWindow->ReadIconText(Icon_Prefs_XROMPath)); |
620 |
+ |
#endif |
621 |
+ |
|
622 |
|
// Finally make the changes known to the system: |
623 |
|
the_c64->NewPrefs(prefs); |
624 |
|
ThePrefs = *prefs; |
1611 |
|
i = -1; // indicator whether file is accepted |
1612 |
|
if ((Block[5] == EmuWindow->MyHandle()) && (Block[10] == FileType_C64File)) {i=0;} |
1613 |
|
else if ((Block[5] == EmuWindow->MyHandle()) && (Block[10] == FileType_Data)) {i=0;} |
1614 |
< |
else if ((Block[5] == PrefsWindow->MyHandle()) && (Block[10] == FileType_Text)) {i=0;} |
1614 |
> |
else if ((Block[5] == PrefsWindow->MyHandle()) && ((Block[10] == FileType_Text) || (Block[10] == FileType_C64File))) {i=0;} |
1615 |
|
else if ((Block[5] == ConfigWindow->MyHandle()) && (Block[10] == FileType_Text)) {i=0;} |
1616 |
|
if (i >= 0) |
1617 |
|
{ |
1671 |
|
Block[MsgB_YourRef] = Block[MsgB_MyRef]; Block[MsgB_Action] = Message_DataLoadAck; |
1672 |
|
Wimp_SendMessage(17,Block,Block[MsgB_Sender],Block[6]); |
1673 |
|
} |
1674 |
+ |
else if ((Block[6] == Icon_Prefs_XROMPath) && (Block[10] == FileType_C64File)) |
1675 |
+ |
{ |
1676 |
+ |
PrefsWindow->WriteIconText(Icon_Prefs_XROMPath,((char*)Block)+44); |
1677 |
+ |
Block[MsgB_YourRef] = Block[MsgB_MyRef]; Block[MsgB_Action] = Message_DataLoadAck; |
1678 |
+ |
Wimp_SendMessage(17,Block,Block[MsgB_Sender],Block[6]); |
1679 |
+ |
} |
1680 |
|
else // interpret as drive path (if dragged on one of the drive path icons) |
1681 |
|
{ |
1682 |
|
switch (Block[6]) |
1685 |
|
case Icon_Prefs_Dr9Path: i = 1; break; |
1686 |
|
case Icon_Prefs_Dr10Path: i = 2; break; |
1687 |
|
case Icon_Prefs_Dr11Path: i = 3; break; |
1688 |
< |
default: -1; break; |
1688 |
> |
default: i = -1; break; |
1689 |
|
} |
1690 |
|
if (i >= 0) {NewDriveImage(i,Block,false);} |
1691 |
|
} |