--- nono/wx/wxplanemonitor.cpp 2026/04/29 17:05:19 1.1.1.3 +++ nono/wx/wxplanemonitor.cpp 2026/04/29 17:05:23 1.1.1.4 @@ -139,20 +139,23 @@ WXPlaneVRAMBitmapPanel::GenPalette() { if (apply_palette) { // パレットを適用する場合 - const ColorXBGR *vmpal; - // 雑に X680x0/LUNA 対応 + // (雑に X680x0/LUNA 対応) + const std::vector *vmpal; if (videoctlr) { - vmpal = &(videoctlr->GetHostPalette())[0]; + vmpal = &videoctlr->GetHostPalette(); } else { - vmpal = &(bt45x->GetHostPalette())[0]; + vmpal = &bt45x->GetHostPalette(); } - const Color bg = vmpal[0].ToColor(); - for (int i = 0; i < pal.size(); i++) { - if ((i & planemask)) { - int n = i % 16; - pal[i] = vmpal[n].ToColor(); + int vmpal_size = vmpal->size(); + const Color bg = (*vmpal)[0].ToColor(); + int d = 0; + int s; + for (; d < pal.size(); d++) { + s = d % vmpal_size; + if ((s & planemask)) { + pal[d] = (*vmpal)[s].ToColor(); } else { - pal[i] = bg; + pal[d] = bg; } } } else {