diff --git a/src/debugger/gui/CartFA2Widget.cxx b/src/debugger/gui/CartFA2Widget.cxx index 1c2562628..e7dcba933 100644 --- a/src/debugger/gui/CartFA2Widget.cxx +++ b/src/debugger/gui/CartFA2Widget.cxx @@ -22,7 +22,8 @@ CartridgeFA2Widget::CartridgeFA2Widget( GuiObject* boss, const GUI::Font& lfont, const GUI::Font& nfont, int x, int y, int w, int h, CartridgeFA2& cart) - : CartridgeEnhancedWidget(boss, lfont, nfont, x, y, w, h, cart) + : CartridgeEnhancedWidget(boss, lfont, nfont, x, y, w, h, cart), + myCartFA2(cart) { int xpos = 2, ypos = initialize(); @@ -74,20 +75,18 @@ string CartridgeFA2Widget::description() void CartridgeFA2Widget::handleCommand(CommandSender* sender, int cmd, int data, int id) { - CartridgeFA2& cart = dynamic_cast(myCart); - switch(cmd) { case kFlashErase: - cart.flash(0); + myCartFA2.flash(0); break; case kFlashLoad: - cart.flash(1); + myCartFA2.flash(1); break; case kFlashSave: - cart.flash(2); + myCartFA2.flash(2); break; default: diff --git a/src/debugger/gui/CartFA2Widget.hxx b/src/debugger/gui/CartFA2Widget.hxx index 98508644c..06865c495 100644 --- a/src/debugger/gui/CartFA2Widget.hxx +++ b/src/debugger/gui/CartFA2Widget.hxx @@ -33,9 +33,7 @@ class CartridgeFA2Widget : public CartridgeEnhancedWidget virtual ~CartridgeFA2Widget() = default; private: - string manufacturer() override { return "Chris D. Walton (Star Castle 2600 Arcade)"; } - - string description() override; + CartridgeFA2& myCartFA2; ButtonWidget *myFlashErase{nullptr}, *myFlashLoad{nullptr}, *myFlashSave{nullptr}; @@ -45,6 +43,11 @@ class CartridgeFA2Widget : public CartridgeEnhancedWidget kFlashSave = 'flSV' }; + private: + string manufacturer() override { return "Chris D. Walton (Star Castle 2600 Arcade)"; } + + string description() override; + private: void handleCommand(CommandSender* sender, int cmd, int data, int id) override; diff --git a/src/debugger/gui/CartWDWidget.cxx b/src/debugger/gui/CartWDWidget.cxx index 94d7e8060..268e81bf1 100644 --- a/src/debugger/gui/CartWDWidget.cxx +++ b/src/debugger/gui/CartWDWidget.cxx @@ -22,7 +22,8 @@ CartridgeWDWidget::CartridgeWDWidget( GuiObject* boss, const GUI::Font& lfont, const GUI::Font& nfont, int x, int y, int w, int h, CartridgeWD& cart) - : CartridgeEnhancedWidget(boss, lfont, nfont, x, y, w, h, cart) + : CartridgeEnhancedWidget(boss, lfont, nfont, x, y, w, h, cart), + myCartWD(cart) { initialize(); } @@ -45,8 +46,7 @@ string CartridgeWDWidget::description() string CartridgeWDWidget::hotspotStr(int bank, int segment, bool prefix) { ostringstream info; - CartridgeWD& cart = dynamic_cast(myCart); - CartridgeWD::BankOrg banks = cart.ourBankOrg[bank]; + CartridgeWD::BankOrg banks = myCartWD.ourBankOrg[bank]; info << "(" << (prefix ? "hotspot " : "") << "$" << Common::Base::HEX1 << (myCart.hotspot() + bank) << ") [" diff --git a/src/debugger/gui/CartWDWidget.hxx b/src/debugger/gui/CartWDWidget.hxx index 746d62e63..0201cffa5 100644 --- a/src/debugger/gui/CartWDWidget.hxx +++ b/src/debugger/gui/CartWDWidget.hxx @@ -31,6 +31,9 @@ class CartridgeWDWidget : public CartridgeEnhancedWidget CartridgeWD& cart); virtual ~CartridgeWDWidget() = default; +private: + CartridgeWD& myCartWD; + private: string manufacturer() override { return "Wickstead Design"; }