private void TileEditorToolStripMenuItem_Click(object sender, EventArgs e) { if (tileEditor == null) { tileEditor = new TileEditor(); tileEditor.SetMemory(kernel.MemMgr); tileEditor.SetResourceChecker(kernel.ResCheckerRef); gpu.TileEditorMode = true; // Set Vicky into Tile mode previousGraphicMode = kernel.MemMgr.VICKY.ReadByte(0); kernel.MemMgr.VICKY.WriteByte(0, 0x10); // Enable borders kernel.MemMgr.VICKY.WriteByte(4, 1); CenterForm(tileEditor); tileEditor.Show(); tileEditor.FormClosed += new FormClosedEventHandler(EditorWindowClosed); // coordinate between the tile editor window and the GPU canvas this.TileClicked += new TileClickEvent(tileEditor.TileClicked_Click); } else { tileEditor.BringToFront(); } }