--- BasiliskII/src/adb.cpp 2003/08/16 03:28:56 1.10 +++ BasiliskII/src/adb.cpp 2004/11/13 14:28:49 1.13 @@ -1,7 +1,7 @@ /* * adb.cpp - ADB emulation (mouse/keyboard) * - * Basilisk II (C) 1997-2002 Christian Bauer + * Basilisk II (C) 1997-2004 Christian Bauer * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -377,18 +377,18 @@ void ADBInterrupt(void) // Update mouse position (absolute) if (mx != old_mouse_x || my != old_mouse_y) { #ifdef POWERPC_ROM - static const uint8 proc[] = { - 0x2f, 0x08, // move.l a0,-(sp) - 0x2f, 0x00, // move.l d0,-(sp) - 0x2f, 0x01, // move.l d1,-(sp) - 0x70, 0x01, // moveq #1,d0 (MoveTo) - 0xaa, 0xdb, // CursorDeviceDispatch - M68K_RTS >> 8, M68K_RTS & 0xff + static const uint16 proc[] = { + PW(0x2f08), // move.l a0,-(sp) + PW(0x2f00), // move.l d0,-(sp) + PW(0x2f01), // move.l d1,-(sp) + PW(0x7001), // moveq #1,d0 (MoveTo) + PW(0xaadb), // CursorDeviceDispatch + PW(M68K_RTS) }; r.a[0] = ReadMacInt32(mouse_base + 4); r.d[0] = mx; r.d[1] = my; - Execute68k((uint32)proc, &r); + Execute68k(Host2MacAddr((uint8 *)proc), &r); #else WriteMacInt16(0x82a, mx); WriteMacInt16(0x828, my);