From 51a9eeae7605e78ed9d884b0953d993d0e0f98e7 Mon Sep 17 00:00:00 2001 From: David Ludwig Date: Sun, 27 Aug 2017 17:05:02 -0400 Subject: [PATCH] fixed issue #14: Basilisk II: make Xcode generate UAE's CPU-emulation sources at build-time --- .../BasiliskII.xcodeproj/project.pbxproj | 366 +- .../src/MacOSX/run_build68k_for_xcode.sh | 33 + BasiliskII/src/MacOSX/run_gencpu_for_xcode.sh | 33 + BasiliskII/src/uae_cpu/cpuemu.cpp | 45296 ---------------- BasiliskII/src/uae_cpu/cpuemu_nf.cpp | 2 - BasiliskII/src/uae_cpu/cpustbl.cpp | 8720 --- BasiliskII/src/uae_cpu/cpustbl_nf.cpp | 2 - BasiliskII/src/uae_cpu/cputbl.h | 4322 -- BasiliskII/src/uae_cpu/defs68k.c | 185 - BasiliskII/src/uae_cpu/osx_generate_files.sh | 22 - 10 files changed, 408 insertions(+), 58573 deletions(-) create mode 100755 BasiliskII/src/MacOSX/run_build68k_for_xcode.sh create mode 100755 BasiliskII/src/MacOSX/run_gencpu_for_xcode.sh delete mode 100644 BasiliskII/src/uae_cpu/cpuemu.cpp delete mode 100644 BasiliskII/src/uae_cpu/cpuemu_nf.cpp delete mode 100644 BasiliskII/src/uae_cpu/cpustbl.cpp delete mode 100644 BasiliskII/src/uae_cpu/cpustbl_nf.cpp delete mode 100644 BasiliskII/src/uae_cpu/cputbl.h delete mode 100644 BasiliskII/src/uae_cpu/defs68k.c delete mode 100755 BasiliskII/src/uae_cpu/osx_generate_files.sh diff --git a/BasiliskII/src/MacOSX/BasiliskII.xcodeproj/project.pbxproj b/BasiliskII/src/MacOSX/BasiliskII.xcodeproj/project.pbxproj index faec22df..a881f455 100644 --- a/BasiliskII/src/MacOSX/BasiliskII.xcodeproj/project.pbxproj +++ b/BasiliskII/src/MacOSX/BasiliskII.xcodeproj/project.pbxproj @@ -13,6 +13,16 @@ 752F27031F242F51001032B4 /* xpram_sdl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 752F27021F242F51001032B4 /* xpram_sdl.cpp */; }; 752F27141F251B5C001032B4 /* SDL2.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 752F270D1F251B4A001032B4 /* SDL2.framework */; }; 752F27151F251B5C001032B4 /* SDL2.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 752F270D1F251B4A001032B4 /* SDL2.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + 753252E91F535A0C0024025B /* build68k.c in Sources */ = {isa = PBXBuildFile; fileRef = 753252E51F5359040024025B /* build68k.c */; }; + 753252EE1F535DD10024025B /* defs68k.c in Sources */ = {isa = PBXBuildFile; fileRef = 753252ED1F535DD10024025B /* defs68k.c */; }; + 753253021F535F210024025B /* gencpu.c in Sources */ = {isa = PBXBuildFile; fileRef = 753253011F535F210024025B /* gencpu.c */; }; + 753253151F5363400024025B /* defs68k.c in Sources */ = {isa = PBXBuildFile; fileRef = 753252ED1F535DD10024025B /* defs68k.c */; }; + 753253201F53650F0024025B /* readcpu.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7539E0CE1F23B25A006B2DF2 /* readcpu.cpp */; }; + 753253311F5368370024025B /* cpuemu_nf.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7532532C1F5368370024025B /* cpuemu_nf.cpp */; }; + 753253321F5368370024025B /* cpuemu.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7532532D1F5368370024025B /* cpuemu.cpp */; }; + 753253331F5368370024025B /* cpustbl_nf.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7532532E1F5368370024025B /* cpustbl_nf.cpp */; }; + 753253341F5368370024025B /* cpustbl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7532532F1F5368370024025B /* cpustbl.cpp */; }; + 753253351F53688D0024025B /* readcpu.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7539E0CE1F23B25A006B2DF2 /* readcpu.cpp */; }; 7539DFBF1F23B17E006B2DF2 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 7539DFBE1F23B17E006B2DF2 /* Assets.xcassets */; }; 7539E1251F23B25A006B2DF2 /* adb.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7539DFC91F23B25A006B2DF2 /* adb.cpp */; }; 7539E1261F23B25A006B2DF2 /* audio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7539DFCA1F23B25A006B2DF2 /* audio.cpp */; }; @@ -52,7 +62,6 @@ 7539E19D1F23B25A006B2DF2 /* mathlib.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7539E0C21F23B25A006B2DF2 /* mathlib.cpp */; }; 7539E19E1F23B25A006B2DF2 /* rounding.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7539E0C41F23B25A006B2DF2 /* rounding.cpp */; }; 7539E1A01F23B25A006B2DF2 /* memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7539E0C91F23B25A006B2DF2 /* memory.cpp */; }; - 7539E1A21F23B25A006B2DF2 /* readcpu.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7539E0CE1F23B25A006B2DF2 /* readcpu.cpp */; }; 7539E1A31F23B25A006B2DF2 /* table68k in Resources */ = {isa = PBXBuildFile; fileRef = 7539E0D11F23B25A006B2DF2 /* table68k */; }; 7539E1E11F23B25A006B2DF2 /* user_strings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7539E1221F23B25A006B2DF2 /* user_strings.cpp */; }; 7539E1E21F23B25A006B2DF2 /* video.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7539E1231F23B25A006B2DF2 /* video.cpp */; }; @@ -94,11 +103,6 @@ 7539E2971F23C5FD006B2DF2 /* newcpu.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7539E2961F23C5FD006B2DF2 /* newcpu.cpp */; }; 7539E29D1F23C83F006B2DF2 /* sys_darwin.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7539E29C1F23C83F006B2DF2 /* sys_darwin.cpp */; }; 7539E29F1F23C939006B2DF2 /* fpu_uae.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7539E29E1F23C939006B2DF2 /* fpu_uae.cpp */; }; - 7539E2A51F23CB9B006B2DF2 /* cpuemu_nf.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7539E2A01F23CB9B006B2DF2 /* cpuemu_nf.cpp */; }; - 7539E2A61F23CB9B006B2DF2 /* cpuemu.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7539E2A11F23CB9B006B2DF2 /* cpuemu.cpp */; }; - 7539E2A71F23CB9B006B2DF2 /* cpustbl_nf.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7539E2A21F23CB9B006B2DF2 /* cpustbl_nf.cpp */; }; - 7539E2A81F23CB9B006B2DF2 /* cpustbl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7539E2A31F23CB9B006B2DF2 /* cpustbl.cpp */; }; - 7539E2A91F23CB9B006B2DF2 /* defs68k.c in Sources */ = {isa = PBXBuildFile; fileRef = 7539E2A41F23CB9B006B2DF2 /* defs68k.c */; }; 7539E2AB1F23CDB7006B2DF2 /* Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 7539E2AA1F23CDB7006B2DF2 /* Info.plist */; }; 756C1B341F252FC100620917 /* utils_macosx.mm in Sources */ = {isa = PBXBuildFile; fileRef = 756C1B331F252FC100620917 /* utils_macosx.mm */; }; 756C1B391F25306A00620917 /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 756C1B381F25306A00620917 /* AppKit.framework */; }; @@ -140,6 +144,34 @@ remoteGlobalIDString = BECDF5FE0761BA81005FE872; remoteInfo = Framework; }; + 7532530B1F53611F0024025B /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 7539DFAA1F23B17E006B2DF2 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 753252D91F5358D30024025B; + remoteInfo = build68k; + }; + 7532531A1F5364030024025B /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 7539DFAA1F23B17E006B2DF2 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 753252F21F535E1E0024025B; + remoteInfo = gencpu; + }; + 7532531C1F53640B0024025B /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 7539DFAA1F23B17E006B2DF2 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 753253071F5360E30024025B; + remoteInfo = RunBuild68k; + }; + 7532531E1F5364170024025B /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 7539DFAA1F23B17E006B2DF2 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 753253161F5363D20024025B; + remoteInfo = RunGencpu; + }; /* End PBXContainerItemProxy section */ /* Begin PBXCopyFilesBuildPhase section */ @@ -154,6 +186,24 @@ name = "Embed Frameworks"; runOnlyForDeploymentPostprocessing = 0; }; + 753252D81F5358D30024025B /* CopyFiles */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = /usr/share/man/man1/; + dstSubfolderSpec = 0; + files = ( + ); + runOnlyForDeploymentPostprocessing = 1; + }; + 753252F11F535E1E0024025B /* CopyFiles */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = /usr/share/man/man1/; + dstSubfolderSpec = 0; + files = ( + ); + runOnlyForDeploymentPostprocessing = 1; + }; /* End PBXCopyFilesBuildPhase section */ /* Begin PBXFileReference section */ @@ -162,6 +212,16 @@ 752F27001F242BAF001032B4 /* prefs_sdl.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = prefs_sdl.cpp; sourceTree = ""; }; 752F27021F242F51001032B4 /* xpram_sdl.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = xpram_sdl.cpp; sourceTree = ""; }; 752F27051F251B4A001032B4 /* SDL.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = SDL.xcodeproj; path = ../../../external/SDL/Xcode/SDL/SDL.xcodeproj; sourceTree = ""; }; + 753252DA1F5358D30024025B /* build68k */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = build68k; sourceTree = BUILT_PRODUCTS_DIR; }; + 753252E51F5359040024025B /* build68k.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = build68k.c; sourceTree = ""; }; + 753252ED1F535DD10024025B /* defs68k.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = defs68k.c; path = build68k_output/defs68k.c; sourceTree = BUILT_PRODUCTS_DIR; }; + 753252F31F535E1E0024025B /* gencpu */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = gencpu; sourceTree = BUILT_PRODUCTS_DIR; }; + 753253011F535F210024025B /* gencpu.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = gencpu.c; sourceTree = ""; }; + 7532532C1F5368370024025B /* cpuemu_nf.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = cpuemu_nf.cpp; path = gencpu_output/cpuemu_nf.cpp; sourceTree = BUILT_PRODUCTS_DIR; }; + 7532532D1F5368370024025B /* cpuemu.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = cpuemu.cpp; path = gencpu_output/cpuemu.cpp; sourceTree = BUILT_PRODUCTS_DIR; }; + 7532532E1F5368370024025B /* cpustbl_nf.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = cpustbl_nf.cpp; path = gencpu_output/cpustbl_nf.cpp; sourceTree = BUILT_PRODUCTS_DIR; }; + 7532532F1F5368370024025B /* cpustbl.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = cpustbl.cpp; path = gencpu_output/cpustbl.cpp; sourceTree = BUILT_PRODUCTS_DIR; }; + 753253301F5368370024025B /* cputbl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = cputbl.h; path = gencpu_output/cputbl.h; sourceTree = BUILT_PRODUCTS_DIR; }; 7539DFB21F23B17E006B2DF2 /* BasiliskII.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = BasiliskII.app; sourceTree = BUILT_PRODUCTS_DIR; }; 7539DFBE1F23B17E006B2DF2 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; 7539DFC91F23B25A006B2DF2 /* adb.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = adb.cpp; path = ../adb.cpp; sourceTree = ""; }; @@ -312,11 +372,6 @@ 7539E2961F23C5FD006B2DF2 /* newcpu.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = newcpu.cpp; sourceTree = ""; }; 7539E29C1F23C83F006B2DF2 /* sys_darwin.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sys_darwin.cpp; sourceTree = ""; }; 7539E29E1F23C939006B2DF2 /* fpu_uae.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = fpu_uae.cpp; sourceTree = ""; }; - 7539E2A01F23CB9B006B2DF2 /* cpuemu_nf.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cpuemu_nf.cpp; sourceTree = ""; }; - 7539E2A11F23CB9B006B2DF2 /* cpuemu.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cpuemu.cpp; sourceTree = ""; }; - 7539E2A21F23CB9B006B2DF2 /* cpustbl_nf.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cpustbl_nf.cpp; sourceTree = ""; }; - 7539E2A31F23CB9B006B2DF2 /* cpustbl.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cpustbl.cpp; sourceTree = ""; }; - 7539E2A41F23CB9B006B2DF2 /* defs68k.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = defs68k.c; sourceTree = ""; }; 7539E2AA1F23CDB7006B2DF2 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 756C1B321F252FC100620917 /* utils_macosx.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = utils_macosx.h; sourceTree = ""; }; 756C1B331F252FC100620917 /* utils_macosx.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = utils_macosx.mm; sourceTree = ""; }; @@ -324,6 +379,20 @@ /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ + 753252D71F5358D30024025B /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 753252F01F535E1E0024025B /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; 7539DFAF1F23B17E006B2DF2 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; @@ -367,10 +436,40 @@ name = Products; sourceTree = ""; }; + 753252FF1F535E5D0024025B /* generated src */ = { + isa = PBXGroup; + children = ( + 753253001F535E840024025B /* build68k output */, + 7532532B1F53675E0024025B /* gencpu output */, + ); + name = "generated src"; + sourceTree = ""; + }; + 753253001F535E840024025B /* build68k output */ = { + isa = PBXGroup; + children = ( + 753252ED1F535DD10024025B /* defs68k.c */, + ); + name = "build68k output"; + sourceTree = ""; + }; + 7532532B1F53675E0024025B /* gencpu output */ = { + isa = PBXGroup; + children = ( + 7532532C1F5368370024025B /* cpuemu_nf.cpp */, + 7532532D1F5368370024025B /* cpuemu.cpp */, + 7532532E1F5368370024025B /* cpustbl_nf.cpp */, + 7532532F1F5368370024025B /* cpustbl.cpp */, + 753253301F5368370024025B /* cputbl.h */, + ); + name = "gencpu output"; + sourceTree = ""; + }; 7539DFA91F23B17E006B2DF2 = { isa = PBXGroup; children = ( 7539E1E41F23B25E006B2DF2 /* src */, + 753252FF1F535E5D0024025B /* generated src */, 752F27041F251B27001032B4 /* external */, 7539DFB41F23B17E006B2DF2 /* Assets */, 7539DFB31F23B17E006B2DF2 /* Products */, @@ -382,9 +481,12 @@ isa = PBXGroup; children = ( 7539DFB21F23B17E006B2DF2 /* BasiliskII.app */, + 753252DA1F5358D30024025B /* build68k */, + 753252F31F535E1E0024025B /* gencpu */, ); name = Products; - sourceTree = ""; + path = ../../../../../../../../Documents/Code/macemu/BasiliskII/src/MacOSX; + sourceTree = BUILT_PRODUCTS_DIR; }; 7539DFB41F23B17E006B2DF2 /* Assets */ = { isa = PBXGroup; @@ -492,14 +594,11 @@ isa = PBXGroup; children = ( 7539E0A61F23B25A006B2DF2 /* basilisk_glue.cpp */, + 753252E51F5359040024025B /* build68k.c */, 7539E0A81F23B25A006B2DF2 /* compiler */, 7539E0B11F23B25A006B2DF2 /* cpu_emulation.h */, - 7539E2A01F23CB9B006B2DF2 /* cpuemu_nf.cpp */, - 7539E2A11F23CB9B006B2DF2 /* cpuemu.cpp */, - 7539E2A21F23CB9B006B2DF2 /* cpustbl_nf.cpp */, - 7539E2A31F23CB9B006B2DF2 /* cpustbl.cpp */, - 7539E2A41F23CB9B006B2DF2 /* defs68k.c */, 7539E0B31F23B25A006B2DF2 /* fpu */, + 753253011F535F210024025B /* gencpu.c */, 7539E0C81F23B25A006B2DF2 /* m68k.h */, 7539E0C91F23B25A006B2DF2 /* memory.cpp */, 7539E0CA1F23B25A006B2DF2 /* memory.h */, @@ -669,7 +768,75 @@ }; /* End PBXGroup section */ +/* Begin PBXLegacyTarget section */ + 753253071F5360E30024025B /* run_build68k */ = { + isa = PBXLegacyTarget; + buildArgumentsString = "$(ACTION)"; + buildConfigurationList = 753253081F5360E30024025B /* Build configuration list for PBXLegacyTarget "run_build68k" */; + buildPhases = ( + ); + buildToolPath = "$(PROJECT_DIR)/run_build68k_for_xcode.sh"; + buildWorkingDirectory = ""; + dependencies = ( + 7532530C1F53611F0024025B /* PBXTargetDependency */, + ); + name = run_build68k; + passBuildSettingsInEnvironment = 1; + productName = RunBuild68k; + }; + 753253161F5363D20024025B /* run_gencpu */ = { + isa = PBXLegacyTarget; + buildArgumentsString = "$(ACTION)"; + buildConfigurationList = 753253171F5363D20024025B /* Build configuration list for PBXLegacyTarget "run_gencpu" */; + buildPhases = ( + ); + buildToolPath = "$(PROJECT_DIR)/run_gencpu_for_xcode.sh"; + buildWorkingDirectory = ""; + dependencies = ( + 7532531B1F5364030024025B /* PBXTargetDependency */, + ); + name = run_gencpu; + passBuildSettingsInEnvironment = 1; + productName = RunGencpu; + }; +/* End PBXLegacyTarget section */ + /* Begin PBXNativeTarget section */ + 753252D91F5358D30024025B /* build68k */ = { + isa = PBXNativeTarget; + buildConfigurationList = 753252E31F5358D30024025B /* Build configuration list for PBXNativeTarget "build68k" */; + buildPhases = ( + 753252D61F5358D30024025B /* Sources */, + 753252D71F5358D30024025B /* Frameworks */, + 753252D81F5358D30024025B /* CopyFiles */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = build68k; + productName = build68k; + productReference = 753252DA1F5358D30024025B /* build68k */; + productType = "com.apple.product-type.tool"; + }; + 753252F21F535E1E0024025B /* gencpu */ = { + isa = PBXNativeTarget; + buildConfigurationList = 753252F71F535E1E0024025B /* Build configuration list for PBXNativeTarget "gencpu" */; + buildPhases = ( + 753252EF1F535E1E0024025B /* Sources */, + 753252F01F535E1E0024025B /* Frameworks */, + 753252F11F535E1E0024025B /* CopyFiles */, + ); + buildRules = ( + ); + dependencies = ( + 7532531D1F53640B0024025B /* PBXTargetDependency */, + ); + name = gencpu; + productName = gencpu; + productReference = 753252F31F535E1E0024025B /* gencpu */; + productType = "com.apple.product-type.tool"; + }; 7539DFB11F23B17E006B2DF2 /* BasiliskII */ = { isa = PBXNativeTarget; buildConfigurationList = 7539DFC61F23B17E006B2DF2 /* Build configuration list for PBXNativeTarget "BasiliskII" */; @@ -683,6 +850,7 @@ buildRules = ( ); dependencies = ( + 7532531F1F5364170024025B /* PBXTargetDependency */, 752F27171F251B5C001032B4 /* PBXTargetDependency */, ); name = BasiliskII; @@ -698,6 +866,22 @@ attributes = { LastUpgradeCheck = 0830; TargetAttributes = { + 753252D91F5358D30024025B = { + CreatedOnToolsVersion = 8.3.3; + ProvisioningStyle = Automatic; + }; + 753252F21F535E1E0024025B = { + CreatedOnToolsVersion = 8.3.3; + ProvisioningStyle = Automatic; + }; + 753253071F5360E30024025B = { + CreatedOnToolsVersion = 8.3.3; + ProvisioningStyle = Automatic; + }; + 753253161F5363D20024025B = { + CreatedOnToolsVersion = 8.3.3; + ProvisioningStyle = Automatic; + }; 7539DFB11F23B17E006B2DF2 = { CreatedOnToolsVersion = 8.3.3; ProvisioningStyle = Automatic; @@ -729,6 +913,10 @@ projectRoot = ""; targets = ( 7539DFB11F23B17E006B2DF2 /* BasiliskII */, + 753252D91F5358D30024025B /* build68k */, + 753252F21F535E1E0024025B /* gencpu */, + 753253071F5360E30024025B /* run_build68k */, + 753253161F5363D20024025B /* run_gencpu */, ); }; /* End PBXProject section */ @@ -816,11 +1004,29 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "echo Hello World"; + shellScript = "# ${PROJECT_DIR}/generate_cpu_srcs_for_xcode.sh"; }; /* End PBXShellScriptBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ + 753252D61F5358D30024025B /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 753252E91F535A0C0024025B /* build68k.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 753252EF1F535E1E0024025B /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 753253021F535F210024025B /* gencpu.c in Sources */, + 753253201F53650F0024025B /* readcpu.cpp in Sources */, + 753253151F5363400024025B /* defs68k.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; 7539DFAE1F23B17E006B2DF2 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -830,17 +1036,18 @@ 7539E1291F23B25A006B2DF2 /* video_blit.cpp in Sources */, 7539E28E1F23C56F006B2DF2 /* clip_dummy.cpp in Sources */, 7539E1A01F23B25A006B2DF2 /* memory.cpp in Sources */, + 753253351F53688D0024025B /* readcpu.cpp in Sources */, 7539E1741F23B25A006B2DF2 /* audio_sdl.cpp in Sources */, 7539E1771F23B25A006B2DF2 /* video_sdl.cpp in Sources */, + 753252EE1F535DD10024025B /* defs68k.c in Sources */, 7539E29F1F23C939006B2DF2 /* fpu_uae.cpp in Sources */, - 7539E2A81F23CB9B006B2DF2 /* cpustbl.cpp in Sources */, 7539E1E21F23B25A006B2DF2 /* video.cpp in Sources */, 7539E18F1F23B25A006B2DF2 /* timer.cpp in Sources */, - 7539E2A71F23CB9B006B2DF2 /* cpustbl_nf.cpp in Sources */, 7539E1711F23B25A006B2DF2 /* rom_patches.cpp in Sources */, 7539E1281F23B25A006B2DF2 /* sigsegv.cpp in Sources */, - 7539E1A21F23B25A006B2DF2 /* readcpu.cpp in Sources */, + 753253341F5368370024025B /* cpustbl.cpp in Sources */, 756C1B341F252FC100620917 /* utils_macosx.mm in Sources */, + 753253321F5368370024025B /* cpuemu.cpp in Sources */, 7539E2701F23B32A006B2DF2 /* tinyxml2.cpp in Sources */, 7539E28F1F23C56F006B2DF2 /* ether_dummy.cpp in Sources */, 7539E1721F23B25A006B2DF2 /* rsrc_patches.cpp in Sources */, @@ -848,16 +1055,16 @@ 7539E1981F23B25A006B2DF2 /* exceptions.cpp in Sources */, 7539E1901F23B25A006B2DF2 /* basilisk_glue.cpp in Sources */, 7539E2801F23C4CA006B2DF2 /* main_unix.cpp in Sources */, - 7539E2A61F23CB9B006B2DF2 /* cpuemu.cpp in Sources */, 7539E1E11F23B25A006B2DF2 /* user_strings.cpp in Sources */, 752F27011F242BAF001032B4 /* prefs_sdl.cpp in Sources */, - 7539E2A51F23CB9B006B2DF2 /* cpuemu_nf.cpp in Sources */, 7539E2971F23C5FD006B2DF2 /* newcpu.cpp in Sources */, 7539E12A1F23B25A006B2DF2 /* vm_alloc.cpp in Sources */, + 753253331F5368370024025B /* cpustbl_nf.cpp in Sources */, 7539E16C1F23B25A006B2DF2 /* main.cpp in Sources */, 7539E26D1F23B32A006B2DF2 /* strlcpy.c in Sources */, 7539E26E1F23B32A006B2DF2 /* sys_unix.cpp in Sources */, 7539E1271F23B25A006B2DF2 /* cdrom.cpp in Sources */, + 753253311F5368370024025B /* cpuemu_nf.cpp in Sources */, 7539E1261F23B25A006B2DF2 /* audio.cpp in Sources */, 7539E1701F23B25A006B2DF2 /* prefs.cpp in Sources */, 7539E12D1F23B25A006B2DF2 /* ether.cpp in Sources */, @@ -869,7 +1076,6 @@ 7539E18E1F23B25A006B2DF2 /* sony.cpp in Sources */, 7539E2941F23C56F006B2DF2 /* user_strings_dummy.cpp in Sources */, 7539E26F1F23B32A006B2DF2 /* timer_unix.cpp in Sources */, - 7539E2A91F23CB9B006B2DF2 /* defs68k.c in Sources */, 7539E12E1F23B25A006B2DF2 /* extfs.cpp in Sources */, 7539E23F1F23B32A006B2DF2 /* bincue_unix.cpp in Sources */, 7539E12C1F23B25A006B2DF2 /* emul_op.cpp in Sources */, @@ -897,6 +1103,26 @@ name = Framework; targetProxy = 752F27161F251B5C001032B4 /* PBXContainerItemProxy */; }; + 7532530C1F53611F0024025B /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 753252D91F5358D30024025B /* build68k */; + targetProxy = 7532530B1F53611F0024025B /* PBXContainerItemProxy */; + }; + 7532531B1F5364030024025B /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 753252F21F535E1E0024025B /* gencpu */; + targetProxy = 7532531A1F5364030024025B /* PBXContainerItemProxy */; + }; + 7532531D1F53640B0024025B /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 753253071F5360E30024025B /* run_build68k */; + targetProxy = 7532531C1F53640B0024025B /* PBXContainerItemProxy */; + }; + 7532531F1F5364170024025B /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 753253161F5363D20024025B /* run_gencpu */; + targetProxy = 7532531E1F5364170024025B /* PBXContainerItemProxy */; + }; /* End PBXTargetDependency section */ /* Begin PBXVariantGroup section */ @@ -911,6 +1137,62 @@ /* End PBXVariantGroup section */ /* Begin XCBuildConfiguration section */ + 753252DE1F5358D30024025B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Debug; + }; + 753252DF1F5358D30024025B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Release; + }; + 753252F81F535E1E0024025B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Debug; + }; + 753252F91F535E1E0024025B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Release; + }; + 753253091F5360E30024025B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Debug; + }; + 7532530A1F5360E30024025B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Release; + }; + 753253181F5363D20024025B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Debug; + }; + 753253191F5363D20024025B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Release; + }; 7539DFC41F23B17E006B2DF2 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { @@ -1054,6 +1336,42 @@ /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ + 753252E31F5358D30024025B /* Build configuration list for PBXNativeTarget "build68k" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 753252DE1F5358D30024025B /* Debug */, + 753252DF1F5358D30024025B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 753252F71F535E1E0024025B /* Build configuration list for PBXNativeTarget "gencpu" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 753252F81F535E1E0024025B /* Debug */, + 753252F91F535E1E0024025B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 753253081F5360E30024025B /* Build configuration list for PBXLegacyTarget "run_build68k" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 753253091F5360E30024025B /* Debug */, + 7532530A1F5360E30024025B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 753253171F5363D20024025B /* Build configuration list for PBXLegacyTarget "run_gencpu" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 753253181F5363D20024025B /* Debug */, + 753253191F5363D20024025B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; 7539DFAD1F23B17E006B2DF2 /* Build configuration list for PBXProject "BasiliskII" */ = { isa = XCConfigurationList; buildConfigurations = ( diff --git a/BasiliskII/src/MacOSX/run_build68k_for_xcode.sh b/BasiliskII/src/MacOSX/run_build68k_for_xcode.sh new file mode 100755 index 00000000..30047f7f --- /dev/null +++ b/BasiliskII/src/MacOSX/run_build68k_for_xcode.sh @@ -0,0 +1,33 @@ +#!/bin/bash -e + +# +# run_build68k_for_xcode.sh +# +# Generates files for 68k emulation, via UAE's virtual cpu, for use on Mac OS X hosts +# + +if [ ! -d "$BUILT_PRODUCTS_DIR" ] || [ ! "$PROJECT_DIR" ]; then + echo "ERROR: $(basename $0) must be run from an Xcode 'External Build System' target" + exit 1 +fi + +# Log some debugging information +echo "1=$1" +echo "BUILT_PRODUCTS_DIR=$BUILT_PRODUCTS_DIR" +echo "PROJECT_DIR=$PROJECT_DIR" + +# Perform actions, given the passed-in build step +case "$1" in + "clean") + echo "Cleaning build68k output(s)" + rm -rf "$BUILT_PRODUCTS_DIR/build68k_output" + ;; + "") + echo "Running build68k" + cd "$BUILT_PRODUCTS_DIR" + mkdir -p build68k_output + cd build68k_output + cat "$PROJECT_DIR/../uae_cpu/table68k" | "$BUILT_PRODUCTS_DIR/build68k" > "./defs68k.c" + ls -al + ;; +esac diff --git a/BasiliskII/src/MacOSX/run_gencpu_for_xcode.sh b/BasiliskII/src/MacOSX/run_gencpu_for_xcode.sh new file mode 100755 index 00000000..16c014df --- /dev/null +++ b/BasiliskII/src/MacOSX/run_gencpu_for_xcode.sh @@ -0,0 +1,33 @@ +#!/bin/bash -e + +# +# run_gemcpu_for_xcode.sh +# +# Generates files for 68k emulation, via UAE's virtual cpu, for use on Mac OS X hosts +# + +if [ ! -d "$BUILT_PRODUCTS_DIR" ] || [ ! "$PROJECT_DIR" ]; then + echo "ERROR: $(basename $0) must be run from an Xcode 'External Build System' target" + exit 1 +fi + +# Log some debugging information +echo "1=$1" +echo "BUILT_PRODUCTS_DIR=$BUILT_PRODUCTS_DIR" +echo "PROJECT_DIR=$PROJECT_DIR" + +# Perform actions, given the passed-in build step +case "$1" in + "clean") + echo "Cleaning gencpu output(s)" + rm -rf "$BUILT_PRODUCTS_DIR/gencpu_output" + ;; + "") + echo "Running gencpu" + cd "$BUILT_PRODUCTS_DIR" + mkdir -p gencpu_output + cd gencpu_output + "$BUILT_PRODUCTS_DIR/gencpu" + ls -al + ;; +esac diff --git a/BasiliskII/src/uae_cpu/cpuemu.cpp b/BasiliskII/src/uae_cpu/cpuemu.cpp deleted file mode 100644 index 52a0dc9c..00000000 --- a/BasiliskII/src/uae_cpu/cpuemu.cpp +++ /dev/null @@ -1,45296 +0,0 @@ -#include "sysdeps.h" -#include "m68k.h" -#include "memory.h" -#include "readcpu.h" -#include "newcpu.h" -#include "compiler/compemu.h" -#include "fpu/fpu.h" -#include "cputbl.h" -#define SET_CFLG_ALWAYS(x) SET_CFLG(x) -#define SET_NFLG_ALWAYS(x) SET_NFLG(x) -#define CPUFUNC_FF(x) x##_ff -#define CPUFUNC_NF(x) x##_nf -#define CPUFUNC(x) CPUFUNC_FF(x) -#ifdef NOFLAGS -# include "noflags.h" -#endif - -#ifdef _MSC_VER -#pragma warning(disable:4102) /* unreferenced label */ -#endif - -#if !defined(PART_1) && !defined(PART_2) && !defined(PART_3) && !defined(PART_4) && !defined(PART_5) && !defined(PART_6) && !defined(PART_7) && !defined(PART_8) -#define PART_1 1 -#define PART_2 1 -#define PART_3 1 -#define PART_4 1 -#define PART_5 1 -#define PART_6 1 -#define PART_7 1 -#define PART_8 1 -#endif - -#ifdef PART_1 -void REGPARAM2 CPUFUNC(op_0_0)(uae_u32 opcode) /* OR.B #.B,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uae_s8 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_10_0)(uae_u32 opcode) /* OR.B #.B,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_18_0)(uae_u32 opcode) /* OR.B #.B,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_20_0)(uae_u32 opcode) /* OR.B #.B,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; -{ uae_s8 dst = get_byte(dsta); - m68k_areg (regs, dstreg) = dsta; - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_28_0)(uae_u32 opcode) /* OR.B #.B,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ uae_s8 dst = get_byte(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_30_0)(uae_u32 opcode) /* OR.B #.B,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s8 dst = get_byte(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_38_0)(uae_u32 opcode) /* OR.B #.B,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); -{ uae_s8 dst = get_byte(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_39_0)(uae_u32 opcode) /* OR.B #.B,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = get_ilong(4); -{ uae_s8 dst = get_byte(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3c_0)(uae_u32 opcode) /* ORSR.B #.W */ -{ - cpuop_begin(); -{ MakeSR(); -{ uae_s16 src = get_iword(2); - src &= 0xFF; - regs.sr |= src; - MakeFromSR(); -}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_40_0)(uae_u32 opcode) /* OR.W #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_50_0)(uae_u32 opcode) /* OR.W #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s16 dst = get_word(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_58_0)(uae_u32 opcode) /* OR.W #.W,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s16 dst = get_word(dsta); - m68k_areg(regs, dstreg) += 2; - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_60_0)(uae_u32 opcode) /* OR.W #.W,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; -{ uae_s16 dst = get_word(dsta); - m68k_areg (regs, dstreg) = dsta; - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_68_0)(uae_u32 opcode) /* OR.W #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ uae_s16 dst = get_word(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_70_0)(uae_u32 opcode) /* OR.W #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s16 dst = get_word(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_78_0)(uae_u32 opcode) /* OR.W #.W,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); -{ uae_s16 dst = get_word(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_79_0)(uae_u32 opcode) /* OR.W #.W,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = get_ilong(4); -{ uae_s16 dst = get_word(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_7c_0)(uae_u32 opcode) /* ORSR.W #.W */ -{ - cpuop_begin(); -{if (!regs.s) { Exception(8,0); goto endlabel18; } -{ MakeSR(); -{ uae_s16 src = get_iword(2); - regs.sr |= src; - MakeFromSR(); -}}}m68k_incpc(4); -endlabel18: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_80_0)(uae_u32 opcode) /* OR.L #.L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_90_0)(uae_u32 opcode) /* OR.L #.L,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_98_0)(uae_u32 opcode) /* OR.L #.L,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); - m68k_areg(regs, dstreg) += 4; - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_a0_0)(uae_u32 opcode) /* OR.L #.L,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; -{ uae_s32 dst = get_long(dsta); - m68k_areg (regs, dstreg) = dsta; - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_a8_0)(uae_u32 opcode) /* OR.L #.L,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(6); -{ uae_s32 dst = get_long(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b0_0)(uae_u32 opcode) /* OR.L #.L,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{m68k_incpc(6); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s32 dst = get_long(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b8_0)(uae_u32 opcode) /* OR.L #.L,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(6); -{ uae_s32 dst = get_long(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b9_0)(uae_u32 opcode) /* OR.L #.L,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = get_ilong(6); -{ uae_s32 dst = get_long(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(10); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d0_0)(uae_u32 opcode) /* CHK2.B #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); - {uae_s32 upper,lower,reg = regs.regs[(extra >> 12) & 15]; - lower=(uae_s32)(uae_s8)get_byte(dsta); upper = (uae_s32)(uae_s8)get_byte(dsta+1); - if ((extra & 0x8000) == 0) reg = (uae_s32)(uae_s8)reg; - SET_ZFLG (upper == reg || lower == reg); - SET_CFLG_ALWAYS (lower <= upper ? reg < lower || reg > upper : reg > upper || reg < lower); - if ((extra & 0x800) && GET_CFLG) { Exception(6,oldpc); goto endlabel27; } -} -}}}m68k_incpc(4); -endlabel27: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e8_0)(uae_u32 opcode) /* CHK2.B #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); - {uae_s32 upper,lower,reg = regs.regs[(extra >> 12) & 15]; - lower=(uae_s32)(uae_s8)get_byte(dsta); upper = (uae_s32)(uae_s8)get_byte(dsta+1); - if ((extra & 0x8000) == 0) reg = (uae_s32)(uae_s8)reg; - SET_ZFLG (upper == reg || lower == reg); - SET_CFLG_ALWAYS (lower <= upper ? reg < lower || reg > upper : reg > upper || reg < lower); - if ((extra & 0x800) && GET_CFLG) { Exception(6,oldpc); goto endlabel28; } -} -}}}m68k_incpc(6); -endlabel28: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_f0_0)(uae_u32 opcode) /* CHK2.B #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - {uae_s32 upper,lower,reg = regs.regs[(extra >> 12) & 15]; - lower=(uae_s32)(uae_s8)get_byte(dsta); upper = (uae_s32)(uae_s8)get_byte(dsta+1); - if ((extra & 0x8000) == 0) reg = (uae_s32)(uae_s8)reg; - SET_ZFLG (upper == reg || lower == reg); - SET_CFLG_ALWAYS (lower <= upper ? reg < lower || reg > upper : reg > upper || reg < lower); - if ((extra & 0x800) && GET_CFLG) { Exception(6,oldpc); goto endlabel29; } -} -}}}}endlabel29: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_f8_0)(uae_u32 opcode) /* CHK2.B #.W,(xxx).W */ -{ - cpuop_begin(); -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); - {uae_s32 upper,lower,reg = regs.regs[(extra >> 12) & 15]; - lower=(uae_s32)(uae_s8)get_byte(dsta); upper = (uae_s32)(uae_s8)get_byte(dsta+1); - if ((extra & 0x8000) == 0) reg = (uae_s32)(uae_s8)reg; - SET_ZFLG (upper == reg || lower == reg); - SET_CFLG_ALWAYS (lower <= upper ? reg < lower || reg > upper : reg > upper || reg < lower); - if ((extra & 0x800) && GET_CFLG) { Exception(6,oldpc); goto endlabel30; } -} -}}}m68k_incpc(6); -endlabel30: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_f9_0)(uae_u32 opcode) /* CHK2.B #.W,(xxx).L */ -{ - cpuop_begin(); -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = get_ilong(4); - {uae_s32 upper,lower,reg = regs.regs[(extra >> 12) & 15]; - lower=(uae_s32)(uae_s8)get_byte(dsta); upper = (uae_s32)(uae_s8)get_byte(dsta+1); - if ((extra & 0x8000) == 0) reg = (uae_s32)(uae_s8)reg; - SET_ZFLG (upper == reg || lower == reg); - SET_CFLG_ALWAYS (lower <= upper ? reg < lower || reg > upper : reg > upper || reg < lower); - if ((extra & 0x800) && GET_CFLG) { Exception(6,oldpc); goto endlabel31; } -} -}}}m68k_incpc(8); -endlabel31: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_fa_0)(uae_u32 opcode) /* CHK2.B #.W,(d16,PC) */ -{ - cpuop_begin(); - uae_u32 dstreg = 2; -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_getpc () + 4; - dsta += (uae_s32)(uae_s16)get_iword(4); - {uae_s32 upper,lower,reg = regs.regs[(extra >> 12) & 15]; - lower=(uae_s32)(uae_s8)get_byte(dsta); upper = (uae_s32)(uae_s8)get_byte(dsta+1); - if ((extra & 0x8000) == 0) reg = (uae_s32)(uae_s8)reg; - SET_ZFLG (upper == reg || lower == reg); - SET_CFLG_ALWAYS (lower <= upper ? reg < lower || reg > upper : reg > upper || reg < lower); - if ((extra & 0x800) && GET_CFLG) { Exception(6,oldpc); goto endlabel32; } -} -}}}m68k_incpc(6); -endlabel32: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_fb_0)(uae_u32 opcode) /* CHK2.B #.W,(d8,PC,Xn) */ -{ - cpuop_begin(); - uae_u32 dstreg = 3; -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(2); -{m68k_incpc(4); -{ uaecptr tmppc = m68k_getpc(); - uaecptr dsta = get_disp_ea_020(tmppc, next_iword()); - {uae_s32 upper,lower,reg = regs.regs[(extra >> 12) & 15]; - lower=(uae_s32)(uae_s8)get_byte(dsta); upper = (uae_s32)(uae_s8)get_byte(dsta+1); - if ((extra & 0x8000) == 0) reg = (uae_s32)(uae_s8)reg; - SET_ZFLG (upper == reg || lower == reg); - SET_CFLG_ALWAYS (lower <= upper ? reg < lower || reg > upper : reg > upper || reg < lower); - if ((extra & 0x800) && GET_CFLG) { Exception(6,oldpc); goto endlabel33; } -} -}}}}endlabel33: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_100_0)(uae_u32 opcode) /* BTST.L Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src &= 31; - SET_ZFLG (1 ^ ((dst >> src) & 1)); -}}}m68k_incpc(2); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_108_0)(uae_u32 opcode) /* MVPMR.W (d16,An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr memp = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_u16 val = (get_byte(memp) << 8) + get_byte(memp + 2); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((val) & 0xffff); -}}m68k_incpc(4); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_110_0)(uae_u32 opcode) /* BTST.B Dn,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_118_0)(uae_u32 opcode) /* BTST.B Dn,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_120_0)(uae_u32 opcode) /* BTST.B Dn,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; -{ uae_s8 dst = get_byte(dsta); - m68k_areg (regs, dstreg) = dsta; - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_128_0)(uae_u32 opcode) /* BTST.B Dn,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_130_0)(uae_u32 opcode) /* BTST.B Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_138_0)(uae_u32 opcode) /* BTST.B Dn,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_139_0)(uae_u32 opcode) /* BTST.B Dn,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_ilong(2); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_13a_0)(uae_u32 opcode) /* BTST.B Dn,(d16,PC) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif - uae_u32 dstreg = 2; -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_getpc () + 2; - dsta += (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_13b_0)(uae_u32 opcode) /* BTST.B Dn,(d8,PC,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif - uae_u32 dstreg = 3; -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr dsta = get_disp_ea_020(tmppc, next_iword()); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_13c_0)(uae_u32 opcode) /* BTST.B Dn,#.B */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uae_s8 dst = get_ibyte(2); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_140_0)(uae_u32 opcode) /* BCHG.L Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src &= 31; - dst ^= (1 << src); - SET_ZFLG (((uae_u32)dst & (1 << src)) >> src); - m68k_dreg(regs, dstreg) = (dst); -}}}m68k_incpc(2); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_148_0)(uae_u32 opcode) /* MVPMR.L (d16,An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr memp = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_u32 val = (get_byte(memp) << 24) + (get_byte(memp + 2) << 16) - + (get_byte(memp + 4) << 8) + get_byte(memp + 6); - m68k_dreg(regs, dstreg) = (val); -}}m68k_incpc(4); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_150_0)(uae_u32 opcode) /* BCHG.B Dn,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - dst ^= (1 << src); - SET_ZFLG (((uae_u32)dst & (1 << src)) >> src); - put_byte(dsta,dst); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_158_0)(uae_u32 opcode) /* BCHG.B Dn,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; - src &= 7; - dst ^= (1 << src); - SET_ZFLG (((uae_u32)dst & (1 << src)) >> src); - put_byte(dsta,dst); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_160_0)(uae_u32 opcode) /* BCHG.B Dn,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; -{ uae_s8 dst = get_byte(dsta); - m68k_areg (regs, dstreg) = dsta; - src &= 7; - dst ^= (1 << src); - SET_ZFLG (((uae_u32)dst & (1 << src)) >> src); - put_byte(dsta,dst); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_168_0)(uae_u32 opcode) /* BCHG.B Dn,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - dst ^= (1 << src); - SET_ZFLG (((uae_u32)dst & (1 << src)) >> src); - put_byte(dsta,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_170_0)(uae_u32 opcode) /* BCHG.B Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - dst ^= (1 << src); - SET_ZFLG (((uae_u32)dst & (1 << src)) >> src); - put_byte(dsta,dst); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_178_0)(uae_u32 opcode) /* BCHG.B Dn,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - dst ^= (1 << src); - SET_ZFLG (((uae_u32)dst & (1 << src)) >> src); - put_byte(dsta,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_179_0)(uae_u32 opcode) /* BCHG.B Dn,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_ilong(2); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - dst ^= (1 << src); - SET_ZFLG (((uae_u32)dst & (1 << src)) >> src); - put_byte(dsta,dst); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_17a_0)(uae_u32 opcode) /* BCHG.B Dn,(d16,PC) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif - uae_u32 dstreg = 2; -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_getpc () + 2; - dsta += (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - dst ^= (1 << src); - SET_ZFLG (((uae_u32)dst & (1 << src)) >> src); - put_byte(dsta,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_17b_0)(uae_u32 opcode) /* BCHG.B Dn,(d8,PC,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif - uae_u32 dstreg = 3; -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr dsta = get_disp_ea_020(tmppc, next_iword()); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - dst ^= (1 << src); - SET_ZFLG (((uae_u32)dst & (1 << src)) >> src); - put_byte(dsta,dst); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_180_0)(uae_u32 opcode) /* BCLR.L Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src &= 31; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst &= ~(1 << src); - m68k_dreg(regs, dstreg) = (dst); -}}}m68k_incpc(2); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_188_0)(uae_u32 opcode) /* MVPRM.W Dn,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); - uaecptr memp = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); - put_byte(memp, src >> 8); put_byte(memp + 2, src); -}}m68k_incpc(4); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_190_0)(uae_u32 opcode) /* BCLR.B Dn,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst &= ~(1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_198_0)(uae_u32 opcode) /* BCLR.B Dn,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst &= ~(1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1a0_0)(uae_u32 opcode) /* BCLR.B Dn,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; -{ uae_s8 dst = get_byte(dsta); - m68k_areg (regs, dstreg) = dsta; - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst &= ~(1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1a8_0)(uae_u32 opcode) /* BCLR.B Dn,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst &= ~(1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1b0_0)(uae_u32 opcode) /* BCLR.B Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst &= ~(1 << src); - put_byte(dsta,dst); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1b8_0)(uae_u32 opcode) /* BCLR.B Dn,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst &= ~(1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1b9_0)(uae_u32 opcode) /* BCLR.B Dn,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_ilong(2); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst &= ~(1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1ba_0)(uae_u32 opcode) /* BCLR.B Dn,(d16,PC) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif - uae_u32 dstreg = 2; -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_getpc () + 2; - dsta += (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst &= ~(1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1bb_0)(uae_u32 opcode) /* BCLR.B Dn,(d8,PC,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif - uae_u32 dstreg = 3; -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr dsta = get_disp_ea_020(tmppc, next_iword()); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst &= ~(1 << src); - put_byte(dsta,dst); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1c0_0)(uae_u32 opcode) /* BSET.L Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src &= 31; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst |= (1 << src); - m68k_dreg(regs, dstreg) = (dst); -}}}m68k_incpc(2); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_1c8_0)(uae_u32 opcode) /* MVPRM.L Dn,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); - uaecptr memp = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); - put_byte(memp, src >> 24); put_byte(memp + 2, src >> 16); - put_byte(memp + 4, src >> 8); put_byte(memp + 6, src); -}}m68k_incpc(4); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_1d0_0)(uae_u32 opcode) /* BSET.B Dn,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst |= (1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1d8_0)(uae_u32 opcode) /* BSET.B Dn,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst |= (1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1e0_0)(uae_u32 opcode) /* BSET.B Dn,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; -{ uae_s8 dst = get_byte(dsta); - m68k_areg (regs, dstreg) = dsta; - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst |= (1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1e8_0)(uae_u32 opcode) /* BSET.B Dn,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst |= (1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1f0_0)(uae_u32 opcode) /* BSET.B Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst |= (1 << src); - put_byte(dsta,dst); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1f8_0)(uae_u32 opcode) /* BSET.B Dn,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst |= (1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1f9_0)(uae_u32 opcode) /* BSET.B Dn,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_ilong(2); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst |= (1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1fa_0)(uae_u32 opcode) /* BSET.B Dn,(d16,PC) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif - uae_u32 dstreg = 2; -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_getpc () + 2; - dsta += (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst |= (1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1fb_0)(uae_u32 opcode) /* BSET.B Dn,(d8,PC,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif - uae_u32 dstreg = 3; -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr dsta = get_disp_ea_020(tmppc, next_iword()); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst |= (1 << src); - put_byte(dsta,dst); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_200_0)(uae_u32 opcode) /* AND.B #.B,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uae_s8 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_210_0)(uae_u32 opcode) /* AND.B #.B,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_218_0)(uae_u32 opcode) /* AND.B #.B,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_220_0)(uae_u32 opcode) /* AND.B #.B,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; -{ uae_s8 dst = get_byte(dsta); - m68k_areg (regs, dstreg) = dsta; - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_228_0)(uae_u32 opcode) /* AND.B #.B,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ uae_s8 dst = get_byte(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_230_0)(uae_u32 opcode) /* AND.B #.B,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s8 dst = get_byte(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_238_0)(uae_u32 opcode) /* AND.B #.B,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); -{ uae_s8 dst = get_byte(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_239_0)(uae_u32 opcode) /* AND.B #.B,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = get_ilong(4); -{ uae_s8 dst = get_byte(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_23c_0)(uae_u32 opcode) /* ANDSR.B #.W */ -{ - cpuop_begin(); -{ MakeSR(); -{ uae_s16 src = get_iword(2); - src |= 0xFF00; - regs.sr &= src; - MakeFromSR(); -}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_240_0)(uae_u32 opcode) /* AND.W #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_250_0)(uae_u32 opcode) /* AND.W #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s16 dst = get_word(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_258_0)(uae_u32 opcode) /* AND.W #.W,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s16 dst = get_word(dsta); - m68k_areg(regs, dstreg) += 2; - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_260_0)(uae_u32 opcode) /* AND.W #.W,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; -{ uae_s16 dst = get_word(dsta); - m68k_areg (regs, dstreg) = dsta; - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_268_0)(uae_u32 opcode) /* AND.W #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ uae_s16 dst = get_word(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_270_0)(uae_u32 opcode) /* AND.W #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s16 dst = get_word(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_278_0)(uae_u32 opcode) /* AND.W #.W,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); -{ uae_s16 dst = get_word(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_279_0)(uae_u32 opcode) /* AND.W #.W,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = get_ilong(4); -{ uae_s16 dst = get_word(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_27c_0)(uae_u32 opcode) /* ANDSR.W #.W */ -{ - cpuop_begin(); -{if (!regs.s) { Exception(8,0); goto endlabel96; } -{ MakeSR(); -{ uae_s16 src = get_iword(2); - regs.sr &= src; - MakeFromSR(); -}}}m68k_incpc(4); -endlabel96: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_280_0)(uae_u32 opcode) /* AND.L #.L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_290_0)(uae_u32 opcode) /* AND.L #.L,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_298_0)(uae_u32 opcode) /* AND.L #.L,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); - m68k_areg(regs, dstreg) += 4; - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2a0_0)(uae_u32 opcode) /* AND.L #.L,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; -{ uae_s32 dst = get_long(dsta); - m68k_areg (regs, dstreg) = dsta; - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2a8_0)(uae_u32 opcode) /* AND.L #.L,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(6); -{ uae_s32 dst = get_long(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2b0_0)(uae_u32 opcode) /* AND.L #.L,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{m68k_incpc(6); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s32 dst = get_long(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2b8_0)(uae_u32 opcode) /* AND.L #.L,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(6); -{ uae_s32 dst = get_long(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2b9_0)(uae_u32 opcode) /* AND.L #.L,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = get_ilong(6); -{ uae_s32 dst = get_long(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(10); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2d0_0)(uae_u32 opcode) /* CHK2.W #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); - {uae_s32 upper,lower,reg = regs.regs[(extra >> 12) & 15]; - lower=(uae_s32)(uae_s16)get_word(dsta); upper = (uae_s32)(uae_s16)get_word(dsta+2); - if ((extra & 0x8000) == 0) reg = (uae_s32)(uae_s16)reg; - SET_ZFLG (upper == reg || lower == reg); - SET_CFLG_ALWAYS (lower <= upper ? reg < lower || reg > upper : reg > upper || reg < lower); - if ((extra & 0x800) && GET_CFLG) { Exception(6,oldpc); goto endlabel105; } -} -}}}m68k_incpc(4); -endlabel105: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2e8_0)(uae_u32 opcode) /* CHK2.W #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); - {uae_s32 upper,lower,reg = regs.regs[(extra >> 12) & 15]; - lower=(uae_s32)(uae_s16)get_word(dsta); upper = (uae_s32)(uae_s16)get_word(dsta+2); - if ((extra & 0x8000) == 0) reg = (uae_s32)(uae_s16)reg; - SET_ZFLG (upper == reg || lower == reg); - SET_CFLG_ALWAYS (lower <= upper ? reg < lower || reg > upper : reg > upper || reg < lower); - if ((extra & 0x800) && GET_CFLG) { Exception(6,oldpc); goto endlabel106; } -} -}}}m68k_incpc(6); -endlabel106: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2f0_0)(uae_u32 opcode) /* CHK2.W #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - {uae_s32 upper,lower,reg = regs.regs[(extra >> 12) & 15]; - lower=(uae_s32)(uae_s16)get_word(dsta); upper = (uae_s32)(uae_s16)get_word(dsta+2); - if ((extra & 0x8000) == 0) reg = (uae_s32)(uae_s16)reg; - SET_ZFLG (upper == reg || lower == reg); - SET_CFLG_ALWAYS (lower <= upper ? reg < lower || reg > upper : reg > upper || reg < lower); - if ((extra & 0x800) && GET_CFLG) { Exception(6,oldpc); goto endlabel107; } -} -}}}}endlabel107: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2f8_0)(uae_u32 opcode) /* CHK2.W #.W,(xxx).W */ -{ - cpuop_begin(); -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); - {uae_s32 upper,lower,reg = regs.regs[(extra >> 12) & 15]; - lower=(uae_s32)(uae_s16)get_word(dsta); upper = (uae_s32)(uae_s16)get_word(dsta+2); - if ((extra & 0x8000) == 0) reg = (uae_s32)(uae_s16)reg; - SET_ZFLG (upper == reg || lower == reg); - SET_CFLG_ALWAYS (lower <= upper ? reg < lower || reg > upper : reg > upper || reg < lower); - if ((extra & 0x800) && GET_CFLG) { Exception(6,oldpc); goto endlabel108; } -} -}}}m68k_incpc(6); -endlabel108: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2f9_0)(uae_u32 opcode) /* CHK2.W #.W,(xxx).L */ -{ - cpuop_begin(); -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = get_ilong(4); - {uae_s32 upper,lower,reg = regs.regs[(extra >> 12) & 15]; - lower=(uae_s32)(uae_s16)get_word(dsta); upper = (uae_s32)(uae_s16)get_word(dsta+2); - if ((extra & 0x8000) == 0) reg = (uae_s32)(uae_s16)reg; - SET_ZFLG (upper == reg || lower == reg); - SET_CFLG_ALWAYS (lower <= upper ? reg < lower || reg > upper : reg > upper || reg < lower); - if ((extra & 0x800) && GET_CFLG) { Exception(6,oldpc); goto endlabel109; } -} -}}}m68k_incpc(8); -endlabel109: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2fa_0)(uae_u32 opcode) /* CHK2.W #.W,(d16,PC) */ -{ - cpuop_begin(); - uae_u32 dstreg = 2; -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_getpc () + 4; - dsta += (uae_s32)(uae_s16)get_iword(4); - {uae_s32 upper,lower,reg = regs.regs[(extra >> 12) & 15]; - lower=(uae_s32)(uae_s16)get_word(dsta); upper = (uae_s32)(uae_s16)get_word(dsta+2); - if ((extra & 0x8000) == 0) reg = (uae_s32)(uae_s16)reg; - SET_ZFLG (upper == reg || lower == reg); - SET_CFLG_ALWAYS (lower <= upper ? reg < lower || reg > upper : reg > upper || reg < lower); - if ((extra & 0x800) && GET_CFLG) { Exception(6,oldpc); goto endlabel110; } -} -}}}m68k_incpc(6); -endlabel110: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2fb_0)(uae_u32 opcode) /* CHK2.W #.W,(d8,PC,Xn) */ -{ - cpuop_begin(); - uae_u32 dstreg = 3; -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(2); -{m68k_incpc(4); -{ uaecptr tmppc = m68k_getpc(); - uaecptr dsta = get_disp_ea_020(tmppc, next_iword()); - {uae_s32 upper,lower,reg = regs.regs[(extra >> 12) & 15]; - lower=(uae_s32)(uae_s16)get_word(dsta); upper = (uae_s32)(uae_s16)get_word(dsta+2); - if ((extra & 0x8000) == 0) reg = (uae_s32)(uae_s16)reg; - SET_ZFLG (upper == reg || lower == reg); - SET_CFLG_ALWAYS (lower <= upper ? reg < lower || reg > upper : reg > upper || reg < lower); - if ((extra & 0x800) && GET_CFLG) { Exception(6,oldpc); goto endlabel111; } -} -}}}}endlabel111: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_400_0)(uae_u32 opcode) /* SUB.B #.B,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_410_0)(uae_u32 opcode) /* SUB.B #.B,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_418_0)(uae_u32 opcode) /* SUB.B #.B,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_420_0)(uae_u32 opcode) /* SUB.B #.B,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; -{ uae_s8 dst = get_byte(dsta); - m68k_areg (regs, dstreg) = dsta; -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_428_0)(uae_u32 opcode) /* SUB.B #.B,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_430_0)(uae_u32 opcode) /* SUB.B #.B,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_438_0)(uae_u32 opcode) /* SUB.B #.B,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_439_0)(uae_u32 opcode) /* SUB.B #.B,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = get_ilong(4); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_440_0)(uae_u32 opcode) /* SUB.W #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_450_0)(uae_u32 opcode) /* SUB.W #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_458_0)(uae_u32 opcode) /* SUB.W #.W,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s16 dst = get_word(dsta); - m68k_areg(regs, dstreg) += 2; -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_460_0)(uae_u32 opcode) /* SUB.W #.W,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; -{ uae_s16 dst = get_word(dsta); - m68k_areg (regs, dstreg) = dsta; -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_468_0)(uae_u32 opcode) /* SUB.W #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_470_0)(uae_u32 opcode) /* SUB.W #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_478_0)(uae_u32 opcode) /* SUB.W #.W,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_479_0)(uae_u32 opcode) /* SUB.W #.W,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = get_ilong(4); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_480_0)(uae_u32 opcode) /* SUB.L #.L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_490_0)(uae_u32 opcode) /* SUB.L #.L,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_498_0)(uae_u32 opcode) /* SUB.L #.L,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); - m68k_areg(regs, dstreg) += 4; -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a0_0)(uae_u32 opcode) /* SUB.L #.L,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; -{ uae_s32 dst = get_long(dsta); - m68k_areg (regs, dstreg) = dsta; -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a8_0)(uae_u32 opcode) /* SUB.L #.L,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(6); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4b0_0)(uae_u32 opcode) /* SUB.L #.L,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{m68k_incpc(6); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4b8_0)(uae_u32 opcode) /* SUB.L #.L,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(6); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4b9_0)(uae_u32 opcode) /* SUB.L #.L,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = get_ilong(6); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(10); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4d0_0)(uae_u32 opcode) /* CHK2.L #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); - {uae_s32 upper,lower,reg = regs.regs[(extra >> 12) & 15]; - lower=get_long(dsta); upper = get_long(dsta+4); - SET_ZFLG (upper == reg || lower == reg); - SET_CFLG_ALWAYS (lower <= upper ? reg < lower || reg > upper : reg > upper || reg < lower); - if ((extra & 0x800) && GET_CFLG) { Exception(6,oldpc); goto endlabel136; } -} -}}}m68k_incpc(4); -endlabel136: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4e8_0)(uae_u32 opcode) /* CHK2.L #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); - {uae_s32 upper,lower,reg = regs.regs[(extra >> 12) & 15]; - lower=get_long(dsta); upper = get_long(dsta+4); - SET_ZFLG (upper == reg || lower == reg); - SET_CFLG_ALWAYS (lower <= upper ? reg < lower || reg > upper : reg > upper || reg < lower); - if ((extra & 0x800) && GET_CFLG) { Exception(6,oldpc); goto endlabel137; } -} -}}}m68k_incpc(6); -endlabel137: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4f0_0)(uae_u32 opcode) /* CHK2.L #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - {uae_s32 upper,lower,reg = regs.regs[(extra >> 12) & 15]; - lower=get_long(dsta); upper = get_long(dsta+4); - SET_ZFLG (upper == reg || lower == reg); - SET_CFLG_ALWAYS (lower <= upper ? reg < lower || reg > upper : reg > upper || reg < lower); - if ((extra & 0x800) && GET_CFLG) { Exception(6,oldpc); goto endlabel138; } -} -}}}}endlabel138: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4f8_0)(uae_u32 opcode) /* CHK2.L #.W,(xxx).W */ -{ - cpuop_begin(); -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); - {uae_s32 upper,lower,reg = regs.regs[(extra >> 12) & 15]; - lower=get_long(dsta); upper = get_long(dsta+4); - SET_ZFLG (upper == reg || lower == reg); - SET_CFLG_ALWAYS (lower <= upper ? reg < lower || reg > upper : reg > upper || reg < lower); - if ((extra & 0x800) && GET_CFLG) { Exception(6,oldpc); goto endlabel139; } -} -}}}m68k_incpc(6); -endlabel139: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4f9_0)(uae_u32 opcode) /* CHK2.L #.W,(xxx).L */ -{ - cpuop_begin(); -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = get_ilong(4); - {uae_s32 upper,lower,reg = regs.regs[(extra >> 12) & 15]; - lower=get_long(dsta); upper = get_long(dsta+4); - SET_ZFLG (upper == reg || lower == reg); - SET_CFLG_ALWAYS (lower <= upper ? reg < lower || reg > upper : reg > upper || reg < lower); - if ((extra & 0x800) && GET_CFLG) { Exception(6,oldpc); goto endlabel140; } -} -}}}m68k_incpc(8); -endlabel140: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4fa_0)(uae_u32 opcode) /* CHK2.L #.W,(d16,PC) */ -{ - cpuop_begin(); - uae_u32 dstreg = 2; -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_getpc () + 4; - dsta += (uae_s32)(uae_s16)get_iword(4); - {uae_s32 upper,lower,reg = regs.regs[(extra >> 12) & 15]; - lower=get_long(dsta); upper = get_long(dsta+4); - SET_ZFLG (upper == reg || lower == reg); - SET_CFLG_ALWAYS (lower <= upper ? reg < lower || reg > upper : reg > upper || reg < lower); - if ((extra & 0x800) && GET_CFLG) { Exception(6,oldpc); goto endlabel141; } -} -}}}m68k_incpc(6); -endlabel141: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4fb_0)(uae_u32 opcode) /* CHK2.L #.W,(d8,PC,Xn) */ -{ - cpuop_begin(); - uae_u32 dstreg = 3; -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(2); -{m68k_incpc(4); -{ uaecptr tmppc = m68k_getpc(); - uaecptr dsta = get_disp_ea_020(tmppc, next_iword()); - {uae_s32 upper,lower,reg = regs.regs[(extra >> 12) & 15]; - lower=get_long(dsta); upper = get_long(dsta+4); - SET_ZFLG (upper == reg || lower == reg); - SET_CFLG_ALWAYS (lower <= upper ? reg < lower || reg > upper : reg > upper || reg < lower); - if ((extra & 0x800) && GET_CFLG) { Exception(6,oldpc); goto endlabel142; } -} -}}}}endlabel142: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_600_0)(uae_u32 opcode) /* ADD.B #.B,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_610_0)(uae_u32 opcode) /* ADD.B #.B,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_618_0)(uae_u32 opcode) /* ADD.B #.B,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_620_0)(uae_u32 opcode) /* ADD.B #.B,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; -{ uae_s8 dst = get_byte(dsta); - m68k_areg (regs, dstreg) = dsta; -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_628_0)(uae_u32 opcode) /* ADD.B #.B,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_630_0)(uae_u32 opcode) /* ADD.B #.B,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_638_0)(uae_u32 opcode) /* ADD.B #.B,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_639_0)(uae_u32 opcode) /* ADD.B #.B,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = get_ilong(4); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_640_0)(uae_u32 opcode) /* ADD.W #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_650_0)(uae_u32 opcode) /* ADD.W #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_658_0)(uae_u32 opcode) /* ADD.W #.W,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s16 dst = get_word(dsta); - m68k_areg(regs, dstreg) += 2; -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_660_0)(uae_u32 opcode) /* ADD.W #.W,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; -{ uae_s16 dst = get_word(dsta); - m68k_areg (regs, dstreg) = dsta; -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_668_0)(uae_u32 opcode) /* ADD.W #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_670_0)(uae_u32 opcode) /* ADD.W #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_678_0)(uae_u32 opcode) /* ADD.W #.W,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_679_0)(uae_u32 opcode) /* ADD.W #.W,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = get_ilong(4); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_680_0)(uae_u32 opcode) /* ADD.L #.L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_690_0)(uae_u32 opcode) /* ADD.L #.L,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_698_0)(uae_u32 opcode) /* ADD.L #.L,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); - m68k_areg(regs, dstreg) += 4; -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_6a0_0)(uae_u32 opcode) /* ADD.L #.L,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; -{ uae_s32 dst = get_long(dsta); - m68k_areg (regs, dstreg) = dsta; -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_6a8_0)(uae_u32 opcode) /* ADD.L #.L,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(6); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_6b0_0)(uae_u32 opcode) /* ADD.L #.L,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{m68k_incpc(6); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_6b8_0)(uae_u32 opcode) /* ADD.L #.L,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(6); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_6b9_0)(uae_u32 opcode) /* ADD.L #.L,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = get_ilong(6); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(10); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_6c0_0)(uae_u32 opcode) /* RTM.L Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{m68k_incpc(2); - op_illg(opcode); -} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_6c8_0)(uae_u32 opcode) /* RTM.L An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{m68k_incpc(2); - op_illg(opcode); -} cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6d0_0)(uae_u32 opcode) /* CALLM.L (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{m68k_incpc(2); - op_illg(opcode); -} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6e8_0)(uae_u32 opcode) /* CALLM.L (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{m68k_incpc(2); - op_illg(opcode); -} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6f0_0)(uae_u32 opcode) /* CALLM.L (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{m68k_incpc(2); - op_illg(opcode); -} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6f8_0)(uae_u32 opcode) /* CALLM.L (xxx).W */ -{ - cpuop_begin(); -{m68k_incpc(2); - op_illg(opcode); -} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6f9_0)(uae_u32 opcode) /* CALLM.L (xxx).L */ -{ - cpuop_begin(); -{m68k_incpc(2); - op_illg(opcode); -} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6fa_0)(uae_u32 opcode) /* CALLM.L (d16,PC) */ -{ - cpuop_begin(); -{m68k_incpc(2); - op_illg(opcode); -} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6fb_0)(uae_u32 opcode) /* CALLM.L (d8,PC,Xn) */ -{ - cpuop_begin(); -{m68k_incpc(2); - op_illg(opcode); -} cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_800_0)(uae_u32 opcode) /* BTST.L #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src &= 31; - SET_ZFLG (1 ^ ((dst >> src) & 1)); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_810_0)(uae_u32 opcode) /* BTST.B #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_818_0)(uae_u32 opcode) /* BTST.B #.W,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_820_0)(uae_u32 opcode) /* BTST.B #.W,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; -{ uae_s8 dst = get_byte(dsta); - m68k_areg (regs, dstreg) = dsta; - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_828_0)(uae_u32 opcode) /* BTST.B #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_830_0)(uae_u32 opcode) /* BTST.B #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_838_0)(uae_u32 opcode) /* BTST.B #.W,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_839_0)(uae_u32 opcode) /* BTST.B #.W,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = get_ilong(4); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_83a_0)(uae_u32 opcode) /* BTST.B #.W,(d16,PC) */ -{ - cpuop_begin(); - uae_u32 dstreg = 2; -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_getpc () + 4; - dsta += (uae_s32)(uae_s16)get_iword(4); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_83b_0)(uae_u32 opcode) /* BTST.B #.W,(d8,PC,Xn) */ -{ - cpuop_begin(); - uae_u32 dstreg = 3; -{{ uae_s16 src = get_iword(2); -{m68k_incpc(4); -{ uaecptr tmppc = m68k_getpc(); - uaecptr dsta = get_disp_ea_020(tmppc, next_iword()); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_83c_0)(uae_u32 opcode) /* BTST.B #.W,#.B */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); -{ uae_s8 dst = get_ibyte(4); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); -}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_840_0)(uae_u32 opcode) /* BCHG.L #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src &= 31; - dst ^= (1 << src); - SET_ZFLG (((uae_u32)dst & (1 << src)) >> src); - m68k_dreg(regs, dstreg) = (dst); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_850_0)(uae_u32 opcode) /* BCHG.B #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - dst ^= (1 << src); - SET_ZFLG (((uae_u32)dst & (1 << src)) >> src); - put_byte(dsta,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_858_0)(uae_u32 opcode) /* BCHG.B #.W,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; - src &= 7; - dst ^= (1 << src); - SET_ZFLG (((uae_u32)dst & (1 << src)) >> src); - put_byte(dsta,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_860_0)(uae_u32 opcode) /* BCHG.B #.W,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; -{ uae_s8 dst = get_byte(dsta); - m68k_areg (regs, dstreg) = dsta; - src &= 7; - dst ^= (1 << src); - SET_ZFLG (((uae_u32)dst & (1 << src)) >> src); - put_byte(dsta,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_868_0)(uae_u32 opcode) /* BCHG.B #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - dst ^= (1 << src); - SET_ZFLG (((uae_u32)dst & (1 << src)) >> src); - put_byte(dsta,dst); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_870_0)(uae_u32 opcode) /* BCHG.B #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - dst ^= (1 << src); - SET_ZFLG (((uae_u32)dst & (1 << src)) >> src); - put_byte(dsta,dst); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_878_0)(uae_u32 opcode) /* BCHG.B #.W,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - dst ^= (1 << src); - SET_ZFLG (((uae_u32)dst & (1 << src)) >> src); - put_byte(dsta,dst); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_879_0)(uae_u32 opcode) /* BCHG.B #.W,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = get_ilong(4); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - dst ^= (1 << src); - SET_ZFLG (((uae_u32)dst & (1 << src)) >> src); - put_byte(dsta,dst); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_87a_0)(uae_u32 opcode) /* BCHG.B #.W,(d16,PC) */ -{ - cpuop_begin(); - uae_u32 dstreg = 2; -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_getpc () + 4; - dsta += (uae_s32)(uae_s16)get_iword(4); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - dst ^= (1 << src); - SET_ZFLG (((uae_u32)dst & (1 << src)) >> src); - put_byte(dsta,dst); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_87b_0)(uae_u32 opcode) /* BCHG.B #.W,(d8,PC,Xn) */ -{ - cpuop_begin(); - uae_u32 dstreg = 3; -{{ uae_s16 src = get_iword(2); -{m68k_incpc(4); -{ uaecptr tmppc = m68k_getpc(); - uaecptr dsta = get_disp_ea_020(tmppc, next_iword()); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - dst ^= (1 << src); - SET_ZFLG (((uae_u32)dst & (1 << src)) >> src); - put_byte(dsta,dst); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_880_0)(uae_u32 opcode) /* BCLR.L #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src &= 31; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst &= ~(1 << src); - m68k_dreg(regs, dstreg) = (dst); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_890_0)(uae_u32 opcode) /* BCLR.B #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst &= ~(1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_898_0)(uae_u32 opcode) /* BCLR.B #.W,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst &= ~(1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8a0_0)(uae_u32 opcode) /* BCLR.B #.W,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; -{ uae_s8 dst = get_byte(dsta); - m68k_areg (regs, dstreg) = dsta; - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst &= ~(1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8a8_0)(uae_u32 opcode) /* BCLR.B #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst &= ~(1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8b0_0)(uae_u32 opcode) /* BCLR.B #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst &= ~(1 << src); - put_byte(dsta,dst); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8b8_0)(uae_u32 opcode) /* BCLR.B #.W,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst &= ~(1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8b9_0)(uae_u32 opcode) /* BCLR.B #.W,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = get_ilong(4); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst &= ~(1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8ba_0)(uae_u32 opcode) /* BCLR.B #.W,(d16,PC) */ -{ - cpuop_begin(); - uae_u32 dstreg = 2; -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_getpc () + 4; - dsta += (uae_s32)(uae_s16)get_iword(4); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst &= ~(1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8bb_0)(uae_u32 opcode) /* BCLR.B #.W,(d8,PC,Xn) */ -{ - cpuop_begin(); - uae_u32 dstreg = 3; -{{ uae_s16 src = get_iword(2); -{m68k_incpc(4); -{ uaecptr tmppc = m68k_getpc(); - uaecptr dsta = get_disp_ea_020(tmppc, next_iword()); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst &= ~(1 << src); - put_byte(dsta,dst); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8c0_0)(uae_u32 opcode) /* BSET.L #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src &= 31; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst |= (1 << src); - m68k_dreg(regs, dstreg) = (dst); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8d0_0)(uae_u32 opcode) /* BSET.B #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst |= (1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8d8_0)(uae_u32 opcode) /* BSET.B #.W,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst |= (1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8e0_0)(uae_u32 opcode) /* BSET.B #.W,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; -{ uae_s8 dst = get_byte(dsta); - m68k_areg (regs, dstreg) = dsta; - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst |= (1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8e8_0)(uae_u32 opcode) /* BSET.B #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst |= (1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8f0_0)(uae_u32 opcode) /* BSET.B #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst |= (1 << src); - put_byte(dsta,dst); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8f8_0)(uae_u32 opcode) /* BSET.B #.W,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst |= (1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8f9_0)(uae_u32 opcode) /* BSET.B #.W,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = get_ilong(4); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst |= (1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8fa_0)(uae_u32 opcode) /* BSET.B #.W,(d16,PC) */ -{ - cpuop_begin(); - uae_u32 dstreg = 2; -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_getpc () + 4; - dsta += (uae_s32)(uae_s16)get_iword(4); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst |= (1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8fb_0)(uae_u32 opcode) /* BSET.B #.W,(d8,PC,Xn) */ -{ - cpuop_begin(); - uae_u32 dstreg = 3; -{{ uae_s16 src = get_iword(2); -{m68k_incpc(4); -{ uaecptr tmppc = m68k_getpc(); - uaecptr dsta = get_disp_ea_020(tmppc, next_iword()); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst |= (1 << src); - put_byte(dsta,dst); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_a00_0)(uae_u32 opcode) /* EOR.B #.B,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uae_s8 dst = m68k_dreg(regs, dstreg); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_a10_0)(uae_u32 opcode) /* EOR.B #.B,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_a18_0)(uae_u32 opcode) /* EOR.B #.B,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_a20_0)(uae_u32 opcode) /* EOR.B #.B,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; -{ uae_s8 dst = get_byte(dsta); - m68k_areg (regs, dstreg) = dsta; - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_a28_0)(uae_u32 opcode) /* EOR.B #.B,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ uae_s8 dst = get_byte(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_a30_0)(uae_u32 opcode) /* EOR.B #.B,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s8 dst = get_byte(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_a38_0)(uae_u32 opcode) /* EOR.B #.B,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); -{ uae_s8 dst = get_byte(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_a39_0)(uae_u32 opcode) /* EOR.B #.B,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = get_ilong(4); -{ uae_s8 dst = get_byte(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_a3c_0)(uae_u32 opcode) /* EORSR.B #.W */ -{ - cpuop_begin(); -{ MakeSR(); -{ uae_s16 src = get_iword(2); - src &= 0xFF; - regs.sr ^= src; - MakeFromSR(); -}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_a40_0)(uae_u32 opcode) /* EOR.W #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_a50_0)(uae_u32 opcode) /* EOR.W #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s16 dst = get_word(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_a58_0)(uae_u32 opcode) /* EOR.W #.W,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s16 dst = get_word(dsta); - m68k_areg(regs, dstreg) += 2; - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_a60_0)(uae_u32 opcode) /* EOR.W #.W,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; -{ uae_s16 dst = get_word(dsta); - m68k_areg (regs, dstreg) = dsta; - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_a68_0)(uae_u32 opcode) /* EOR.W #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ uae_s16 dst = get_word(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_a70_0)(uae_u32 opcode) /* EOR.W #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s16 dst = get_word(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_a78_0)(uae_u32 opcode) /* EOR.W #.W,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); -{ uae_s16 dst = get_word(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_a79_0)(uae_u32 opcode) /* EOR.W #.W,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = get_ilong(4); -{ uae_s16 dst = get_word(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -#endif - -#ifdef PART_2 -void REGPARAM2 CPUFUNC(op_a7c_0)(uae_u32 opcode) /* EORSR.W #.W */ -{ - cpuop_begin(); -{if (!regs.s) { Exception(8,0); goto endlabel234; } -{ MakeSR(); -{ uae_s16 src = get_iword(2); - regs.sr ^= src; - MakeFromSR(); -}}}m68k_incpc(4); -endlabel234: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_a80_0)(uae_u32 opcode) /* EOR.L #.L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_a90_0)(uae_u32 opcode) /* EOR.L #.L,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_a98_0)(uae_u32 opcode) /* EOR.L #.L,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); - m68k_areg(regs, dstreg) += 4; - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_aa0_0)(uae_u32 opcode) /* EOR.L #.L,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; -{ uae_s32 dst = get_long(dsta); - m68k_areg (regs, dstreg) = dsta; - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_aa8_0)(uae_u32 opcode) /* EOR.L #.L,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(6); -{ uae_s32 dst = get_long(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ab0_0)(uae_u32 opcode) /* EOR.L #.L,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{m68k_incpc(6); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s32 dst = get_long(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ab8_0)(uae_u32 opcode) /* EOR.L #.L,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(6); -{ uae_s32 dst = get_long(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ab9_0)(uae_u32 opcode) /* EOR.L #.L,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = get_ilong(6); -{ uae_s32 dst = get_long(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(10); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ad0_0)(uae_u32 opcode) /* CAS.B #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); -{ int ru = (src >> 6) & 7; - int rc = src & 7; -{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(m68k_dreg(regs, rc))); -{ int flgs = ((uae_s8)(m68k_dreg(regs, rc))) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(m68k_dreg(regs, rc))) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); - if (GET_ZFLG){ put_byte(dsta,(m68k_dreg(regs, ru))); -}else{m68k_dreg(regs, rc) = dst; -}}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ad8_0)(uae_u32 opcode) /* CAS.B #.W,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; -{ int ru = (src >> 6) & 7; - int rc = src & 7; -{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(m68k_dreg(regs, rc))); -{ int flgs = ((uae_s8)(m68k_dreg(regs, rc))) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(m68k_dreg(regs, rc))) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); - if (GET_ZFLG){ put_byte(dsta,(m68k_dreg(regs, ru))); -}else{m68k_dreg(regs, rc) = dst; -}}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ae0_0)(uae_u32 opcode) /* CAS.B #.W,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; -{ uae_s8 dst = get_byte(dsta); - m68k_areg (regs, dstreg) = dsta; -{ int ru = (src >> 6) & 7; - int rc = src & 7; -{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(m68k_dreg(regs, rc))); -{ int flgs = ((uae_s8)(m68k_dreg(regs, rc))) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(m68k_dreg(regs, rc))) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); - if (GET_ZFLG){ put_byte(dsta,(m68k_dreg(regs, ru))); -}else{m68k_dreg(regs, rc) = dst; -}}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ae8_0)(uae_u32 opcode) /* CAS.B #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ uae_s8 dst = get_byte(dsta); -{ int ru = (src >> 6) & 7; - int rc = src & 7; -{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(m68k_dreg(regs, rc))); -{ int flgs = ((uae_s8)(m68k_dreg(regs, rc))) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(m68k_dreg(regs, rc))) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); - if (GET_ZFLG){ put_byte(dsta,(m68k_dreg(regs, ru))); -}else{m68k_dreg(regs, rc) = dst; -}}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_af0_0)(uae_u32 opcode) /* CAS.B #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s8 dst = get_byte(dsta); -{ int ru = (src >> 6) & 7; - int rc = src & 7; -{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(m68k_dreg(regs, rc))); -{ int flgs = ((uae_s8)(m68k_dreg(regs, rc))) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(m68k_dreg(regs, rc))) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); - if (GET_ZFLG){ put_byte(dsta,(m68k_dreg(regs, ru))); -}else{m68k_dreg(regs, rc) = dst; -}}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_af8_0)(uae_u32 opcode) /* CAS.B #.W,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); -{ uae_s8 dst = get_byte(dsta); -{ int ru = (src >> 6) & 7; - int rc = src & 7; -{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(m68k_dreg(regs, rc))); -{ int flgs = ((uae_s8)(m68k_dreg(regs, rc))) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(m68k_dreg(regs, rc))) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); - if (GET_ZFLG){ put_byte(dsta,(m68k_dreg(regs, ru))); -}else{m68k_dreg(regs, rc) = dst; -}}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_af9_0)(uae_u32 opcode) /* CAS.B #.W,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = get_ilong(4); -{ uae_s8 dst = get_byte(dsta); -{ int ru = (src >> 6) & 7; - int rc = src & 7; -{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(m68k_dreg(regs, rc))); -{ int flgs = ((uae_s8)(m68k_dreg(regs, rc))) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(m68k_dreg(regs, rc))) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); - if (GET_ZFLG){ put_byte(dsta,(m68k_dreg(regs, ru))); -}else{m68k_dreg(regs, rc) = dst; -}}}}}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c00_0)(uae_u32 opcode) /* CMP.B #.B,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); -}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c10_0)(uae_u32 opcode) /* CMP.B #.B,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c18_0)(uae_u32 opcode) /* CMP.B #.B,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c20_0)(uae_u32 opcode) /* CMP.B #.B,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; -{ uae_s8 dst = get_byte(dsta); - m68k_areg (regs, dstreg) = dsta; -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c28_0)(uae_u32 opcode) /* CMP.B #.B,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c30_0)(uae_u32 opcode) /* CMP.B #.B,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c38_0)(uae_u32 opcode) /* CMP.B #.B,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c39_0)(uae_u32 opcode) /* CMP.B #.B,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = get_ilong(4); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c3a_0)(uae_u32 opcode) /* CMP.B #.B,(d16,PC) */ -{ - cpuop_begin(); - uae_u32 dstreg = 2; -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = m68k_getpc () + 4; - dsta += (uae_s32)(uae_s16)get_iword(4); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c3b_0)(uae_u32 opcode) /* CMP.B #.B,(d8,PC,Xn) */ -{ - cpuop_begin(); - uae_u32 dstreg = 3; -{{ uae_s8 src = get_ibyte(2); -{m68k_incpc(4); -{ uaecptr tmppc = m68k_getpc(); - uaecptr dsta = get_disp_ea_020(tmppc, next_iword()); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c40_0)(uae_u32 opcode) /* CMP.W #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); -}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c50_0)(uae_u32 opcode) /* CMP.W #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c58_0)(uae_u32 opcode) /* CMP.W #.W,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s16 dst = get_word(dsta); - m68k_areg(regs, dstreg) += 2; -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c60_0)(uae_u32 opcode) /* CMP.W #.W,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; -{ uae_s16 dst = get_word(dsta); - m68k_areg (regs, dstreg) = dsta; -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c68_0)(uae_u32 opcode) /* CMP.W #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c70_0)(uae_u32 opcode) /* CMP.W #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c78_0)(uae_u32 opcode) /* CMP.W #.W,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c79_0)(uae_u32 opcode) /* CMP.W #.W,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = get_ilong(4); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c7a_0)(uae_u32 opcode) /* CMP.W #.W,(d16,PC) */ -{ - cpuop_begin(); - uae_u32 dstreg = 2; -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_getpc () + 4; - dsta += (uae_s32)(uae_s16)get_iword(4); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c7b_0)(uae_u32 opcode) /* CMP.W #.W,(d8,PC,Xn) */ -{ - cpuop_begin(); - uae_u32 dstreg = 3; -{{ uae_s16 src = get_iword(2); -{m68k_incpc(4); -{ uaecptr tmppc = m68k_getpc(); - uaecptr dsta = get_disp_ea_020(tmppc, next_iword()); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c80_0)(uae_u32 opcode) /* CMP.L #.L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c90_0)(uae_u32 opcode) /* CMP.L #.L,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c98_0)(uae_u32 opcode) /* CMP.L #.L,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); - m68k_areg(regs, dstreg) += 4; -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ca0_0)(uae_u32 opcode) /* CMP.L #.L,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; -{ uae_s32 dst = get_long(dsta); - m68k_areg (regs, dstreg) = dsta; -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ca8_0)(uae_u32 opcode) /* CMP.L #.L,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(6); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_cb0_0)(uae_u32 opcode) /* CMP.L #.L,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{m68k_incpc(6); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_cb8_0)(uae_u32 opcode) /* CMP.L #.L,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(6); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_cb9_0)(uae_u32 opcode) /* CMP.L #.L,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = get_ilong(6); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(10); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_cba_0)(uae_u32 opcode) /* CMP.L #.L,(d16,PC) */ -{ - cpuop_begin(); - uae_u32 dstreg = 2; -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = m68k_getpc () + 6; - dsta += (uae_s32)(uae_s16)get_iword(6); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_cbb_0)(uae_u32 opcode) /* CMP.L #.L,(d8,PC,Xn) */ -{ - cpuop_begin(); - uae_u32 dstreg = 3; -{{ uae_s32 src = get_ilong(2); -{m68k_incpc(6); -{ uaecptr tmppc = m68k_getpc(); - uaecptr dsta = get_disp_ea_020(tmppc, next_iword()); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_cd0_0)(uae_u32 opcode) /* CAS.W #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s16 dst = get_word(dsta); -{ int ru = (src >> 6) & 7; - int rc = src & 7; -{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(m68k_dreg(regs, rc))); -{ int flgs = ((uae_s16)(m68k_dreg(regs, rc))) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(m68k_dreg(regs, rc))) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); - if (GET_ZFLG){ put_word(dsta,(m68k_dreg(regs, ru))); -}else{m68k_dreg(regs, rc) = dst; -}}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_cd8_0)(uae_u32 opcode) /* CAS.W #.W,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s16 dst = get_word(dsta); - m68k_areg(regs, dstreg) += 2; -{ int ru = (src >> 6) & 7; - int rc = src & 7; -{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(m68k_dreg(regs, rc))); -{ int flgs = ((uae_s16)(m68k_dreg(regs, rc))) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(m68k_dreg(regs, rc))) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); - if (GET_ZFLG){ put_word(dsta,(m68k_dreg(regs, ru))); -}else{m68k_dreg(regs, rc) = dst; -}}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ce0_0)(uae_u32 opcode) /* CAS.W #.W,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; -{ uae_s16 dst = get_word(dsta); - m68k_areg (regs, dstreg) = dsta; -{ int ru = (src >> 6) & 7; - int rc = src & 7; -{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(m68k_dreg(regs, rc))); -{ int flgs = ((uae_s16)(m68k_dreg(regs, rc))) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(m68k_dreg(regs, rc))) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); - if (GET_ZFLG){ put_word(dsta,(m68k_dreg(regs, ru))); -}else{m68k_dreg(regs, rc) = dst; -}}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ce8_0)(uae_u32 opcode) /* CAS.W #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ uae_s16 dst = get_word(dsta); -{ int ru = (src >> 6) & 7; - int rc = src & 7; -{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(m68k_dreg(regs, rc))); -{ int flgs = ((uae_s16)(m68k_dreg(regs, rc))) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(m68k_dreg(regs, rc))) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); - if (GET_ZFLG){ put_word(dsta,(m68k_dreg(regs, ru))); -}else{m68k_dreg(regs, rc) = dst; -}}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_cf0_0)(uae_u32 opcode) /* CAS.W #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s16 dst = get_word(dsta); -{ int ru = (src >> 6) & 7; - int rc = src & 7; -{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(m68k_dreg(regs, rc))); -{ int flgs = ((uae_s16)(m68k_dreg(regs, rc))) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(m68k_dreg(regs, rc))) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); - if (GET_ZFLG){ put_word(dsta,(m68k_dreg(regs, ru))); -}else{m68k_dreg(regs, rc) = dst; -}}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_cf8_0)(uae_u32 opcode) /* CAS.W #.W,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); -{ uae_s16 dst = get_word(dsta); -{ int ru = (src >> 6) & 7; - int rc = src & 7; -{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(m68k_dreg(regs, rc))); -{ int flgs = ((uae_s16)(m68k_dreg(regs, rc))) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(m68k_dreg(regs, rc))) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); - if (GET_ZFLG){ put_word(dsta,(m68k_dreg(regs, ru))); -}else{m68k_dreg(regs, rc) = dst; -}}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_cf9_0)(uae_u32 opcode) /* CAS.W #.W,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = get_ilong(4); -{ uae_s16 dst = get_word(dsta); -{ int ru = (src >> 6) & 7; - int rc = src & 7; -{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(m68k_dreg(regs, rc))); -{ int flgs = ((uae_s16)(m68k_dreg(regs, rc))) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(m68k_dreg(regs, rc))) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); - if (GET_ZFLG){ put_word(dsta,(m68k_dreg(regs, ru))); -}else{m68k_dreg(regs, rc) = dst; -}}}}}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_cfc_0)(uae_u32 opcode) /* CAS2.W #.L */ -{ - cpuop_begin(); -{{ uae_s32 extra = get_ilong(2); - uae_u32 rn1 = regs.regs[(extra >> 28) & 15]; - uae_u32 rn2 = regs.regs[(extra >> 12) & 15]; - uae_u16 dst1 = get_word(rn1), dst2 = get_word(rn2); -{uae_u32 newv = ((uae_s16)(dst1)) - ((uae_s16)(m68k_dreg(regs, (extra >> 16) & 7))); -{ int flgs = ((uae_s16)(m68k_dreg(regs, (extra >> 16) & 7))) < 0; - int flgo = ((uae_s16)(dst1)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(m68k_dreg(regs, (extra >> 16) & 7))) > ((uae_u16)(dst1))); - SET_NFLG (flgn != 0); - if (GET_ZFLG) { -{uae_u32 newv = ((uae_s16)(dst2)) - ((uae_s16)(m68k_dreg(regs, extra & 7))); -{ int flgs = ((uae_s16)(m68k_dreg(regs, extra & 7))) < 0; - int flgo = ((uae_s16)(dst2)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(m68k_dreg(regs, extra & 7))) > ((uae_u16)(dst2))); - SET_NFLG (flgn != 0); - if (GET_ZFLG) { - put_word(rn1, m68k_dreg(regs, (extra >> 22) & 7)); - put_word(rn1, m68k_dreg(regs, (extra >> 6) & 7)); - }} -}}}} if (! GET_ZFLG) { - m68k_dreg(regs, (extra >> 22) & 7) = (m68k_dreg(regs, (extra >> 22) & 7) & ~0xffff) | (dst1 & 0xffff); - m68k_dreg(regs, (extra >> 6) & 7) = (m68k_dreg(regs, (extra >> 6) & 7) & ~0xffff) | (dst2 & 0xffff); - } -}}m68k_incpc(6); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_e10_0)(uae_u32 opcode) /* MOVES.B #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{if (!regs.s) { Exception(8,0); goto endlabel288; } -{{ uae_s16 extra = get_iword(2); - if (extra & 0x800) -{ uae_u32 src = regs.regs[(extra >> 12) & 15]; -{ uaecptr dsta = m68k_areg(regs, dstreg); - put_byte(dsta,src); -}}else{{ uaecptr srca = m68k_areg(regs, dstreg); -{ uae_s8 src = get_byte(srca); - if (extra & 0x8000) { - m68k_areg(regs, (extra >> 12) & 7) = (uae_s32)(uae_s8)src; - } else { - m68k_dreg(regs, (extra >> 12) & 7) = (m68k_dreg(regs, (extra >> 12) & 7) & ~0xff) | ((src) & 0xff); - } -}}}}}}m68k_incpc(4); -endlabel288: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_e18_0)(uae_u32 opcode) /* MOVES.B #.W,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{if (!regs.s) { Exception(8,0); goto endlabel289; } -{{ uae_s16 extra = get_iword(2); - if (extra & 0x800) -{ uae_u32 src = regs.regs[(extra >> 12) & 15]; -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; - put_byte(dsta,src); -}}else{{ uaecptr srca = m68k_areg(regs, dstreg); -{ uae_s8 src = get_byte(srca); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; - if (extra & 0x8000) { - m68k_areg(regs, (extra >> 12) & 7) = (uae_s32)(uae_s8)src; - } else { - m68k_dreg(regs, (extra >> 12) & 7) = (m68k_dreg(regs, (extra >> 12) & 7) & ~0xff) | ((src) & 0xff); - } -}}}}}}m68k_incpc(4); -endlabel289: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_e20_0)(uae_u32 opcode) /* MOVES.B #.W,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{if (!regs.s) { Exception(8,0); goto endlabel290; } -{{ uae_s16 extra = get_iword(2); - if (extra & 0x800) -{ uae_u32 src = regs.regs[(extra >> 12) & 15]; -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; - m68k_areg (regs, dstreg) = dsta; - put_byte(dsta,src); -}}else{{ uaecptr srca = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; -{ uae_s8 src = get_byte(srca); - m68k_areg (regs, dstreg) = srca; - if (extra & 0x8000) { - m68k_areg(regs, (extra >> 12) & 7) = (uae_s32)(uae_s8)src; - } else { - m68k_dreg(regs, (extra >> 12) & 7) = (m68k_dreg(regs, (extra >> 12) & 7) & ~0xff) | ((src) & 0xff); - } -}}}}}}m68k_incpc(4); -endlabel290: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_e28_0)(uae_u32 opcode) /* MOVES.B #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{if (!regs.s) { Exception(8,0); goto endlabel291; } -{{ uae_s16 extra = get_iword(2); - if (extra & 0x800) -{ uae_u32 src = regs.regs[(extra >> 12) & 15]; -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); - put_byte(dsta,src); -}}else{{ uaecptr srca = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(6); -{ uae_s8 src = get_byte(srca); - if (extra & 0x8000) { - m68k_areg(regs, (extra >> 12) & 7) = (uae_s32)(uae_s8)src; - } else { - m68k_dreg(regs, (extra >> 12) & 7) = (m68k_dreg(regs, (extra >> 12) & 7) & ~0xff) | ((src) & 0xff); - } -}}}}}}m68k_incpc(8); -endlabel291: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_e30_0)(uae_u32 opcode) /* MOVES.B #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{if (!regs.s) { Exception(8,0); goto endlabel292; } -{{ uae_s16 extra = get_iword(2); - if (extra & 0x800) -{ uae_u32 src = regs.regs[(extra >> 12) & 15]; -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - put_byte(dsta,src); -}}}else{{{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s8 src = get_byte(srca); - if (extra & 0x8000) { - m68k_areg(regs, (extra >> 12) & 7) = (uae_s32)(uae_s8)src; - } else { - m68k_dreg(regs, (extra >> 12) & 7) = (m68k_dreg(regs, (extra >> 12) & 7) & ~0xff) | ((src) & 0xff); - } -}}}}}}}endlabel292: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_e38_0)(uae_u32 opcode) /* MOVES.B #.W,(xxx).W */ -{ - cpuop_begin(); -{if (!regs.s) { Exception(8,0); goto endlabel293; } -{{ uae_s16 extra = get_iword(2); - if (extra & 0x800) -{ uae_u32 src = regs.regs[(extra >> 12) & 15]; -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); - put_byte(dsta,src); -}}else{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(6); -{ uae_s8 src = get_byte(srca); - if (extra & 0x8000) { - m68k_areg(regs, (extra >> 12) & 7) = (uae_s32)(uae_s8)src; - } else { - m68k_dreg(regs, (extra >> 12) & 7) = (m68k_dreg(regs, (extra >> 12) & 7) & ~0xff) | ((src) & 0xff); - } -}}}}}}m68k_incpc(8); -endlabel293: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_e39_0)(uae_u32 opcode) /* MOVES.B #.W,(xxx).L */ -{ - cpuop_begin(); -{if (!regs.s) { Exception(8,0); goto endlabel294; } -{{ uae_s16 extra = get_iword(2); - if (extra & 0x800) -{ uae_u32 src = regs.regs[(extra >> 12) & 15]; -{ uaecptr dsta = get_ilong(4); - put_byte(dsta,src); -}}else{{ uaecptr srca = get_ilong(8); -{ uae_s8 src = get_byte(srca); - if (extra & 0x8000) { - m68k_areg(regs, (extra >> 12) & 7) = (uae_s32)(uae_s8)src; - } else { - m68k_dreg(regs, (extra >> 12) & 7) = (m68k_dreg(regs, (extra >> 12) & 7) & ~0xff) | ((src) & 0xff); - } -}}}}}}m68k_incpc(12); -endlabel294: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_e50_0)(uae_u32 opcode) /* MOVES.W #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{if (!regs.s) { Exception(8,0); goto endlabel295; } -{{ uae_s16 extra = get_iword(2); - if (extra & 0x800) -{ uae_u32 src = regs.regs[(extra >> 12) & 15]; -{ uaecptr dsta = m68k_areg(regs, dstreg); - put_word(dsta,src); -}}else{{ uaecptr srca = m68k_areg(regs, dstreg); -{ uae_s16 src = get_word(srca); - if (extra & 0x8000) { - m68k_areg(regs, (extra >> 12) & 7) = (uae_s32)(uae_s16)src; - } else { - m68k_dreg(regs, (extra >> 12) & 7) = (m68k_dreg(regs, (extra >> 12) & 7) & ~0xffff) | ((src) & 0xffff); - } -}}}}}}m68k_incpc(4); -endlabel295: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_e58_0)(uae_u32 opcode) /* MOVES.W #.W,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{if (!regs.s) { Exception(8,0); goto endlabel296; } -{{ uae_s16 extra = get_iword(2); - if (extra & 0x800) -{ uae_u32 src = regs.regs[(extra >> 12) & 15]; -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += 2; - put_word(dsta,src); -}}else{{ uaecptr srca = m68k_areg(regs, dstreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, dstreg) += 2; - if (extra & 0x8000) { - m68k_areg(regs, (extra >> 12) & 7) = (uae_s32)(uae_s16)src; - } else { - m68k_dreg(regs, (extra >> 12) & 7) = (m68k_dreg(regs, (extra >> 12) & 7) & ~0xffff) | ((src) & 0xffff); - } -}}}}}}m68k_incpc(4); -endlabel296: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_e60_0)(uae_u32 opcode) /* MOVES.W #.W,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{if (!regs.s) { Exception(8,0); goto endlabel297; } -{{ uae_s16 extra = get_iword(2); - if (extra & 0x800) -{ uae_u32 src = regs.regs[(extra >> 12) & 15]; -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; - m68k_areg (regs, dstreg) = dsta; - put_word(dsta,src); -}}else{{ uaecptr srca = m68k_areg(regs, dstreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, dstreg) = srca; - if (extra & 0x8000) { - m68k_areg(regs, (extra >> 12) & 7) = (uae_s32)(uae_s16)src; - } else { - m68k_dreg(regs, (extra >> 12) & 7) = (m68k_dreg(regs, (extra >> 12) & 7) & ~0xffff) | ((src) & 0xffff); - } -}}}}}}m68k_incpc(4); -endlabel297: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_e68_0)(uae_u32 opcode) /* MOVES.W #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{if (!regs.s) { Exception(8,0); goto endlabel298; } -{{ uae_s16 extra = get_iword(2); - if (extra & 0x800) -{ uae_u32 src = regs.regs[(extra >> 12) & 15]; -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); - put_word(dsta,src); -}}else{{ uaecptr srca = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(6); -{ uae_s16 src = get_word(srca); - if (extra & 0x8000) { - m68k_areg(regs, (extra >> 12) & 7) = (uae_s32)(uae_s16)src; - } else { - m68k_dreg(regs, (extra >> 12) & 7) = (m68k_dreg(regs, (extra >> 12) & 7) & ~0xffff) | ((src) & 0xffff); - } -}}}}}}m68k_incpc(8); -endlabel298: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_e70_0)(uae_u32 opcode) /* MOVES.W #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{if (!regs.s) { Exception(8,0); goto endlabel299; } -{{ uae_s16 extra = get_iword(2); - if (extra & 0x800) -{ uae_u32 src = regs.regs[(extra >> 12) & 15]; -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - put_word(dsta,src); -}}}else{{{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s16 src = get_word(srca); - if (extra & 0x8000) { - m68k_areg(regs, (extra >> 12) & 7) = (uae_s32)(uae_s16)src; - } else { - m68k_dreg(regs, (extra >> 12) & 7) = (m68k_dreg(regs, (extra >> 12) & 7) & ~0xffff) | ((src) & 0xffff); - } -}}}}}}}endlabel299: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_e78_0)(uae_u32 opcode) /* MOVES.W #.W,(xxx).W */ -{ - cpuop_begin(); -{if (!regs.s) { Exception(8,0); goto endlabel300; } -{{ uae_s16 extra = get_iword(2); - if (extra & 0x800) -{ uae_u32 src = regs.regs[(extra >> 12) & 15]; -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); - put_word(dsta,src); -}}else{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(6); -{ uae_s16 src = get_word(srca); - if (extra & 0x8000) { - m68k_areg(regs, (extra >> 12) & 7) = (uae_s32)(uae_s16)src; - } else { - m68k_dreg(regs, (extra >> 12) & 7) = (m68k_dreg(regs, (extra >> 12) & 7) & ~0xffff) | ((src) & 0xffff); - } -}}}}}}m68k_incpc(8); -endlabel300: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_e79_0)(uae_u32 opcode) /* MOVES.W #.W,(xxx).L */ -{ - cpuop_begin(); -{if (!regs.s) { Exception(8,0); goto endlabel301; } -{{ uae_s16 extra = get_iword(2); - if (extra & 0x800) -{ uae_u32 src = regs.regs[(extra >> 12) & 15]; -{ uaecptr dsta = get_ilong(4); - put_word(dsta,src); -}}else{{ uaecptr srca = get_ilong(8); -{ uae_s16 src = get_word(srca); - if (extra & 0x8000) { - m68k_areg(regs, (extra >> 12) & 7) = (uae_s32)(uae_s16)src; - } else { - m68k_dreg(regs, (extra >> 12) & 7) = (m68k_dreg(regs, (extra >> 12) & 7) & ~0xffff) | ((src) & 0xffff); - } -}}}}}}m68k_incpc(12); -endlabel301: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_e90_0)(uae_u32 opcode) /* MOVES.L #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{if (!regs.s) { Exception(8,0); goto endlabel302; } -{{ uae_s16 extra = get_iword(2); - if (extra & 0x800) -{ uae_u32 src = regs.regs[(extra >> 12) & 15]; -{ uaecptr dsta = m68k_areg(regs, dstreg); - put_long(dsta,src); -}}else{{ uaecptr srca = m68k_areg(regs, dstreg); -{ uae_s32 src = get_long(srca); - if (extra & 0x8000) { - m68k_areg(regs, (extra >> 12) & 7) = src; - } else { - m68k_dreg(regs, (extra >> 12) & 7) = (src); - } -}}}}}}m68k_incpc(4); -endlabel302: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_e98_0)(uae_u32 opcode) /* MOVES.L #.W,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{if (!regs.s) { Exception(8,0); goto endlabel303; } -{{ uae_s16 extra = get_iword(2); - if (extra & 0x800) -{ uae_u32 src = regs.regs[(extra >> 12) & 15]; -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += 4; - put_long(dsta,src); -}}else{{ uaecptr srca = m68k_areg(regs, dstreg); -{ uae_s32 src = get_long(srca); - m68k_areg(regs, dstreg) += 4; - if (extra & 0x8000) { - m68k_areg(regs, (extra >> 12) & 7) = src; - } else { - m68k_dreg(regs, (extra >> 12) & 7) = (src); - } -}}}}}}m68k_incpc(4); -endlabel303: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_ea0_0)(uae_u32 opcode) /* MOVES.L #.W,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{if (!regs.s) { Exception(8,0); goto endlabel304; } -{{ uae_s16 extra = get_iword(2); - if (extra & 0x800) -{ uae_u32 src = regs.regs[(extra >> 12) & 15]; -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; - m68k_areg (regs, dstreg) = dsta; - put_long(dsta,src); -}}else{{ uaecptr srca = m68k_areg(regs, dstreg) - 4; -{ uae_s32 src = get_long(srca); - m68k_areg (regs, dstreg) = srca; - if (extra & 0x8000) { - m68k_areg(regs, (extra >> 12) & 7) = src; - } else { - m68k_dreg(regs, (extra >> 12) & 7) = (src); - } -}}}}}}m68k_incpc(4); -endlabel304: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_ea8_0)(uae_u32 opcode) /* MOVES.L #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{if (!regs.s) { Exception(8,0); goto endlabel305; } -{{ uae_s16 extra = get_iword(2); - if (extra & 0x800) -{ uae_u32 src = regs.regs[(extra >> 12) & 15]; -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); - put_long(dsta,src); -}}else{{ uaecptr srca = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(6); -{ uae_s32 src = get_long(srca); - if (extra & 0x8000) { - m68k_areg(regs, (extra >> 12) & 7) = src; - } else { - m68k_dreg(regs, (extra >> 12) & 7) = (src); - } -}}}}}}m68k_incpc(8); -endlabel305: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_eb0_0)(uae_u32 opcode) /* MOVES.L #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{if (!regs.s) { Exception(8,0); goto endlabel306; } -{{ uae_s16 extra = get_iword(2); - if (extra & 0x800) -{ uae_u32 src = regs.regs[(extra >> 12) & 15]; -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - put_long(dsta,src); -}}}else{{{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s32 src = get_long(srca); - if (extra & 0x8000) { - m68k_areg(regs, (extra >> 12) & 7) = src; - } else { - m68k_dreg(regs, (extra >> 12) & 7) = (src); - } -}}}}}}}endlabel306: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_eb8_0)(uae_u32 opcode) /* MOVES.L #.W,(xxx).W */ -{ - cpuop_begin(); -{if (!regs.s) { Exception(8,0); goto endlabel307; } -{{ uae_s16 extra = get_iword(2); - if (extra & 0x800) -{ uae_u32 src = regs.regs[(extra >> 12) & 15]; -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); - put_long(dsta,src); -}}else{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(6); -{ uae_s32 src = get_long(srca); - if (extra & 0x8000) { - m68k_areg(regs, (extra >> 12) & 7) = src; - } else { - m68k_dreg(regs, (extra >> 12) & 7) = (src); - } -}}}}}}m68k_incpc(8); -endlabel307: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_eb9_0)(uae_u32 opcode) /* MOVES.L #.W,(xxx).L */ -{ - cpuop_begin(); -{if (!regs.s) { Exception(8,0); goto endlabel308; } -{{ uae_s16 extra = get_iword(2); - if (extra & 0x800) -{ uae_u32 src = regs.regs[(extra >> 12) & 15]; -{ uaecptr dsta = get_ilong(4); - put_long(dsta,src); -}}else{{ uaecptr srca = get_ilong(8); -{ uae_s32 src = get_long(srca); - if (extra & 0x8000) { - m68k_areg(regs, (extra >> 12) & 7) = src; - } else { - m68k_dreg(regs, (extra >> 12) & 7) = (src); - } -}}}}}}m68k_incpc(12); -endlabel308: ; - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_ed0_0)(uae_u32 opcode) /* CAS.L #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); -{ int ru = (src >> 6) & 7; - int rc = src & 7; -{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(m68k_dreg(regs, rc))); -{ int flgs = ((uae_s32)(m68k_dreg(regs, rc))) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(m68k_dreg(regs, rc))) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); - if (GET_ZFLG){ put_long(dsta,(m68k_dreg(regs, ru))); -}else{m68k_dreg(regs, rc) = dst; -}}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ed8_0)(uae_u32 opcode) /* CAS.L #.W,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); - m68k_areg(regs, dstreg) += 4; -{ int ru = (src >> 6) & 7; - int rc = src & 7; -{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(m68k_dreg(regs, rc))); -{ int flgs = ((uae_s32)(m68k_dreg(regs, rc))) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(m68k_dreg(regs, rc))) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); - if (GET_ZFLG){ put_long(dsta,(m68k_dreg(regs, ru))); -}else{m68k_dreg(regs, rc) = dst; -}}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ee0_0)(uae_u32 opcode) /* CAS.L #.W,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; -{ uae_s32 dst = get_long(dsta); - m68k_areg (regs, dstreg) = dsta; -{ int ru = (src >> 6) & 7; - int rc = src & 7; -{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(m68k_dreg(regs, rc))); -{ int flgs = ((uae_s32)(m68k_dreg(regs, rc))) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(m68k_dreg(regs, rc))) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); - if (GET_ZFLG){ put_long(dsta,(m68k_dreg(regs, ru))); -}else{m68k_dreg(regs, rc) = dst; -}}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ee8_0)(uae_u32 opcode) /* CAS.L #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ uae_s32 dst = get_long(dsta); -{ int ru = (src >> 6) & 7; - int rc = src & 7; -{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(m68k_dreg(regs, rc))); -{ int flgs = ((uae_s32)(m68k_dreg(regs, rc))) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(m68k_dreg(regs, rc))) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); - if (GET_ZFLG){ put_long(dsta,(m68k_dreg(regs, ru))); -}else{m68k_dreg(regs, rc) = dst; -}}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ef0_0)(uae_u32 opcode) /* CAS.L #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s32 dst = get_long(dsta); -{ int ru = (src >> 6) & 7; - int rc = src & 7; -{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(m68k_dreg(regs, rc))); -{ int flgs = ((uae_s32)(m68k_dreg(regs, rc))) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(m68k_dreg(regs, rc))) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); - if (GET_ZFLG){ put_long(dsta,(m68k_dreg(regs, ru))); -}else{m68k_dreg(regs, rc) = dst; -}}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ef8_0)(uae_u32 opcode) /* CAS.L #.W,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); -{ uae_s32 dst = get_long(dsta); -{ int ru = (src >> 6) & 7; - int rc = src & 7; -{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(m68k_dreg(regs, rc))); -{ int flgs = ((uae_s32)(m68k_dreg(regs, rc))) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(m68k_dreg(regs, rc))) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); - if (GET_ZFLG){ put_long(dsta,(m68k_dreg(regs, ru))); -}else{m68k_dreg(regs, rc) = dst; -}}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ef9_0)(uae_u32 opcode) /* CAS.L #.W,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = get_ilong(4); -{ uae_s32 dst = get_long(dsta); -{ int ru = (src >> 6) & 7; - int rc = src & 7; -{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(m68k_dreg(regs, rc))); -{ int flgs = ((uae_s32)(m68k_dreg(regs, rc))) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(m68k_dreg(regs, rc))) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); - if (GET_ZFLG){ put_long(dsta,(m68k_dreg(regs, ru))); -}else{m68k_dreg(regs, rc) = dst; -}}}}}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_efc_0)(uae_u32 opcode) /* CAS2.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 extra = get_ilong(2); - uae_u32 rn1 = regs.regs[(extra >> 28) & 15]; - uae_u32 rn2 = regs.regs[(extra >> 12) & 15]; - uae_u32 dst1 = get_long(rn1), dst2 = get_long(rn2); -{uae_u32 newv = ((uae_s32)(dst1)) - ((uae_s32)(m68k_dreg(regs, (extra >> 16) & 7))); -{ int flgs = ((uae_s32)(m68k_dreg(regs, (extra >> 16) & 7))) < 0; - int flgo = ((uae_s32)(dst1)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(m68k_dreg(regs, (extra >> 16) & 7))) > ((uae_u32)(dst1))); - SET_NFLG (flgn != 0); - if (GET_ZFLG) { -{uae_u32 newv = ((uae_s32)(dst2)) - ((uae_s32)(m68k_dreg(regs, extra & 7))); -{ int flgs = ((uae_s32)(m68k_dreg(regs, extra & 7))) < 0; - int flgo = ((uae_s32)(dst2)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(m68k_dreg(regs, extra & 7))) > ((uae_u32)(dst2))); - SET_NFLG (flgn != 0); - if (GET_ZFLG) { - put_long(rn1, m68k_dreg(regs, (extra >> 22) & 7)); - put_long(rn1, m68k_dreg(regs, (extra >> 6) & 7)); - }} -}}}} if (! GET_ZFLG) { - m68k_dreg(regs, (extra >> 22) & 7) = dst1; - m68k_dreg(regs, (extra >> 6) & 7) = dst2; - } -}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1000_0)(uae_u32 opcode) /* MOVE.B Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1010_0)(uae_u32 opcode) /* MOVE.B (An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1018_0)(uae_u32 opcode) /* MOVE.B (An)+,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1020_0)(uae_u32 opcode) /* MOVE.B -(An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; -{ uae_s8 src = get_byte(srca); - m68k_areg (regs, srcreg) = srca; -{ CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1028_0)(uae_u32 opcode) /* MOVE.B (d16,An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1030_0)(uae_u32 opcode) /* MOVE.B (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s8 src = get_byte(srca); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1038_0)(uae_u32 opcode) /* MOVE.B (xxx).W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1039_0)(uae_u32 opcode) /* MOVE.B (xxx).L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s8 src = get_byte(srca); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_103a_0)(uae_u32 opcode) /* MOVE.B (d16,PC),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_103b_0)(uae_u32 opcode) /* MOVE.B (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s8 src = get_byte(srca); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_103c_0)(uae_u32 opcode) /* MOVE.B #.B,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1080_0)(uae_u32 opcode) /* MOVE.B Dn,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1090_0)(uae_u32 opcode) /* MOVE.B (An),(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1098_0)(uae_u32 opcode) /* MOVE.B (An)+,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_10a0_0)(uae_u32 opcode) /* MOVE.B -(An),(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; -{ uae_s8 src = get_byte(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_10a8_0)(uae_u32 opcode) /* MOVE.B (d16,An),(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_10b0_0)(uae_u32 opcode) /* MOVE.B (d8,An,Xn),(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_10b8_0)(uae_u32 opcode) /* MOVE.B (xxx).W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_10b9_0)(uae_u32 opcode) /* MOVE.B (xxx).L,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_10ba_0)(uae_u32 opcode) /* MOVE.B (d16,PC),(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_10bb_0)(uae_u32 opcode) /* MOVE.B (d8,PC,Xn),(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_10bc_0)(uae_u32 opcode) /* MOVE.B #.B,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_10c0_0)(uae_u32 opcode) /* MOVE.B Dn,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_10d0_0)(uae_u32 opcode) /* MOVE.B (An),(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_10d8_0)(uae_u32 opcode) /* MOVE.B (An)+,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_10e0_0)(uae_u32 opcode) /* MOVE.B -(An),(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; -{ uae_s8 src = get_byte(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_10e8_0)(uae_u32 opcode) /* MOVE.B (d16,An),(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_10f0_0)(uae_u32 opcode) /* MOVE.B (d8,An,Xn),(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_10f8_0)(uae_u32 opcode) /* MOVE.B (xxx).W,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_10f9_0)(uae_u32 opcode) /* MOVE.B (xxx).L,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_10fa_0)(uae_u32 opcode) /* MOVE.B (d16,PC),(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_10fb_0)(uae_u32 opcode) /* MOVE.B (d8,PC,Xn),(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_10fc_0)(uae_u32 opcode) /* MOVE.B #.B,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1100_0)(uae_u32 opcode) /* MOVE.B Dn,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1110_0)(uae_u32 opcode) /* MOVE.B (An),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1118_0)(uae_u32 opcode) /* MOVE.B (An)+,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1120_0)(uae_u32 opcode) /* MOVE.B -(An),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; -{ uae_s8 src = get_byte(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1128_0)(uae_u32 opcode) /* MOVE.B (d16,An),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1130_0)(uae_u32 opcode) /* MOVE.B (d8,An,Xn),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1138_0)(uae_u32 opcode) /* MOVE.B (xxx).W,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1139_0)(uae_u32 opcode) /* MOVE.B (xxx).L,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_113a_0)(uae_u32 opcode) /* MOVE.B (d16,PC),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_113b_0)(uae_u32 opcode) /* MOVE.B (d8,PC,Xn),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_113c_0)(uae_u32 opcode) /* MOVE.B #.B,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1140_0)(uae_u32 opcode) /* MOVE.B Dn,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1150_0)(uae_u32 opcode) /* MOVE.B (An),(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1158_0)(uae_u32 opcode) /* MOVE.B (An)+,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1160_0)(uae_u32 opcode) /* MOVE.B -(An),(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; -{ uae_s8 src = get_byte(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1168_0)(uae_u32 opcode) /* MOVE.B (d16,An),(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1170_0)(uae_u32 opcode) /* MOVE.B (d8,An,Xn),(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(0); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1178_0)(uae_u32 opcode) /* MOVE.B (xxx).W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1179_0)(uae_u32 opcode) /* MOVE.B (xxx).L,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(6); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_117a_0)(uae_u32 opcode) /* MOVE.B (d16,PC),(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_117b_0)(uae_u32 opcode) /* MOVE.B (d8,PC,Xn),(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(0); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_117c_0)(uae_u32 opcode) /* MOVE.B #.B,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1180_0)(uae_u32 opcode) /* MOVE.B Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1190_0)(uae_u32 opcode) /* MOVE.B (An),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1198_0)(uae_u32 opcode) /* MOVE.B (An)+,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_11a0_0)(uae_u32 opcode) /* MOVE.B -(An),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; -{ uae_s8 src = get_byte(srca); - m68k_areg (regs, srcreg) = srca; -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_11a8_0)(uae_u32 opcode) /* MOVE.B (d16,An),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_11b0_0)(uae_u32 opcode) /* MOVE.B (d8,An,Xn),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s8 src = get_byte(srca); -{{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_11b8_0)(uae_u32 opcode) /* MOVE.B (xxx).W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_11b9_0)(uae_u32 opcode) /* MOVE.B (xxx).L,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s8 src = get_byte(srca); -{m68k_incpc(6); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_11ba_0)(uae_u32 opcode) /* MOVE.B (d16,PC),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_11bb_0)(uae_u32 opcode) /* MOVE.B (d8,PC,Xn),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s8 src = get_byte(srca); -{{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_11bc_0)(uae_u32 opcode) /* MOVE.B #.B,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_11c0_0)(uae_u32 opcode) /* MOVE.B Dn,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_11d0_0)(uae_u32 opcode) /* MOVE.B (An),(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_11d8_0)(uae_u32 opcode) /* MOVE.B (An)+,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_11e0_0)(uae_u32 opcode) /* MOVE.B -(An),(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; -{ uae_s8 src = get_byte(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_11e8_0)(uae_u32 opcode) /* MOVE.B (d16,An),(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_11f0_0)(uae_u32 opcode) /* MOVE.B (d8,An,Xn),(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(0); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_11f8_0)(uae_u32 opcode) /* MOVE.B (xxx).W,(xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_11f9_0)(uae_u32 opcode) /* MOVE.B (xxx).L,(xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(6); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_11fa_0)(uae_u32 opcode) /* MOVE.B (d16,PC),(xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_11fb_0)(uae_u32 opcode) /* MOVE.B (d8,PC,Xn),(xxx).W */ -{ - cpuop_begin(); -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(0); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_11fc_0)(uae_u32 opcode) /* MOVE.B #.B,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_13c0_0)(uae_u32 opcode) /* MOVE.B Dn,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_ilong(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_13d0_0)(uae_u32 opcode) /* MOVE.B (An),(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = get_ilong(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_13d8_0)(uae_u32 opcode) /* MOVE.B (An)+,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ uaecptr dsta = get_ilong(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_13e0_0)(uae_u32 opcode) /* MOVE.B -(An),(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; -{ uae_s8 src = get_byte(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = get_ilong(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_13e8_0)(uae_u32 opcode) /* MOVE.B (d16,An),(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = get_ilong(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_13f0_0)(uae_u32 opcode) /* MOVE.B (d8,An,Xn),(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = get_ilong(0); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_13f8_0)(uae_u32 opcode) /* MOVE.B (xxx).W,(xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = get_ilong(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_13f9_0)(uae_u32 opcode) /* MOVE.B (xxx).L,(xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = get_ilong(6); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(10); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_13fa_0)(uae_u32 opcode) /* MOVE.B (d16,PC),(xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = get_ilong(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_13fb_0)(uae_u32 opcode) /* MOVE.B (d8,PC,Xn),(xxx).L */ -{ - cpuop_begin(); -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = get_ilong(0); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_13fc_0)(uae_u32 opcode) /* MOVE.B #.B,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = get_ilong(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2000_0)(uae_u32 opcode) /* MOVE.L Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2008_0)(uae_u32 opcode) /* MOVE.L An,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_areg(regs, srcreg); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2010_0)(uae_u32 opcode) /* MOVE.L (An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2018_0)(uae_u32 opcode) /* MOVE.L (An)+,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); - m68k_areg(regs, srcreg) += 4; -{ CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2020_0)(uae_u32 opcode) /* MOVE.L -(An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 4; -{ uae_s32 src = get_long(srca); - m68k_areg (regs, srcreg) = srca; -{ CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2028_0)(uae_u32 opcode) /* MOVE.L (d16,An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2030_0)(uae_u32 opcode) /* MOVE.L (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s32 src = get_long(srca); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2038_0)(uae_u32 opcode) /* MOVE.L (xxx).W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2039_0)(uae_u32 opcode) /* MOVE.L (xxx).L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s32 src = get_long(srca); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_203a_0)(uae_u32 opcode) /* MOVE.L (d16,PC),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_203b_0)(uae_u32 opcode) /* MOVE.L (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s32 src = get_long(srca); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_203c_0)(uae_u32 opcode) /* MOVE.L #.L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}m68k_incpc(6); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_2040_0)(uae_u32 opcode) /* MOVEA.L Dn,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uae_u32 val = src; - m68k_areg(regs, dstreg) = (val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_2048_0)(uae_u32 opcode) /* MOVEA.L An,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_areg(regs, srcreg); -{ uae_u32 val = src; - m68k_areg(regs, dstreg) = (val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_2050_0)(uae_u32 opcode) /* MOVEA.L (An),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); -{ uae_u32 val = src; - m68k_areg(regs, dstreg) = (val); -}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_2058_0)(uae_u32 opcode) /* MOVEA.L (An)+,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); - m68k_areg(regs, srcreg) += 4; -{ uae_u32 val = src; - m68k_areg(regs, dstreg) = (val); -}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_2060_0)(uae_u32 opcode) /* MOVEA.L -(An),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 4; -{ uae_s32 src = get_long(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_u32 val = src; - m68k_areg(regs, dstreg) = (val); -}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_2068_0)(uae_u32 opcode) /* MOVEA.L (d16,An),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_u32 val = src; - m68k_areg(regs, dstreg) = (val); -}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_2070_0)(uae_u32 opcode) /* MOVEA.L (d8,An,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s32 src = get_long(srca); -{ uae_u32 val = src; - m68k_areg(regs, dstreg) = (val); -}}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_2078_0)(uae_u32 opcode) /* MOVEA.L (xxx).W,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_u32 val = src; - m68k_areg(regs, dstreg) = (val); -}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_2079_0)(uae_u32 opcode) /* MOVEA.L (xxx).L,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s32 src = get_long(srca); -{ uae_u32 val = src; - m68k_areg(regs, dstreg) = (val); -}}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_207a_0)(uae_u32 opcode) /* MOVEA.L (d16,PC),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_u32 val = src; - m68k_areg(regs, dstreg) = (val); -}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_207b_0)(uae_u32 opcode) /* MOVEA.L (d8,PC,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s32 src = get_long(srca); -{ uae_u32 val = src; - m68k_areg(regs, dstreg) = (val); -}}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_207c_0)(uae_u32 opcode) /* MOVEA.L #.L,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uae_u32 val = src; - m68k_areg(regs, dstreg) = (val); -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_2080_0)(uae_u32 opcode) /* MOVE.L Dn,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2088_0)(uae_u32 opcode) /* MOVE.L An,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_areg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2090_0)(uae_u32 opcode) /* MOVE.L (An),(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2098_0)(uae_u32 opcode) /* MOVE.L (An)+,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); - m68k_areg(regs, srcreg) += 4; -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_20a0_0)(uae_u32 opcode) /* MOVE.L -(An),(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 4; -{ uae_s32 src = get_long(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_20a8_0)(uae_u32 opcode) /* MOVE.L (d16,An),(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_20b0_0)(uae_u32 opcode) /* MOVE.L (d8,An,Xn),(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_20b8_0)(uae_u32 opcode) /* MOVE.L (xxx).W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_20b9_0)(uae_u32 opcode) /* MOVE.L (xxx).L,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_20ba_0)(uae_u32 opcode) /* MOVE.L (d16,PC),(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_20bb_0)(uae_u32 opcode) /* MOVE.L (d8,PC,Xn),(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_20bc_0)(uae_u32 opcode) /* MOVE.L #.L,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_20c0_0)(uae_u32 opcode) /* MOVE.L Dn,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += 4; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_20c8_0)(uae_u32 opcode) /* MOVE.L An,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_areg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += 4; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_20d0_0)(uae_u32 opcode) /* MOVE.L (An),(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += 4; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_20d8_0)(uae_u32 opcode) /* MOVE.L (An)+,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); - m68k_areg(regs, srcreg) += 4; -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += 4; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_20e0_0)(uae_u32 opcode) /* MOVE.L -(An),(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 4; -{ uae_s32 src = get_long(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += 4; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_20e8_0)(uae_u32 opcode) /* MOVE.L (d16,An),(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += 4; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_20f0_0)(uae_u32 opcode) /* MOVE.L (d8,An,Xn),(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += 4; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_20f8_0)(uae_u32 opcode) /* MOVE.L (xxx).W,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += 4; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_20f9_0)(uae_u32 opcode) /* MOVE.L (xxx).L,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += 4; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_20fa_0)(uae_u32 opcode) /* MOVE.L (d16,PC),(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += 4; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_20fb_0)(uae_u32 opcode) /* MOVE.L (d8,PC,Xn),(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += 4; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_20fc_0)(uae_u32 opcode) /* MOVE.L #.L,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += 4; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2100_0)(uae_u32 opcode) /* MOVE.L Dn,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2108_0)(uae_u32 opcode) /* MOVE.L An,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_areg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2110_0)(uae_u32 opcode) /* MOVE.L (An),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2118_0)(uae_u32 opcode) /* MOVE.L (An)+,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); - m68k_areg(regs, srcreg) += 4; -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2120_0)(uae_u32 opcode) /* MOVE.L -(An),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 4; -{ uae_s32 src = get_long(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2128_0)(uae_u32 opcode) /* MOVE.L (d16,An),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2130_0)(uae_u32 opcode) /* MOVE.L (d8,An,Xn),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2138_0)(uae_u32 opcode) /* MOVE.L (xxx).W,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2139_0)(uae_u32 opcode) /* MOVE.L (xxx).L,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_213a_0)(uae_u32 opcode) /* MOVE.L (d16,PC),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_213b_0)(uae_u32 opcode) /* MOVE.L (d8,PC,Xn),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_213c_0)(uae_u32 opcode) /* MOVE.L #.L,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2140_0)(uae_u32 opcode) /* MOVE.L Dn,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2148_0)(uae_u32 opcode) /* MOVE.L An,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_areg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2150_0)(uae_u32 opcode) /* MOVE.L (An),(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -#endif - -#ifdef PART_3 -void REGPARAM2 CPUFUNC(op_2158_0)(uae_u32 opcode) /* MOVE.L (An)+,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); - m68k_areg(regs, srcreg) += 4; -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2160_0)(uae_u32 opcode) /* MOVE.L -(An),(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 4; -{ uae_s32 src = get_long(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2168_0)(uae_u32 opcode) /* MOVE.L (d16,An),(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2170_0)(uae_u32 opcode) /* MOVE.L (d8,An,Xn),(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(0); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2178_0)(uae_u32 opcode) /* MOVE.L (xxx).W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2179_0)(uae_u32 opcode) /* MOVE.L (xxx).L,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(6); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_217a_0)(uae_u32 opcode) /* MOVE.L (d16,PC),(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_217b_0)(uae_u32 opcode) /* MOVE.L (d8,PC,Xn),(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(0); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_217c_0)(uae_u32 opcode) /* MOVE.L #.L,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(6); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2180_0)(uae_u32 opcode) /* MOVE.L Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2188_0)(uae_u32 opcode) /* MOVE.L An,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_areg(regs, srcreg); -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2190_0)(uae_u32 opcode) /* MOVE.L (An),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2198_0)(uae_u32 opcode) /* MOVE.L (An)+,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); - m68k_areg(regs, srcreg) += 4; -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_21a0_0)(uae_u32 opcode) /* MOVE.L -(An),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 4; -{ uae_s32 src = get_long(srca); - m68k_areg (regs, srcreg) = srca; -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_21a8_0)(uae_u32 opcode) /* MOVE.L (d16,An),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_21b0_0)(uae_u32 opcode) /* MOVE.L (d8,An,Xn),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s32 src = get_long(srca); -{{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_21b8_0)(uae_u32 opcode) /* MOVE.L (xxx).W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_21b9_0)(uae_u32 opcode) /* MOVE.L (xxx).L,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s32 src = get_long(srca); -{m68k_incpc(6); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_21ba_0)(uae_u32 opcode) /* MOVE.L (d16,PC),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_21bb_0)(uae_u32 opcode) /* MOVE.L (d8,PC,Xn),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s32 src = get_long(srca); -{{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_21bc_0)(uae_u32 opcode) /* MOVE.L #.L,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{m68k_incpc(6); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_21c0_0)(uae_u32 opcode) /* MOVE.L Dn,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_21c8_0)(uae_u32 opcode) /* MOVE.L An,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s32 src = m68k_areg(regs, srcreg); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_21d0_0)(uae_u32 opcode) /* MOVE.L (An),(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_21d8_0)(uae_u32 opcode) /* MOVE.L (An)+,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); - m68k_areg(regs, srcreg) += 4; -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_21e0_0)(uae_u32 opcode) /* MOVE.L -(An),(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 4; -{ uae_s32 src = get_long(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_21e8_0)(uae_u32 opcode) /* MOVE.L (d16,An),(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_21f0_0)(uae_u32 opcode) /* MOVE.L (d8,An,Xn),(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(0); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_21f8_0)(uae_u32 opcode) /* MOVE.L (xxx).W,(xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_21f9_0)(uae_u32 opcode) /* MOVE.L (xxx).L,(xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(6); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_21fa_0)(uae_u32 opcode) /* MOVE.L (d16,PC),(xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_21fb_0)(uae_u32 opcode) /* MOVE.L (d8,PC,Xn),(xxx).W */ -{ - cpuop_begin(); -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(0); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_21fc_0)(uae_u32 opcode) /* MOVE.L #.L,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(6); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_23c0_0)(uae_u32 opcode) /* MOVE.L Dn,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_ilong(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_23c8_0)(uae_u32 opcode) /* MOVE.L An,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s32 src = m68k_areg(regs, srcreg); -{ uaecptr dsta = get_ilong(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_23d0_0)(uae_u32 opcode) /* MOVE.L (An),(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = get_ilong(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_23d8_0)(uae_u32 opcode) /* MOVE.L (An)+,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); - m68k_areg(regs, srcreg) += 4; -{ uaecptr dsta = get_ilong(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_23e0_0)(uae_u32 opcode) /* MOVE.L -(An),(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 4; -{ uae_s32 src = get_long(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = get_ilong(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_23e8_0)(uae_u32 opcode) /* MOVE.L (d16,An),(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = get_ilong(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_23f0_0)(uae_u32 opcode) /* MOVE.L (d8,An,Xn),(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = get_ilong(0); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_23f8_0)(uae_u32 opcode) /* MOVE.L (xxx).W,(xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = get_ilong(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_23f9_0)(uae_u32 opcode) /* MOVE.L (xxx).L,(xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = get_ilong(6); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(10); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_23fa_0)(uae_u32 opcode) /* MOVE.L (d16,PC),(xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = get_ilong(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_23fb_0)(uae_u32 opcode) /* MOVE.L (d8,PC,Xn),(xxx).L */ -{ - cpuop_begin(); -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = get_ilong(0); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_23fc_0)(uae_u32 opcode) /* MOVE.L #.L,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = get_ilong(6); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}m68k_incpc(10); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3000_0)(uae_u32 opcode) /* MOVE.W Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3008_0)(uae_u32 opcode) /* MOVE.W An,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_areg(regs, srcreg); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3010_0)(uae_u32 opcode) /* MOVE.W (An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3018_0)(uae_u32 opcode) /* MOVE.W (An)+,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, srcreg) += 2; -{ CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3020_0)(uae_u32 opcode) /* MOVE.W -(An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; -{ CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3028_0)(uae_u32 opcode) /* MOVE.W (d16,An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3030_0)(uae_u32 opcode) /* MOVE.W (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 src = get_word(srca); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3038_0)(uae_u32 opcode) /* MOVE.W (xxx).W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3039_0)(uae_u32 opcode) /* MOVE.W (xxx).L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s16 src = get_word(srca); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_303a_0)(uae_u32 opcode) /* MOVE.W (d16,PC),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_303b_0)(uae_u32 opcode) /* MOVE.W (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s16 src = get_word(srca); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_303c_0)(uae_u32 opcode) /* MOVE.W #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}m68k_incpc(4); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_3040_0)(uae_u32 opcode) /* MOVEA.W Dn,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_u32 val = (uae_s32)(uae_s16)src; - m68k_areg(regs, dstreg) = (val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_3048_0)(uae_u32 opcode) /* MOVEA.W An,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_areg(regs, srcreg); -{ uae_u32 val = (uae_s32)(uae_s16)src; - m68k_areg(regs, dstreg) = (val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_3050_0)(uae_u32 opcode) /* MOVEA.W (An),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); -{ uae_u32 val = (uae_s32)(uae_s16)src; - m68k_areg(regs, dstreg) = (val); -}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_3058_0)(uae_u32 opcode) /* MOVEA.W (An)+,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, srcreg) += 2; -{ uae_u32 val = (uae_s32)(uae_s16)src; - m68k_areg(regs, dstreg) = (val); -}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_3060_0)(uae_u32 opcode) /* MOVEA.W -(An),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_u32 val = (uae_s32)(uae_s16)src; - m68k_areg(regs, dstreg) = (val); -}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_3068_0)(uae_u32 opcode) /* MOVEA.W (d16,An),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_u32 val = (uae_s32)(uae_s16)src; - m68k_areg(regs, dstreg) = (val); -}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_3070_0)(uae_u32 opcode) /* MOVEA.W (d8,An,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 src = get_word(srca); -{ uae_u32 val = (uae_s32)(uae_s16)src; - m68k_areg(regs, dstreg) = (val); -}}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_3078_0)(uae_u32 opcode) /* MOVEA.W (xxx).W,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_u32 val = (uae_s32)(uae_s16)src; - m68k_areg(regs, dstreg) = (val); -}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_3079_0)(uae_u32 opcode) /* MOVEA.W (xxx).L,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s16 src = get_word(srca); -{ uae_u32 val = (uae_s32)(uae_s16)src; - m68k_areg(regs, dstreg) = (val); -}}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_307a_0)(uae_u32 opcode) /* MOVEA.W (d16,PC),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_u32 val = (uae_s32)(uae_s16)src; - m68k_areg(regs, dstreg) = (val); -}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_307b_0)(uae_u32 opcode) /* MOVEA.W (d8,PC,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s16 src = get_word(srca); -{ uae_u32 val = (uae_s32)(uae_s16)src; - m68k_areg(regs, dstreg) = (val); -}}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_307c_0)(uae_u32 opcode) /* MOVEA.W #.W,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uae_u32 val = (uae_s32)(uae_s16)src; - m68k_areg(regs, dstreg) = (val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_3080_0)(uae_u32 opcode) /* MOVE.W Dn,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3088_0)(uae_u32 opcode) /* MOVE.W An,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_areg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3090_0)(uae_u32 opcode) /* MOVE.W (An),(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3098_0)(uae_u32 opcode) /* MOVE.W (An)+,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, srcreg) += 2; -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_30a0_0)(uae_u32 opcode) /* MOVE.W -(An),(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_30a8_0)(uae_u32 opcode) /* MOVE.W (d16,An),(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_30b0_0)(uae_u32 opcode) /* MOVE.W (d8,An,Xn),(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_30b8_0)(uae_u32 opcode) /* MOVE.W (xxx).W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_30b9_0)(uae_u32 opcode) /* MOVE.W (xxx).L,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_30ba_0)(uae_u32 opcode) /* MOVE.W (d16,PC),(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_30bb_0)(uae_u32 opcode) /* MOVE.W (d8,PC,Xn),(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_30bc_0)(uae_u32 opcode) /* MOVE.W #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_30c0_0)(uae_u32 opcode) /* MOVE.W Dn,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += 2; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_30c8_0)(uae_u32 opcode) /* MOVE.W An,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_areg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += 2; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_30d0_0)(uae_u32 opcode) /* MOVE.W (An),(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += 2; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_30d8_0)(uae_u32 opcode) /* MOVE.W (An)+,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, srcreg) += 2; -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += 2; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_30e0_0)(uae_u32 opcode) /* MOVE.W -(An),(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += 2; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_30e8_0)(uae_u32 opcode) /* MOVE.W (d16,An),(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += 2; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_30f0_0)(uae_u32 opcode) /* MOVE.W (d8,An,Xn),(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += 2; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_30f8_0)(uae_u32 opcode) /* MOVE.W (xxx).W,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += 2; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_30f9_0)(uae_u32 opcode) /* MOVE.W (xxx).L,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += 2; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_30fa_0)(uae_u32 opcode) /* MOVE.W (d16,PC),(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += 2; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_30fb_0)(uae_u32 opcode) /* MOVE.W (d8,PC,Xn),(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += 2; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_30fc_0)(uae_u32 opcode) /* MOVE.W #.W,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += 2; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3100_0)(uae_u32 opcode) /* MOVE.W Dn,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3108_0)(uae_u32 opcode) /* MOVE.W An,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_areg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3110_0)(uae_u32 opcode) /* MOVE.W (An),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3118_0)(uae_u32 opcode) /* MOVE.W (An)+,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, srcreg) += 2; -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3120_0)(uae_u32 opcode) /* MOVE.W -(An),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3128_0)(uae_u32 opcode) /* MOVE.W (d16,An),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3130_0)(uae_u32 opcode) /* MOVE.W (d8,An,Xn),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3138_0)(uae_u32 opcode) /* MOVE.W (xxx).W,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3139_0)(uae_u32 opcode) /* MOVE.W (xxx).L,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_313a_0)(uae_u32 opcode) /* MOVE.W (d16,PC),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_313b_0)(uae_u32 opcode) /* MOVE.W (d8,PC,Xn),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_313c_0)(uae_u32 opcode) /* MOVE.W #.W,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3140_0)(uae_u32 opcode) /* MOVE.W Dn,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3148_0)(uae_u32 opcode) /* MOVE.W An,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_areg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3150_0)(uae_u32 opcode) /* MOVE.W (An),(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3158_0)(uae_u32 opcode) /* MOVE.W (An)+,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, srcreg) += 2; -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3160_0)(uae_u32 opcode) /* MOVE.W -(An),(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3168_0)(uae_u32 opcode) /* MOVE.W (d16,An),(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3170_0)(uae_u32 opcode) /* MOVE.W (d8,An,Xn),(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(0); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3178_0)(uae_u32 opcode) /* MOVE.W (xxx).W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3179_0)(uae_u32 opcode) /* MOVE.W (xxx).L,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(6); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_317a_0)(uae_u32 opcode) /* MOVE.W (d16,PC),(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_317b_0)(uae_u32 opcode) /* MOVE.W (d8,PC,Xn),(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(0); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_317c_0)(uae_u32 opcode) /* MOVE.W #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3180_0)(uae_u32 opcode) /* MOVE.W Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3188_0)(uae_u32 opcode) /* MOVE.W An,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_areg(regs, srcreg); -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3190_0)(uae_u32 opcode) /* MOVE.W (An),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3198_0)(uae_u32 opcode) /* MOVE.W (An)+,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, srcreg) += 2; -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_31a0_0)(uae_u32 opcode) /* MOVE.W -(An),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_31a8_0)(uae_u32 opcode) /* MOVE.W (d16,An),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_31b0_0)(uae_u32 opcode) /* MOVE.W (d8,An,Xn),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 src = get_word(srca); -{{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_31b8_0)(uae_u32 opcode) /* MOVE.W (xxx).W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_31b9_0)(uae_u32 opcode) /* MOVE.W (xxx).L,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s16 src = get_word(srca); -{m68k_incpc(6); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_31ba_0)(uae_u32 opcode) /* MOVE.W (d16,PC),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_31bb_0)(uae_u32 opcode) /* MOVE.W (d8,PC,Xn),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s16 src = get_word(srca); -{{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_31bc_0)(uae_u32 opcode) /* MOVE.W #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = get_iword(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_31c0_0)(uae_u32 opcode) /* MOVE.W Dn,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_31c8_0)(uae_u32 opcode) /* MOVE.W An,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s16 src = m68k_areg(regs, srcreg); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_31d0_0)(uae_u32 opcode) /* MOVE.W (An),(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_31d8_0)(uae_u32 opcode) /* MOVE.W (An)+,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, srcreg) += 2; -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_31e0_0)(uae_u32 opcode) /* MOVE.W -(An),(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_31e8_0)(uae_u32 opcode) /* MOVE.W (d16,An),(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_31f0_0)(uae_u32 opcode) /* MOVE.W (d8,An,Xn),(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(0); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_31f8_0)(uae_u32 opcode) /* MOVE.W (xxx).W,(xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_31f9_0)(uae_u32 opcode) /* MOVE.W (xxx).L,(xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(6); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_31fa_0)(uae_u32 opcode) /* MOVE.W (d16,PC),(xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_31fb_0)(uae_u32 opcode) /* MOVE.W (d8,PC,Xn),(xxx).W */ -{ - cpuop_begin(); -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(0); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_31fc_0)(uae_u32 opcode) /* MOVE.W #.W,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_33c0_0)(uae_u32 opcode) /* MOVE.W Dn,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_ilong(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_33c8_0)(uae_u32 opcode) /* MOVE.W An,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s16 src = m68k_areg(regs, srcreg); -{ uaecptr dsta = get_ilong(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_33d0_0)(uae_u32 opcode) /* MOVE.W (An),(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = get_ilong(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_33d8_0)(uae_u32 opcode) /* MOVE.W (An)+,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, srcreg) += 2; -{ uaecptr dsta = get_ilong(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_33e0_0)(uae_u32 opcode) /* MOVE.W -(An),(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = get_ilong(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_33e8_0)(uae_u32 opcode) /* MOVE.W (d16,An),(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = get_ilong(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_33f0_0)(uae_u32 opcode) /* MOVE.W (d8,An,Xn),(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = get_ilong(0); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_33f8_0)(uae_u32 opcode) /* MOVE.W (xxx).W,(xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = get_ilong(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_33f9_0)(uae_u32 opcode) /* MOVE.W (xxx).L,(xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = get_ilong(6); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(10); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_33fa_0)(uae_u32 opcode) /* MOVE.W (d16,PC),(xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = get_ilong(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_33fb_0)(uae_u32 opcode) /* MOVE.W (d8,PC,Xn),(xxx).L */ -{ - cpuop_begin(); -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = get_ilong(0); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_33fc_0)(uae_u32 opcode) /* MOVE.W #.W,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = get_ilong(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4000_0)(uae_u32 opcode) /* NEGX.B Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uae_u32 newv = 0 - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(0)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - SET_NFLG (((uae_s8)(newv)) < 0); - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xff) | ((newv) & 0xff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4010_0)(uae_u32 opcode) /* NEGX.B (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); -{ uae_u32 newv = 0 - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(0)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - SET_NFLG (((uae_s8)(newv)) < 0); - put_byte(srca,newv); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4018_0)(uae_u32 opcode) /* NEGX.B (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ uae_u32 newv = 0 - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(0)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - SET_NFLG (((uae_s8)(newv)) < 0); - put_byte(srca,newv); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4020_0)(uae_u32 opcode) /* NEGX.B -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; -{ uae_s8 src = get_byte(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_u32 newv = 0 - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(0)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - SET_NFLG (((uae_s8)(newv)) < 0); - put_byte(srca,newv); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4028_0)(uae_u32 opcode) /* NEGX.B (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uae_u32 newv = 0 - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(0)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - SET_NFLG (((uae_s8)(newv)) < 0); - put_byte(srca,newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4030_0)(uae_u32 opcode) /* NEGX.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s8 src = get_byte(srca); -{ uae_u32 newv = 0 - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(0)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - SET_NFLG (((uae_s8)(newv)) < 0); - put_byte(srca,newv); -}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4038_0)(uae_u32 opcode) /* NEGX.B (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uae_u32 newv = 0 - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(0)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - SET_NFLG (((uae_s8)(newv)) < 0); - put_byte(srca,newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4039_0)(uae_u32 opcode) /* NEGX.B (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ uae_s8 src = get_byte(srca); -{ uae_u32 newv = 0 - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(0)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - SET_NFLG (((uae_s8)(newv)) < 0); - put_byte(srca,newv); -}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4040_0)(uae_u32 opcode) /* NEGX.W Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_u32 newv = 0 - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(0)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s16)(newv)) == 0)); - SET_NFLG (((uae_s16)(newv)) < 0); - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xffff) | ((newv) & 0xffff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4050_0)(uae_u32 opcode) /* NEGX.W (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); -{ uae_u32 newv = 0 - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(0)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s16)(newv)) == 0)); - SET_NFLG (((uae_s16)(newv)) < 0); - put_word(srca,newv); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4058_0)(uae_u32 opcode) /* NEGX.W (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, srcreg) += 2; -{ uae_u32 newv = 0 - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(0)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s16)(newv)) == 0)); - SET_NFLG (((uae_s16)(newv)) < 0); - put_word(srca,newv); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4060_0)(uae_u32 opcode) /* NEGX.W -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_u32 newv = 0 - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(0)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s16)(newv)) == 0)); - SET_NFLG (((uae_s16)(newv)) < 0); - put_word(srca,newv); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4068_0)(uae_u32 opcode) /* NEGX.W (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_u32 newv = 0 - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(0)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s16)(newv)) == 0)); - SET_NFLG (((uae_s16)(newv)) < 0); - put_word(srca,newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4070_0)(uae_u32 opcode) /* NEGX.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 src = get_word(srca); -{ uae_u32 newv = 0 - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(0)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s16)(newv)) == 0)); - SET_NFLG (((uae_s16)(newv)) < 0); - put_word(srca,newv); -}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4078_0)(uae_u32 opcode) /* NEGX.W (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_u32 newv = 0 - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(0)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s16)(newv)) == 0)); - SET_NFLG (((uae_s16)(newv)) < 0); - put_word(srca,newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4079_0)(uae_u32 opcode) /* NEGX.W (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ uae_s16 src = get_word(srca); -{ uae_u32 newv = 0 - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(0)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s16)(newv)) == 0)); - SET_NFLG (((uae_s16)(newv)) < 0); - put_word(srca,newv); -}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4080_0)(uae_u32 opcode) /* NEGX.L Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uae_u32 newv = 0 - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(0)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s32)(newv)) == 0)); - SET_NFLG (((uae_s32)(newv)) < 0); - m68k_dreg(regs, srcreg) = (newv); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4090_0)(uae_u32 opcode) /* NEGX.L (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); -{ uae_u32 newv = 0 - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(0)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s32)(newv)) == 0)); - SET_NFLG (((uae_s32)(newv)) < 0); - put_long(srca,newv); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4098_0)(uae_u32 opcode) /* NEGX.L (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); - m68k_areg(regs, srcreg) += 4; -{ uae_u32 newv = 0 - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(0)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s32)(newv)) == 0)); - SET_NFLG (((uae_s32)(newv)) < 0); - put_long(srca,newv); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_40a0_0)(uae_u32 opcode) /* NEGX.L -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 4; -{ uae_s32 src = get_long(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_u32 newv = 0 - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(0)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s32)(newv)) == 0)); - SET_NFLG (((uae_s32)(newv)) < 0); - put_long(srca,newv); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_40a8_0)(uae_u32 opcode) /* NEGX.L (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_u32 newv = 0 - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(0)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s32)(newv)) == 0)); - SET_NFLG (((uae_s32)(newv)) < 0); - put_long(srca,newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_40b0_0)(uae_u32 opcode) /* NEGX.L (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s32 src = get_long(srca); -{ uae_u32 newv = 0 - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(0)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s32)(newv)) == 0)); - SET_NFLG (((uae_s32)(newv)) < 0); - put_long(srca,newv); -}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_40b8_0)(uae_u32 opcode) /* NEGX.L (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_u32 newv = 0 - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(0)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s32)(newv)) == 0)); - SET_NFLG (((uae_s32)(newv)) < 0); - put_long(srca,newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_40b9_0)(uae_u32 opcode) /* NEGX.L (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ uae_s32 src = get_long(srca); -{ uae_u32 newv = 0 - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(0)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s32)(newv)) == 0)); - SET_NFLG (((uae_s32)(newv)) < 0); - put_long(srca,newv); -}}}}}m68k_incpc(6); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_40c0_0)(uae_u32 opcode) /* MVSR2.W Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel645; } -{{ MakeSR(); - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xffff) | ((regs.sr) & 0xffff); -}}}m68k_incpc(2); -endlabel645: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_40d0_0)(uae_u32 opcode) /* MVSR2.W (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel646; } -{{ uaecptr srca = m68k_areg(regs, srcreg); - MakeSR(); - put_word(srca,regs.sr); -}}}m68k_incpc(2); -endlabel646: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_40d8_0)(uae_u32 opcode) /* MVSR2.W (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel647; } -{{ uaecptr srca = m68k_areg(regs, srcreg); - m68k_areg(regs, srcreg) += 2; - MakeSR(); - put_word(srca,regs.sr); -}}}m68k_incpc(2); -endlabel647: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_40e0_0)(uae_u32 opcode) /* MVSR2.W -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel648; } -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; - m68k_areg (regs, srcreg) = srca; - MakeSR(); - put_word(srca,regs.sr); -}}}m68k_incpc(2); -endlabel648: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_40e8_0)(uae_u32 opcode) /* MVSR2.W (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel649; } -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); - MakeSR(); - put_word(srca,regs.sr); -}}}m68k_incpc(4); -endlabel649: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_40f0_0)(uae_u32 opcode) /* MVSR2.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel650; } -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); - MakeSR(); - put_word(srca,regs.sr); -}}}}endlabel650: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_40f8_0)(uae_u32 opcode) /* MVSR2.W (xxx).W */ -{ - cpuop_begin(); -{if (!regs.s) { Exception(8,0); goto endlabel651; } -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); - MakeSR(); - put_word(srca,regs.sr); -}}}m68k_incpc(4); -endlabel651: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_40f9_0)(uae_u32 opcode) /* MVSR2.W (xxx).L */ -{ - cpuop_begin(); -{if (!regs.s) { Exception(8,0); goto endlabel652; } -{{ uaecptr srca = get_ilong(2); - MakeSR(); - put_word(srca,regs.sr); -}}}m68k_incpc(6); -endlabel652: ; - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_4100_0)(uae_u32 opcode) /* CHK.L Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - if ((uae_s32)dst < 0) { SET_NFLG (1); Exception(6,oldpc); goto endlabel653; } - else if (dst > src) { SET_NFLG (0); Exception(6,oldpc); goto endlabel653; } -}}}m68k_incpc(2); -endlabel653: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4110_0)(uae_u32 opcode) /* CHK.L (An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - if ((uae_s32)dst < 0) { SET_NFLG (1); Exception(6,oldpc); goto endlabel654; } - else if (dst > src) { SET_NFLG (0); Exception(6,oldpc); goto endlabel654; } -}}}}m68k_incpc(2); -endlabel654: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4118_0)(uae_u32 opcode) /* CHK.L (An)+,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); - m68k_areg(regs, srcreg) += 4; -{ uae_s32 dst = m68k_dreg(regs, dstreg); - if ((uae_s32)dst < 0) { SET_NFLG (1); Exception(6,oldpc); goto endlabel655; } - else if (dst > src) { SET_NFLG (0); Exception(6,oldpc); goto endlabel655; } -}}}}m68k_incpc(2); -endlabel655: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4120_0)(uae_u32 opcode) /* CHK.L -(An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = m68k_areg(regs, srcreg) - 4; -{ uae_s32 src = get_long(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_s32 dst = m68k_dreg(regs, dstreg); - if ((uae_s32)dst < 0) { SET_NFLG (1); Exception(6,oldpc); goto endlabel656; } - else if (dst > src) { SET_NFLG (0); Exception(6,oldpc); goto endlabel656; } -}}}}m68k_incpc(2); -endlabel656: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4128_0)(uae_u32 opcode) /* CHK.L (d16,An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - if ((uae_s32)dst < 0) { SET_NFLG (1); Exception(6,oldpc); goto endlabel657; } - else if (dst > src) { SET_NFLG (0); Exception(6,oldpc); goto endlabel657; } -}}}}m68k_incpc(4); -endlabel657: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4130_0)(uae_u32 opcode) /* CHK.L (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - if ((uae_s32)dst < 0) { SET_NFLG (1); Exception(6,oldpc); goto endlabel658; } - else if (dst > src) { SET_NFLG (0); Exception(6,oldpc); goto endlabel658; } -}}}}}endlabel658: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4138_0)(uae_u32 opcode) /* CHK.L (xxx).W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - if ((uae_s32)dst < 0) { SET_NFLG (1); Exception(6,oldpc); goto endlabel659; } - else if (dst > src) { SET_NFLG (0); Exception(6,oldpc); goto endlabel659; } -}}}}m68k_incpc(4); -endlabel659: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4139_0)(uae_u32 opcode) /* CHK.L (xxx).L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = get_ilong(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - if ((uae_s32)dst < 0) { SET_NFLG (1); Exception(6,oldpc); goto endlabel660; } - else if (dst > src) { SET_NFLG (0); Exception(6,oldpc); goto endlabel660; } -}}}}m68k_incpc(6); -endlabel660: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_413a_0)(uae_u32 opcode) /* CHK.L (d16,PC),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - if ((uae_s32)dst < 0) { SET_NFLG (1); Exception(6,oldpc); goto endlabel661; } - else if (dst > src) { SET_NFLG (0); Exception(6,oldpc); goto endlabel661; } -}}}}m68k_incpc(4); -endlabel661: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_413b_0)(uae_u32 opcode) /* CHK.L (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - if ((uae_s32)dst < 0) { SET_NFLG (1); Exception(6,oldpc); goto endlabel662; } - else if (dst > src) { SET_NFLG (0); Exception(6,oldpc); goto endlabel662; } -}}}}}endlabel662: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_413c_0)(uae_u32 opcode) /* CHK.L #.L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uae_s32 src = get_ilong(2); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - if ((uae_s32)dst < 0) { SET_NFLG (1); Exception(6,oldpc); goto endlabel663; } - else if (dst > src) { SET_NFLG (0); Exception(6,oldpc); goto endlabel663; } -}}}m68k_incpc(6); -endlabel663: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4180_0)(uae_u32 opcode) /* CHK.W Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - if ((uae_s32)dst < 0) { SET_NFLG (1); Exception(6,oldpc); goto endlabel664; } - else if (dst > src) { SET_NFLG (0); Exception(6,oldpc); goto endlabel664; } -}}}m68k_incpc(2); -endlabel664: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4190_0)(uae_u32 opcode) /* CHK.W (An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - if ((uae_s32)dst < 0) { SET_NFLG (1); Exception(6,oldpc); goto endlabel665; } - else if (dst > src) { SET_NFLG (0); Exception(6,oldpc); goto endlabel665; } -}}}}m68k_incpc(2); -endlabel665: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4198_0)(uae_u32 opcode) /* CHK.W (An)+,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, srcreg) += 2; -{ uae_s16 dst = m68k_dreg(regs, dstreg); - if ((uae_s32)dst < 0) { SET_NFLG (1); Exception(6,oldpc); goto endlabel666; } - else if (dst > src) { SET_NFLG (0); Exception(6,oldpc); goto endlabel666; } -}}}}m68k_incpc(2); -endlabel666: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_41a0_0)(uae_u32 opcode) /* CHK.W -(An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_s16 dst = m68k_dreg(regs, dstreg); - if ((uae_s32)dst < 0) { SET_NFLG (1); Exception(6,oldpc); goto endlabel667; } - else if (dst > src) { SET_NFLG (0); Exception(6,oldpc); goto endlabel667; } -}}}}m68k_incpc(2); -endlabel667: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_41a8_0)(uae_u32 opcode) /* CHK.W (d16,An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - if ((uae_s32)dst < 0) { SET_NFLG (1); Exception(6,oldpc); goto endlabel668; } - else if (dst > src) { SET_NFLG (0); Exception(6,oldpc); goto endlabel668; } -}}}}m68k_incpc(4); -endlabel668: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_41b0_0)(uae_u32 opcode) /* CHK.W (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - if ((uae_s32)dst < 0) { SET_NFLG (1); Exception(6,oldpc); goto endlabel669; } - else if (dst > src) { SET_NFLG (0); Exception(6,oldpc); goto endlabel669; } -}}}}}endlabel669: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_41b8_0)(uae_u32 opcode) /* CHK.W (xxx).W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - if ((uae_s32)dst < 0) { SET_NFLG (1); Exception(6,oldpc); goto endlabel670; } - else if (dst > src) { SET_NFLG (0); Exception(6,oldpc); goto endlabel670; } -}}}}m68k_incpc(4); -endlabel670: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_41b9_0)(uae_u32 opcode) /* CHK.W (xxx).L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = get_ilong(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - if ((uae_s32)dst < 0) { SET_NFLG (1); Exception(6,oldpc); goto endlabel671; } - else if (dst > src) { SET_NFLG (0); Exception(6,oldpc); goto endlabel671; } -}}}}m68k_incpc(6); -endlabel671: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_41ba_0)(uae_u32 opcode) /* CHK.W (d16,PC),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - if ((uae_s32)dst < 0) { SET_NFLG (1); Exception(6,oldpc); goto endlabel672; } - else if (dst > src) { SET_NFLG (0); Exception(6,oldpc); goto endlabel672; } -}}}}m68k_incpc(4); -endlabel672: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_41bb_0)(uae_u32 opcode) /* CHK.W (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - if ((uae_s32)dst < 0) { SET_NFLG (1); Exception(6,oldpc); goto endlabel673; } - else if (dst > src) { SET_NFLG (0); Exception(6,oldpc); goto endlabel673; } -}}}}}endlabel673: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_41bc_0)(uae_u32 opcode) /* CHK.W #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 src = get_iword(2); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - if ((uae_s32)dst < 0) { SET_NFLG (1); Exception(6,oldpc); goto endlabel674; } - else if (dst > src) { SET_NFLG (0); Exception(6,oldpc); goto endlabel674; } -}}}m68k_incpc(4); -endlabel674: ; - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_41d0_0)(uae_u32 opcode) /* LEA.L (An),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ m68k_areg(regs, dstreg) = (srca); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_41e8_0)(uae_u32 opcode) /* LEA.L (d16,An),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ m68k_areg(regs, dstreg) = (srca); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_41f0_0)(uae_u32 opcode) /* LEA.L (d8,An,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ m68k_areg(regs, dstreg) = (srca); -}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_41f8_0)(uae_u32 opcode) /* LEA.L (xxx).W,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ m68k_areg(regs, dstreg) = (srca); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_41f9_0)(uae_u32 opcode) /* LEA.L (xxx).L,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ m68k_areg(regs, dstreg) = (srca); -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_41fa_0)(uae_u32 opcode) /* LEA.L (d16,PC),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ m68k_areg(regs, dstreg) = (srca); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_41fb_0)(uae_u32 opcode) /* LEA.L (d8,PC,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ m68k_areg(regs, dstreg) = (srca); -}}}} cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_4200_0)(uae_u32 opcode) /* CLR.B Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ CLEAR_CZNV; - SET_ZFLG (((uae_s8)(0)) == 0); - SET_NFLG (((uae_s8)(0)) < 0); - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xff) | ((0) & 0xff); -}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4210_0)(uae_u32 opcode) /* CLR.B (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(0)) == 0); - SET_NFLG (((uae_s8)(0)) < 0); - put_byte(srca,0); -}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4218_0)(uae_u32 opcode) /* CLR.B (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(0)) == 0); - SET_NFLG (((uae_s8)(0)) < 0); - put_byte(srca,0); -}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4220_0)(uae_u32 opcode) /* CLR.B -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; - m68k_areg (regs, srcreg) = srca; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(0)) == 0); - SET_NFLG (((uae_s8)(0)) < 0); - put_byte(srca,0); -}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4228_0)(uae_u32 opcode) /* CLR.B (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(0)) == 0); - SET_NFLG (((uae_s8)(0)) < 0); - put_byte(srca,0); -}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4230_0)(uae_u32 opcode) /* CLR.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(0)) == 0); - SET_NFLG (((uae_s8)(0)) < 0); - put_byte(srca,0); -}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4238_0)(uae_u32 opcode) /* CLR.B (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(0)) == 0); - SET_NFLG (((uae_s8)(0)) < 0); - put_byte(srca,0); -}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4239_0)(uae_u32 opcode) /* CLR.B (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(0)) == 0); - SET_NFLG (((uae_s8)(0)) < 0); - put_byte(srca,0); -}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4240_0)(uae_u32 opcode) /* CLR.W Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ CLEAR_CZNV; - SET_ZFLG (((uae_s16)(0)) == 0); - SET_NFLG (((uae_s16)(0)) < 0); - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xffff) | ((0) & 0xffff); -}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4250_0)(uae_u32 opcode) /* CLR.W (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(0)) == 0); - SET_NFLG (((uae_s16)(0)) < 0); - put_word(srca,0); -}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4258_0)(uae_u32 opcode) /* CLR.W (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); - m68k_areg(regs, srcreg) += 2; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(0)) == 0); - SET_NFLG (((uae_s16)(0)) < 0); - put_word(srca,0); -}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4260_0)(uae_u32 opcode) /* CLR.W -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; - m68k_areg (regs, srcreg) = srca; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(0)) == 0); - SET_NFLG (((uae_s16)(0)) < 0); - put_word(srca,0); -}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4268_0)(uae_u32 opcode) /* CLR.W (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(0)) == 0); - SET_NFLG (((uae_s16)(0)) < 0); - put_word(srca,0); -}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4270_0)(uae_u32 opcode) /* CLR.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(0)) == 0); - SET_NFLG (((uae_s16)(0)) < 0); - put_word(srca,0); -}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4278_0)(uae_u32 opcode) /* CLR.W (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(0)) == 0); - SET_NFLG (((uae_s16)(0)) < 0); - put_word(srca,0); -}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4279_0)(uae_u32 opcode) /* CLR.W (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(0)) == 0); - SET_NFLG (((uae_s16)(0)) < 0); - put_word(srca,0); -}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4280_0)(uae_u32 opcode) /* CLR.L Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ CLEAR_CZNV; - SET_ZFLG (((uae_s32)(0)) == 0); - SET_NFLG (((uae_s32)(0)) < 0); - m68k_dreg(regs, srcreg) = (0); -}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4290_0)(uae_u32 opcode) /* CLR.L (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(0)) == 0); - SET_NFLG (((uae_s32)(0)) < 0); - put_long(srca,0); -}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4298_0)(uae_u32 opcode) /* CLR.L (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); - m68k_areg(regs, srcreg) += 4; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(0)) == 0); - SET_NFLG (((uae_s32)(0)) < 0); - put_long(srca,0); -}}m68k_incpc(2); - cpuop_end(); -} -#endif - -#ifdef PART_4 -void REGPARAM2 CPUFUNC(op_42a0_0)(uae_u32 opcode) /* CLR.L -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 4; - m68k_areg (regs, srcreg) = srca; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(0)) == 0); - SET_NFLG (((uae_s32)(0)) < 0); - put_long(srca,0); -}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_42a8_0)(uae_u32 opcode) /* CLR.L (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(0)) == 0); - SET_NFLG (((uae_s32)(0)) < 0); - put_long(srca,0); -}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_42b0_0)(uae_u32 opcode) /* CLR.L (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(0)) == 0); - SET_NFLG (((uae_s32)(0)) < 0); - put_long(srca,0); -}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_42b8_0)(uae_u32 opcode) /* CLR.L (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(0)) == 0); - SET_NFLG (((uae_s32)(0)) < 0); - put_long(srca,0); -}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_42b9_0)(uae_u32 opcode) /* CLR.L (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(0)) == 0); - SET_NFLG (((uae_s32)(0)) < 0); - put_long(srca,0); -}}m68k_incpc(6); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_42c0_0)(uae_u32 opcode) /* MVSR2.B Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ MakeSR(); - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xffff) | ((regs.sr & 0xff) & 0xffff); -}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_42d0_0)(uae_u32 opcode) /* MVSR2.B (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); - MakeSR(); - put_word(srca,regs.sr & 0xff); -}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_42d8_0)(uae_u32 opcode) /* MVSR2.B (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); - m68k_areg(regs, srcreg) += 2; - MakeSR(); - put_word(srca,regs.sr & 0xff); -}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_42e0_0)(uae_u32 opcode) /* MVSR2.B -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; - m68k_areg (regs, srcreg) = srca; - MakeSR(); - put_word(srca,regs.sr & 0xff); -}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_42e8_0)(uae_u32 opcode) /* MVSR2.B (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); - MakeSR(); - put_word(srca,regs.sr & 0xff); -}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_42f0_0)(uae_u32 opcode) /* MVSR2.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); - MakeSR(); - put_word(srca,regs.sr & 0xff); -}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_42f8_0)(uae_u32 opcode) /* MVSR2.B (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); - MakeSR(); - put_word(srca,regs.sr & 0xff); -}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_42f9_0)(uae_u32 opcode) /* MVSR2.B (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); - MakeSR(); - put_word(srca,regs.sr & 0xff); -}}m68k_incpc(6); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_4400_0)(uae_u32 opcode) /* NEG.B Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{{uae_u32 dst = ((uae_s8)(0)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(0)) < 0; - int flgn = ((uae_s8)(dst)) < 0; - SET_ZFLG (((uae_s8)(dst)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(0))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xff) | ((dst) & 0xff); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4410_0)(uae_u32 opcode) /* NEG.B (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); -{{uae_u32 dst = ((uae_s8)(0)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(0)) < 0; - int flgn = ((uae_s8)(dst)) < 0; - SET_ZFLG (((uae_s8)(dst)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(0))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(srca,dst); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4418_0)(uae_u32 opcode) /* NEG.B (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{{uae_u32 dst = ((uae_s8)(0)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(0)) < 0; - int flgn = ((uae_s8)(dst)) < 0; - SET_ZFLG (((uae_s8)(dst)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(0))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(srca,dst); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4420_0)(uae_u32 opcode) /* NEG.B -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; -{ uae_s8 src = get_byte(srca); - m68k_areg (regs, srcreg) = srca; -{{uae_u32 dst = ((uae_s8)(0)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(0)) < 0; - int flgn = ((uae_s8)(dst)) < 0; - SET_ZFLG (((uae_s8)(dst)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(0))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(srca,dst); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4428_0)(uae_u32 opcode) /* NEG.B (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{{uae_u32 dst = ((uae_s8)(0)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(0)) < 0; - int flgn = ((uae_s8)(dst)) < 0; - SET_ZFLG (((uae_s8)(dst)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(0))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(srca,dst); -}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4430_0)(uae_u32 opcode) /* NEG.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s8 src = get_byte(srca); -{{uae_u32 dst = ((uae_s8)(0)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(0)) < 0; - int flgn = ((uae_s8)(dst)) < 0; - SET_ZFLG (((uae_s8)(dst)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(0))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(srca,dst); -}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4438_0)(uae_u32 opcode) /* NEG.B (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{{uae_u32 dst = ((uae_s8)(0)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(0)) < 0; - int flgn = ((uae_s8)(dst)) < 0; - SET_ZFLG (((uae_s8)(dst)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(0))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(srca,dst); -}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4439_0)(uae_u32 opcode) /* NEG.B (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ uae_s8 src = get_byte(srca); -{{uae_u32 dst = ((uae_s8)(0)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(0)) < 0; - int flgn = ((uae_s8)(dst)) < 0; - SET_ZFLG (((uae_s8)(dst)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(0))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(srca,dst); -}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4440_0)(uae_u32 opcode) /* NEG.W Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{{uae_u32 dst = ((uae_s16)(0)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(0)) < 0; - int flgn = ((uae_s16)(dst)) < 0; - SET_ZFLG (((uae_s16)(dst)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(0))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xffff) | ((dst) & 0xffff); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4450_0)(uae_u32 opcode) /* NEG.W (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); -{{uae_u32 dst = ((uae_s16)(0)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(0)) < 0; - int flgn = ((uae_s16)(dst)) < 0; - SET_ZFLG (((uae_s16)(dst)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(0))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(srca,dst); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4458_0)(uae_u32 opcode) /* NEG.W (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, srcreg) += 2; -{{uae_u32 dst = ((uae_s16)(0)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(0)) < 0; - int flgn = ((uae_s16)(dst)) < 0; - SET_ZFLG (((uae_s16)(dst)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(0))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(srca,dst); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4460_0)(uae_u32 opcode) /* NEG.W -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; -{{uae_u32 dst = ((uae_s16)(0)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(0)) < 0; - int flgn = ((uae_s16)(dst)) < 0; - SET_ZFLG (((uae_s16)(dst)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(0))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(srca,dst); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4468_0)(uae_u32 opcode) /* NEG.W (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{{uae_u32 dst = ((uae_s16)(0)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(0)) < 0; - int flgn = ((uae_s16)(dst)) < 0; - SET_ZFLG (((uae_s16)(dst)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(0))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(srca,dst); -}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4470_0)(uae_u32 opcode) /* NEG.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 src = get_word(srca); -{{uae_u32 dst = ((uae_s16)(0)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(0)) < 0; - int flgn = ((uae_s16)(dst)) < 0; - SET_ZFLG (((uae_s16)(dst)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(0))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(srca,dst); -}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4478_0)(uae_u32 opcode) /* NEG.W (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{{uae_u32 dst = ((uae_s16)(0)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(0)) < 0; - int flgn = ((uae_s16)(dst)) < 0; - SET_ZFLG (((uae_s16)(dst)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(0))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(srca,dst); -}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4479_0)(uae_u32 opcode) /* NEG.W (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ uae_s16 src = get_word(srca); -{{uae_u32 dst = ((uae_s16)(0)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(0)) < 0; - int flgn = ((uae_s16)(dst)) < 0; - SET_ZFLG (((uae_s16)(dst)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(0))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(srca,dst); -}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4480_0)(uae_u32 opcode) /* NEG.L Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{{uae_u32 dst = ((uae_s32)(0)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(0)) < 0; - int flgn = ((uae_s32)(dst)) < 0; - SET_ZFLG (((uae_s32)(dst)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(0))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, srcreg) = (dst); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4490_0)(uae_u32 opcode) /* NEG.L (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); -{{uae_u32 dst = ((uae_s32)(0)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(0)) < 0; - int flgn = ((uae_s32)(dst)) < 0; - SET_ZFLG (((uae_s32)(dst)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(0))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(srca,dst); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4498_0)(uae_u32 opcode) /* NEG.L (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); - m68k_areg(regs, srcreg) += 4; -{{uae_u32 dst = ((uae_s32)(0)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(0)) < 0; - int flgn = ((uae_s32)(dst)) < 0; - SET_ZFLG (((uae_s32)(dst)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(0))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(srca,dst); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_44a0_0)(uae_u32 opcode) /* NEG.L -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 4; -{ uae_s32 src = get_long(srca); - m68k_areg (regs, srcreg) = srca; -{{uae_u32 dst = ((uae_s32)(0)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(0)) < 0; - int flgn = ((uae_s32)(dst)) < 0; - SET_ZFLG (((uae_s32)(dst)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(0))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(srca,dst); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_44a8_0)(uae_u32 opcode) /* NEG.L (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{{uae_u32 dst = ((uae_s32)(0)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(0)) < 0; - int flgn = ((uae_s32)(dst)) < 0; - SET_ZFLG (((uae_s32)(dst)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(0))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(srca,dst); -}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_44b0_0)(uae_u32 opcode) /* NEG.L (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s32 src = get_long(srca); -{{uae_u32 dst = ((uae_s32)(0)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(0)) < 0; - int flgn = ((uae_s32)(dst)) < 0; - SET_ZFLG (((uae_s32)(dst)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(0))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(srca,dst); -}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_44b8_0)(uae_u32 opcode) /* NEG.L (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{{uae_u32 dst = ((uae_s32)(0)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(0)) < 0; - int flgn = ((uae_s32)(dst)) < 0; - SET_ZFLG (((uae_s32)(dst)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(0))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(srca,dst); -}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_44b9_0)(uae_u32 opcode) /* NEG.L (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ uae_s32 src = get_long(srca); -{{uae_u32 dst = ((uae_s32)(0)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(0)) < 0; - int flgn = ((uae_s32)(dst)) < 0; - SET_ZFLG (((uae_s32)(dst)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(0))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(srca,dst); -}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_44c0_0)(uae_u32 opcode) /* MV2SR.B Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); - MakeSR(); - regs.sr &= 0xFF00; - regs.sr |= src & 0xFF; - MakeFromSR(); -}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_44d0_0)(uae_u32 opcode) /* MV2SR.B (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - MakeSR(); - regs.sr &= 0xFF00; - regs.sr |= src & 0xFF; - MakeFromSR(); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_44d8_0)(uae_u32 opcode) /* MV2SR.B (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, srcreg) += 2; - MakeSR(); - regs.sr &= 0xFF00; - regs.sr |= src & 0xFF; - MakeFromSR(); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_44e0_0)(uae_u32 opcode) /* MV2SR.B -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; - MakeSR(); - regs.sr &= 0xFF00; - regs.sr |= src & 0xFF; - MakeFromSR(); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_44e8_0)(uae_u32 opcode) /* MV2SR.B (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); - MakeSR(); - regs.sr &= 0xFF00; - regs.sr |= src & 0xFF; - MakeFromSR(); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_44f0_0)(uae_u32 opcode) /* MV2SR.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 src = get_word(srca); - MakeSR(); - regs.sr &= 0xFF00; - regs.sr |= src & 0xFF; - MakeFromSR(); -}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_44f8_0)(uae_u32 opcode) /* MV2SR.B (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); - MakeSR(); - regs.sr &= 0xFF00; - regs.sr |= src & 0xFF; - MakeFromSR(); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_44f9_0)(uae_u32 opcode) /* MV2SR.B (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ uae_s16 src = get_word(srca); - MakeSR(); - regs.sr &= 0xFF00; - regs.sr |= src & 0xFF; - MakeFromSR(); -}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_44fa_0)(uae_u32 opcode) /* MV2SR.B (d16,PC) */ -{ - cpuop_begin(); -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); - MakeSR(); - regs.sr &= 0xFF00; - regs.sr |= src & 0xFF; - MakeFromSR(); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_44fb_0)(uae_u32 opcode) /* MV2SR.B (d8,PC,Xn) */ -{ - cpuop_begin(); -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s16 src = get_word(srca); - MakeSR(); - regs.sr &= 0xFF00; - regs.sr |= src & 0xFF; - MakeFromSR(); -}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_44fc_0)(uae_u32 opcode) /* MV2SR.B #.B */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); - MakeSR(); - regs.sr &= 0xFF00; - regs.sr |= src & 0xFF; - MakeFromSR(); -}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4600_0)(uae_u32 opcode) /* NOT.B Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uae_u32 dst = ~src; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(dst)) == 0); - SET_NFLG (((uae_s8)(dst)) < 0); - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xff) | ((dst) & 0xff); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4610_0)(uae_u32 opcode) /* NOT.B (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); -{ uae_u32 dst = ~src; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(dst)) == 0); - SET_NFLG (((uae_s8)(dst)) < 0); - put_byte(srca,dst); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4618_0)(uae_u32 opcode) /* NOT.B (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ uae_u32 dst = ~src; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(dst)) == 0); - SET_NFLG (((uae_s8)(dst)) < 0); - put_byte(srca,dst); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4620_0)(uae_u32 opcode) /* NOT.B -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; -{ uae_s8 src = get_byte(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_u32 dst = ~src; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(dst)) == 0); - SET_NFLG (((uae_s8)(dst)) < 0); - put_byte(srca,dst); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4628_0)(uae_u32 opcode) /* NOT.B (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uae_u32 dst = ~src; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(dst)) == 0); - SET_NFLG (((uae_s8)(dst)) < 0); - put_byte(srca,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4630_0)(uae_u32 opcode) /* NOT.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s8 src = get_byte(srca); -{ uae_u32 dst = ~src; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(dst)) == 0); - SET_NFLG (((uae_s8)(dst)) < 0); - put_byte(srca,dst); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4638_0)(uae_u32 opcode) /* NOT.B (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uae_u32 dst = ~src; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(dst)) == 0); - SET_NFLG (((uae_s8)(dst)) < 0); - put_byte(srca,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4639_0)(uae_u32 opcode) /* NOT.B (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ uae_s8 src = get_byte(srca); -{ uae_u32 dst = ~src; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(dst)) == 0); - SET_NFLG (((uae_s8)(dst)) < 0); - put_byte(srca,dst); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4640_0)(uae_u32 opcode) /* NOT.W Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_u32 dst = ~src; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(dst)) == 0); - SET_NFLG (((uae_s16)(dst)) < 0); - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xffff) | ((dst) & 0xffff); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4650_0)(uae_u32 opcode) /* NOT.W (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); -{ uae_u32 dst = ~src; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(dst)) == 0); - SET_NFLG (((uae_s16)(dst)) < 0); - put_word(srca,dst); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4658_0)(uae_u32 opcode) /* NOT.W (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, srcreg) += 2; -{ uae_u32 dst = ~src; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(dst)) == 0); - SET_NFLG (((uae_s16)(dst)) < 0); - put_word(srca,dst); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4660_0)(uae_u32 opcode) /* NOT.W -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_u32 dst = ~src; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(dst)) == 0); - SET_NFLG (((uae_s16)(dst)) < 0); - put_word(srca,dst); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4668_0)(uae_u32 opcode) /* NOT.W (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_u32 dst = ~src; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(dst)) == 0); - SET_NFLG (((uae_s16)(dst)) < 0); - put_word(srca,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4670_0)(uae_u32 opcode) /* NOT.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 src = get_word(srca); -{ uae_u32 dst = ~src; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(dst)) == 0); - SET_NFLG (((uae_s16)(dst)) < 0); - put_word(srca,dst); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4678_0)(uae_u32 opcode) /* NOT.W (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_u32 dst = ~src; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(dst)) == 0); - SET_NFLG (((uae_s16)(dst)) < 0); - put_word(srca,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4679_0)(uae_u32 opcode) /* NOT.W (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ uae_s16 src = get_word(srca); -{ uae_u32 dst = ~src; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(dst)) == 0); - SET_NFLG (((uae_s16)(dst)) < 0); - put_word(srca,dst); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4680_0)(uae_u32 opcode) /* NOT.L Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uae_u32 dst = ~src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(dst)) == 0); - SET_NFLG (((uae_s32)(dst)) < 0); - m68k_dreg(regs, srcreg) = (dst); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4690_0)(uae_u32 opcode) /* NOT.L (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); -{ uae_u32 dst = ~src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(dst)) == 0); - SET_NFLG (((uae_s32)(dst)) < 0); - put_long(srca,dst); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4698_0)(uae_u32 opcode) /* NOT.L (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); - m68k_areg(regs, srcreg) += 4; -{ uae_u32 dst = ~src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(dst)) == 0); - SET_NFLG (((uae_s32)(dst)) < 0); - put_long(srca,dst); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_46a0_0)(uae_u32 opcode) /* NOT.L -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 4; -{ uae_s32 src = get_long(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_u32 dst = ~src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(dst)) == 0); - SET_NFLG (((uae_s32)(dst)) < 0); - put_long(srca,dst); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_46a8_0)(uae_u32 opcode) /* NOT.L (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_u32 dst = ~src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(dst)) == 0); - SET_NFLG (((uae_s32)(dst)) < 0); - put_long(srca,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_46b0_0)(uae_u32 opcode) /* NOT.L (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s32 src = get_long(srca); -{ uae_u32 dst = ~src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(dst)) == 0); - SET_NFLG (((uae_s32)(dst)) < 0); - put_long(srca,dst); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_46b8_0)(uae_u32 opcode) /* NOT.L (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_u32 dst = ~src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(dst)) == 0); - SET_NFLG (((uae_s32)(dst)) < 0); - put_long(srca,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_46b9_0)(uae_u32 opcode) /* NOT.L (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ uae_s32 src = get_long(srca); -{ uae_u32 dst = ~src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(dst)) == 0); - SET_NFLG (((uae_s32)(dst)) < 0); - put_long(srca,dst); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_46c0_0)(uae_u32 opcode) /* MV2SR.W Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel773; } -{{ uae_s16 src = m68k_dreg(regs, srcreg); - regs.sr = src; - MakeFromSR(); -}}}m68k_incpc(2); -endlabel773: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_46d0_0)(uae_u32 opcode) /* MV2SR.W (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel774; } -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - regs.sr = src; - MakeFromSR(); -}}}}m68k_incpc(2); -endlabel774: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_46d8_0)(uae_u32 opcode) /* MV2SR.W (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel775; } -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, srcreg) += 2; - regs.sr = src; - MakeFromSR(); -}}}}m68k_incpc(2); -endlabel775: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_46e0_0)(uae_u32 opcode) /* MV2SR.W -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel776; } -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; - regs.sr = src; - MakeFromSR(); -}}}}m68k_incpc(2); -endlabel776: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_46e8_0)(uae_u32 opcode) /* MV2SR.W (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel777; } -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); - regs.sr = src; - MakeFromSR(); -}}}}m68k_incpc(4); -endlabel777: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_46f0_0)(uae_u32 opcode) /* MV2SR.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel778; } -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 src = get_word(srca); - regs.sr = src; - MakeFromSR(); -}}}}}endlabel778: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_46f8_0)(uae_u32 opcode) /* MV2SR.W (xxx).W */ -{ - cpuop_begin(); -{if (!regs.s) { Exception(8,0); goto endlabel779; } -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); - regs.sr = src; - MakeFromSR(); -}}}}m68k_incpc(4); -endlabel779: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_46f9_0)(uae_u32 opcode) /* MV2SR.W (xxx).L */ -{ - cpuop_begin(); -{if (!regs.s) { Exception(8,0); goto endlabel780; } -{{ uaecptr srca = get_ilong(2); -{ uae_s16 src = get_word(srca); - regs.sr = src; - MakeFromSR(); -}}}}m68k_incpc(6); -endlabel780: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_46fa_0)(uae_u32 opcode) /* MV2SR.W (d16,PC) */ -{ - cpuop_begin(); -{if (!regs.s) { Exception(8,0); goto endlabel781; } -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); - regs.sr = src; - MakeFromSR(); -}}}}m68k_incpc(4); -endlabel781: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_46fb_0)(uae_u32 opcode) /* MV2SR.W (d8,PC,Xn) */ -{ - cpuop_begin(); -{if (!regs.s) { Exception(8,0); goto endlabel782; } -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s16 src = get_word(srca); - regs.sr = src; - MakeFromSR(); -}}}}}endlabel782: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_46fc_0)(uae_u32 opcode) /* MV2SR.W #.W */ -{ - cpuop_begin(); -{if (!regs.s) { Exception(8,0); goto endlabel783; } -{{ uae_s16 src = get_iword(2); - regs.sr = src; - MakeFromSR(); -}}}m68k_incpc(4); -endlabel783: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4800_0)(uae_u32 opcode) /* NBCD.B Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uae_u16 newv_lo = - (src & 0xF) - (GET_XFLG ? 1 : 0); - uae_u16 newv_hi = - (src & 0xF0); - uae_u16 newv; - int cflg; - if (newv_lo > 9) { newv_lo -= 6; } - newv = newv_hi + newv_lo; - cflg = (newv & 0x1F0) > 0x90; - if (cflg) newv -= 0x60; - SET_CFLG (cflg); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xff) | ((newv) & 0xff); -}}}m68k_incpc(2); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4808_0)(uae_u32 opcode) /* LINK.L An,#.L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr olda = m68k_areg(regs, 7) - 4; - m68k_areg (regs, 7) = olda; -{ uae_s32 src = m68k_areg(regs, srcreg); - put_long(olda,src); - m68k_areg(regs, srcreg) = (m68k_areg(regs, 7)); -{ uae_s32 offs = get_ilong(2); - m68k_areg(regs, 7) += offs; -}}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_4810_0)(uae_u32 opcode) /* NBCD.B (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); -{ uae_u16 newv_lo = - (src & 0xF) - (GET_XFLG ? 1 : 0); - uae_u16 newv_hi = - (src & 0xF0); - uae_u16 newv; - int cflg; - if (newv_lo > 9) { newv_lo -= 6; } - newv = newv_hi + newv_lo; - cflg = (newv & 0x1F0) > 0x90; - if (cflg) newv -= 0x60; - SET_CFLG (cflg); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - put_byte(srca,newv); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4818_0)(uae_u32 opcode) /* NBCD.B (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ uae_u16 newv_lo = - (src & 0xF) - (GET_XFLG ? 1 : 0); - uae_u16 newv_hi = - (src & 0xF0); - uae_u16 newv; - int cflg; - if (newv_lo > 9) { newv_lo -= 6; } - newv = newv_hi + newv_lo; - cflg = (newv & 0x1F0) > 0x90; - if (cflg) newv -= 0x60; - SET_CFLG (cflg); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - put_byte(srca,newv); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4820_0)(uae_u32 opcode) /* NBCD.B -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; -{ uae_s8 src = get_byte(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_u16 newv_lo = - (src & 0xF) - (GET_XFLG ? 1 : 0); - uae_u16 newv_hi = - (src & 0xF0); - uae_u16 newv; - int cflg; - if (newv_lo > 9) { newv_lo -= 6; } - newv = newv_hi + newv_lo; - cflg = (newv & 0x1F0) > 0x90; - if (cflg) newv -= 0x60; - SET_CFLG (cflg); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - put_byte(srca,newv); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4828_0)(uae_u32 opcode) /* NBCD.B (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uae_u16 newv_lo = - (src & 0xF) - (GET_XFLG ? 1 : 0); - uae_u16 newv_hi = - (src & 0xF0); - uae_u16 newv; - int cflg; - if (newv_lo > 9) { newv_lo -= 6; } - newv = newv_hi + newv_lo; - cflg = (newv & 0x1F0) > 0x90; - if (cflg) newv -= 0x60; - SET_CFLG (cflg); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - put_byte(srca,newv); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4830_0)(uae_u32 opcode) /* NBCD.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s8 src = get_byte(srca); -{ uae_u16 newv_lo = - (src & 0xF) - (GET_XFLG ? 1 : 0); - uae_u16 newv_hi = - (src & 0xF0); - uae_u16 newv; - int cflg; - if (newv_lo > 9) { newv_lo -= 6; } - newv = newv_hi + newv_lo; - cflg = (newv & 0x1F0) > 0x90; - if (cflg) newv -= 0x60; - SET_CFLG (cflg); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - put_byte(srca,newv); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4838_0)(uae_u32 opcode) /* NBCD.B (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uae_u16 newv_lo = - (src & 0xF) - (GET_XFLG ? 1 : 0); - uae_u16 newv_hi = - (src & 0xF0); - uae_u16 newv; - int cflg; - if (newv_lo > 9) { newv_lo -= 6; } - newv = newv_hi + newv_lo; - cflg = (newv & 0x1F0) > 0x90; - if (cflg) newv -= 0x60; - SET_CFLG (cflg); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - put_byte(srca,newv); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4839_0)(uae_u32 opcode) /* NBCD.B (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ uae_s8 src = get_byte(srca); -{ uae_u16 newv_lo = - (src & 0xF) - (GET_XFLG ? 1 : 0); - uae_u16 newv_hi = - (src & 0xF0); - uae_u16 newv; - int cflg; - if (newv_lo > 9) { newv_lo -= 6; } - newv = newv_hi + newv_lo; - cflg = (newv & 0x1F0) > 0x90; - if (cflg) newv -= 0x60; - SET_CFLG (cflg); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - put_byte(srca,newv); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4840_0)(uae_u32 opcode) /* SWAP.W Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uae_u32 dst = ((src >> 16)&0xFFFF) | ((src&0xFFFF)<<16); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(dst)) == 0); - SET_NFLG (((uae_s32)(dst)) < 0); - m68k_dreg(regs, srcreg) = (dst); -}}}m68k_incpc(2); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4848_0)(uae_u32 opcode) /* BKPT.L # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{m68k_incpc(2); - op_illg(opcode); -} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4850_0)(uae_u32 opcode) /* PEA.L (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, 7) - 4; - m68k_areg (regs, 7) = dsta; - put_long(dsta,srca); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4868_0)(uae_u32 opcode) /* PEA.L (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uaecptr dsta = m68k_areg(regs, 7) - 4; - m68k_areg (regs, 7) = dsta; - put_long(dsta,srca); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4870_0)(uae_u32 opcode) /* PEA.L (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uaecptr dsta = m68k_areg(regs, 7) - 4; - m68k_areg (regs, 7) = dsta; - put_long(dsta,srca); -}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4878_0)(uae_u32 opcode) /* PEA.L (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uaecptr dsta = m68k_areg(regs, 7) - 4; - m68k_areg (regs, 7) = dsta; - put_long(dsta,srca); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4879_0)(uae_u32 opcode) /* PEA.L (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ uaecptr dsta = m68k_areg(regs, 7) - 4; - m68k_areg (regs, 7) = dsta; - put_long(dsta,srca); -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_487a_0)(uae_u32 opcode) /* PEA.L (d16,PC) */ -{ - cpuop_begin(); -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uaecptr dsta = m68k_areg(regs, 7) - 4; - m68k_areg (regs, 7) = dsta; - put_long(dsta,srca); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_487b_0)(uae_u32 opcode) /* PEA.L (d8,PC,Xn) */ -{ - cpuop_begin(); -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uaecptr dsta = m68k_areg(regs, 7) - 4; - m68k_areg (regs, 7) = dsta; - put_long(dsta,srca); -}}}} cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_4880_0)(uae_u32 opcode) /* EXT.W Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uae_u16 dst = (uae_s16)(uae_s8)src; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(dst)) == 0); - SET_NFLG (((uae_s16)(dst)) < 0); - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xffff) | ((dst) & 0xffff); -}}}m68k_incpc(2); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4890_0)(uae_u32 opcode) /* MVMLE.W #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{ uae_u16 mask = get_iword(2); -{ uaecptr srca = m68k_areg(regs, dstreg); -{ uae_u16 dmask = mask & 0xff, amask = (mask >> 8) & 0xff; - while (dmask) { put_word(srca, m68k_dreg(regs, movem_index1[dmask])); srca += 2; dmask = movem_next[dmask]; } - while (amask) { put_word(srca, m68k_areg(regs, movem_index1[amask])); srca += 2; amask = movem_next[amask]; } -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_48a0_0)(uae_u32 opcode) /* MVMLE.W #.W,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{ uae_u16 mask = get_iword(2); -{ uaecptr srca = m68k_areg(regs, dstreg) - 0; -{ uae_u16 amask = mask & 0xff, dmask = (mask >> 8) & 0xff; - while (amask) { srca -= 2; put_word(srca, m68k_areg(regs, movem_index2[amask])); amask = movem_next[amask]; } - while (dmask) { srca -= 2; put_word(srca, m68k_dreg(regs, movem_index2[dmask])); dmask = movem_next[dmask]; } - m68k_areg(regs, dstreg) = srca; -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_48a8_0)(uae_u32 opcode) /* MVMLE.W #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{ uae_u16 mask = get_iword(2); -{ uaecptr srca = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ uae_u16 dmask = mask & 0xff, amask = (mask >> 8) & 0xff; - while (dmask) { put_word(srca, m68k_dreg(regs, movem_index1[dmask])); srca += 2; dmask = movem_next[dmask]; } - while (amask) { put_word(srca, m68k_areg(regs, movem_index1[amask])); srca += 2; amask = movem_next[amask]; } -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_48b0_0)(uae_u32 opcode) /* MVMLE.W #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{ uae_u16 mask = get_iword(2); -{m68k_incpc(4); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_u16 dmask = mask & 0xff, amask = (mask >> 8) & 0xff; - while (dmask) { put_word(srca, m68k_dreg(regs, movem_index1[dmask])); srca += 2; dmask = movem_next[dmask]; } - while (amask) { put_word(srca, m68k_areg(regs, movem_index1[amask])); srca += 2; amask = movem_next[amask]; } -}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_48b8_0)(uae_u32 opcode) /* MVMLE.W #.W,(xxx).W */ -{ - cpuop_begin(); -{ uae_u16 mask = get_iword(2); -{ uaecptr srca = (uae_s32)(uae_s16)get_iword(4); -{ uae_u16 dmask = mask & 0xff, amask = (mask >> 8) & 0xff; - while (dmask) { put_word(srca, m68k_dreg(regs, movem_index1[dmask])); srca += 2; dmask = movem_next[dmask]; } - while (amask) { put_word(srca, m68k_areg(regs, movem_index1[amask])); srca += 2; amask = movem_next[amask]; } -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_48b9_0)(uae_u32 opcode) /* MVMLE.W #.W,(xxx).L */ -{ - cpuop_begin(); -{ uae_u16 mask = get_iword(2); -{ uaecptr srca = get_ilong(4); -{ uae_u16 dmask = mask & 0xff, amask = (mask >> 8) & 0xff; - while (dmask) { put_word(srca, m68k_dreg(regs, movem_index1[dmask])); srca += 2; dmask = movem_next[dmask]; } - while (amask) { put_word(srca, m68k_areg(regs, movem_index1[amask])); srca += 2; amask = movem_next[amask]; } -}}}m68k_incpc(8); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_48c0_0)(uae_u32 opcode) /* EXT.L Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uae_u32 dst = (uae_s32)(uae_s16)src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(dst)) == 0); - SET_NFLG (((uae_s32)(dst)) < 0); - m68k_dreg(regs, srcreg) = (dst); -}}}m68k_incpc(2); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_48d0_0)(uae_u32 opcode) /* MVMLE.L #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{ uae_u16 mask = get_iword(2); -{ uaecptr srca = m68k_areg(regs, dstreg); -{ uae_u16 dmask = mask & 0xff, amask = (mask >> 8) & 0xff; - while (dmask) { put_long(srca, m68k_dreg(regs, movem_index1[dmask])); srca += 4; dmask = movem_next[dmask]; } - while (amask) { put_long(srca, m68k_areg(regs, movem_index1[amask])); srca += 4; amask = movem_next[amask]; } -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_48e0_0)(uae_u32 opcode) /* MVMLE.L #.W,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{ uae_u16 mask = get_iword(2); -{ uaecptr srca = m68k_areg(regs, dstreg) - 0; -{ uae_u16 amask = mask & 0xff, dmask = (mask >> 8) & 0xff; - while (amask) { srca -= 4; put_long(srca, m68k_areg(regs, movem_index2[amask])); amask = movem_next[amask]; } - while (dmask) { srca -= 4; put_long(srca, m68k_dreg(regs, movem_index2[dmask])); dmask = movem_next[dmask]; } - m68k_areg(regs, dstreg) = srca; -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_48e8_0)(uae_u32 opcode) /* MVMLE.L #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{ uae_u16 mask = get_iword(2); -{ uaecptr srca = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ uae_u16 dmask = mask & 0xff, amask = (mask >> 8) & 0xff; - while (dmask) { put_long(srca, m68k_dreg(regs, movem_index1[dmask])); srca += 4; dmask = movem_next[dmask]; } - while (amask) { put_long(srca, m68k_areg(regs, movem_index1[amask])); srca += 4; amask = movem_next[amask]; } -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_48f0_0)(uae_u32 opcode) /* MVMLE.L #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{ uae_u16 mask = get_iword(2); -{m68k_incpc(4); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_u16 dmask = mask & 0xff, amask = (mask >> 8) & 0xff; - while (dmask) { put_long(srca, m68k_dreg(regs, movem_index1[dmask])); srca += 4; dmask = movem_next[dmask]; } - while (amask) { put_long(srca, m68k_areg(regs, movem_index1[amask])); srca += 4; amask = movem_next[amask]; } -}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_48f8_0)(uae_u32 opcode) /* MVMLE.L #.W,(xxx).W */ -{ - cpuop_begin(); -{ uae_u16 mask = get_iword(2); -{ uaecptr srca = (uae_s32)(uae_s16)get_iword(4); -{ uae_u16 dmask = mask & 0xff, amask = (mask >> 8) & 0xff; - while (dmask) { put_long(srca, m68k_dreg(regs, movem_index1[dmask])); srca += 4; dmask = movem_next[dmask]; } - while (amask) { put_long(srca, m68k_areg(regs, movem_index1[amask])); srca += 4; amask = movem_next[amask]; } -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_48f9_0)(uae_u32 opcode) /* MVMLE.L #.W,(xxx).L */ -{ - cpuop_begin(); -{ uae_u16 mask = get_iword(2); -{ uaecptr srca = get_ilong(4); -{ uae_u16 dmask = mask & 0xff, amask = (mask >> 8) & 0xff; - while (dmask) { put_long(srca, m68k_dreg(regs, movem_index1[dmask])); srca += 4; dmask = movem_next[dmask]; } - while (amask) { put_long(srca, m68k_areg(regs, movem_index1[amask])); srca += 4; amask = movem_next[amask]; } -}}}m68k_incpc(8); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_49c0_0)(uae_u32 opcode) /* EXT.B Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uae_u32 dst = (uae_s32)(uae_s8)src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(dst)) == 0); - SET_NFLG (((uae_s32)(dst)) < 0); - m68k_dreg(regs, srcreg) = (dst); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a00_0)(uae_u32 opcode) /* TST.B Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); -}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a10_0)(uae_u32 opcode) /* TST.B (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a18_0)(uae_u32 opcode) /* TST.B (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a20_0)(uae_u32 opcode) /* TST.B -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; -{ uae_s8 src = get_byte(srca); - m68k_areg (regs, srcreg) = srca; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a28_0)(uae_u32 opcode) /* TST.B (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a30_0)(uae_u32 opcode) /* TST.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s8 src = get_byte(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); -}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a38_0)(uae_u32 opcode) /* TST.B (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a39_0)(uae_u32 opcode) /* TST.B (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ uae_s8 src = get_byte(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); -}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a3a_0)(uae_u32 opcode) /* TST.B (d16,PC) */ -{ - cpuop_begin(); -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a3b_0)(uae_u32 opcode) /* TST.B (d8,PC,Xn) */ -{ - cpuop_begin(); -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s8 src = get_byte(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); -}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a3c_0)(uae_u32 opcode) /* TST.B #.B */ -{ - cpuop_begin(); -{{ uae_s8 src = get_ibyte(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); -}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a40_0)(uae_u32 opcode) /* TST.W Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); -}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a48_0)(uae_u32 opcode) /* TST.W An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s16 src = m68k_areg(regs, srcreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); -}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a50_0)(uae_u32 opcode) /* TST.W (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a58_0)(uae_u32 opcode) /* TST.W (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, srcreg) += 2; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a60_0)(uae_u32 opcode) /* TST.W -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a68_0)(uae_u32 opcode) /* TST.W (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a70_0)(uae_u32 opcode) /* TST.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 src = get_word(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); -}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a78_0)(uae_u32 opcode) /* TST.W (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a79_0)(uae_u32 opcode) /* TST.W (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ uae_s16 src = get_word(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); -}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a7a_0)(uae_u32 opcode) /* TST.W (d16,PC) */ -{ - cpuop_begin(); -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a7b_0)(uae_u32 opcode) /* TST.W (d8,PC,Xn) */ -{ - cpuop_begin(); -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s16 src = get_word(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); -}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a7c_0)(uae_u32 opcode) /* TST.W #.W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); -}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a80_0)(uae_u32 opcode) /* TST.L Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); -}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a88_0)(uae_u32 opcode) /* TST.L An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s32 src = m68k_areg(regs, srcreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); -}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a90_0)(uae_u32 opcode) /* TST.L (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a98_0)(uae_u32 opcode) /* TST.L (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); - m68k_areg(regs, srcreg) += 4; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4aa0_0)(uae_u32 opcode) /* TST.L -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 4; -{ uae_s32 src = get_long(srca); - m68k_areg (regs, srcreg) = srca; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4aa8_0)(uae_u32 opcode) /* TST.L (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4ab0_0)(uae_u32 opcode) /* TST.L (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s32 src = get_long(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); -}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4ab8_0)(uae_u32 opcode) /* TST.L (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4ab9_0)(uae_u32 opcode) /* TST.L (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ uae_s32 src = get_long(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); -}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4aba_0)(uae_u32 opcode) /* TST.L (d16,PC) */ -{ - cpuop_begin(); -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4abb_0)(uae_u32 opcode) /* TST.L (d8,PC,Xn) */ -{ - cpuop_begin(); -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s32 src = get_long(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); -}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4abc_0)(uae_u32 opcode) /* TST.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); -}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4ac0_0)(uae_u32 opcode) /* TAS.B Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - src |= 0x80; - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xff) | ((src) & 0xff); -}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4ad0_0)(uae_u32 opcode) /* TAS.B (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - src |= 0x80; - put_byte(srca,src); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4ad8_0)(uae_u32 opcode) /* TAS.B (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - src |= 0x80; - put_byte(srca,src); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4ae0_0)(uae_u32 opcode) /* TAS.B -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; -{ uae_s8 src = get_byte(srca); - m68k_areg (regs, srcreg) = srca; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - src |= 0x80; - put_byte(srca,src); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4ae8_0)(uae_u32 opcode) /* TAS.B (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - src |= 0x80; - put_byte(srca,src); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4af0_0)(uae_u32 opcode) /* TAS.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s8 src = get_byte(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - src |= 0x80; - put_byte(srca,src); -}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4af8_0)(uae_u32 opcode) /* TAS.B (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - src |= 0x80; - put_byte(srca,src); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4af9_0)(uae_u32 opcode) /* TAS.B (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ uae_s8 src = get_byte(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - src |= 0x80; - put_byte(srca,src); -}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4c00_0)(uae_u32 opcode) /* MULL.L #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -m68k_incpc(4); - m68k_mull(opcode, dst, extra); -}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4c10_0)(uae_u32 opcode) /* MULL.L #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); -m68k_incpc(4); - m68k_mull(opcode, dst, extra); -}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4c18_0)(uae_u32 opcode) /* MULL.L #.W,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); - m68k_areg(regs, dstreg) += 4; -m68k_incpc(4); - m68k_mull(opcode, dst, extra); -}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4c20_0)(uae_u32 opcode) /* MULL.L #.W,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; -{ uae_s32 dst = get_long(dsta); - m68k_areg (regs, dstreg) = dsta; -m68k_incpc(4); - m68k_mull(opcode, dst, extra); -}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4c28_0)(uae_u32 opcode) /* MULL.L #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ uae_s32 dst = get_long(dsta); -m68k_incpc(6); - m68k_mull(opcode, dst, extra); -}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4c30_0)(uae_u32 opcode) /* MULL.L #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s32 dst = get_long(dsta); - m68k_mull(opcode, dst, extra); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4c38_0)(uae_u32 opcode) /* MULL.L #.W,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); -{ uae_s32 dst = get_long(dsta); -m68k_incpc(6); - m68k_mull(opcode, dst, extra); -}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4c39_0)(uae_u32 opcode) /* MULL.L #.W,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = get_ilong(4); -{ uae_s32 dst = get_long(dsta); -m68k_incpc(8); - m68k_mull(opcode, dst, extra); -}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4c3a_0)(uae_u32 opcode) /* MULL.L #.W,(d16,PC) */ -{ - cpuop_begin(); - uae_u32 dstreg = 2; -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_getpc () + 4; - dsta += (uae_s32)(uae_s16)get_iword(4); -{ uae_s32 dst = get_long(dsta); -m68k_incpc(6); - m68k_mull(opcode, dst, extra); -}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4c3b_0)(uae_u32 opcode) /* MULL.L #.W,(d8,PC,Xn) */ -{ - cpuop_begin(); - uae_u32 dstreg = 3; -{{ uae_s16 extra = get_iword(2); -{m68k_incpc(4); -{ uaecptr tmppc = m68k_getpc(); - uaecptr dsta = get_disp_ea_020(tmppc, next_iword()); -{ uae_s32 dst = get_long(dsta); - m68k_mull(opcode, dst, extra); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4c3c_0)(uae_u32 opcode) /* MULL.L #.W,#.L */ -{ - cpuop_begin(); -{{ uae_s16 extra = get_iword(2); -{ uae_s32 dst = get_ilong(4); -m68k_incpc(8); - m68k_mull(opcode, dst, extra); -}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4c40_0)(uae_u32 opcode) /* DIVL.L #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{m68k_incpc(2); -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(0); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -m68k_incpc(2); - m68k_divl(opcode, dst, extra, oldpc); -}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4c50_0)(uae_u32 opcode) /* DIVL.L #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{m68k_incpc(2); -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(0); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); -m68k_incpc(2); - m68k_divl(opcode, dst, extra, oldpc); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4c58_0)(uae_u32 opcode) /* DIVL.L #.W,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{m68k_incpc(2); -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(0); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); - m68k_areg(regs, dstreg) += 4; -m68k_incpc(2); - m68k_divl(opcode, dst, extra, oldpc); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4c60_0)(uae_u32 opcode) /* DIVL.L #.W,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{m68k_incpc(2); -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(0); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; -{ uae_s32 dst = get_long(dsta); - m68k_areg (regs, dstreg) = dsta; -m68k_incpc(2); - m68k_divl(opcode, dst, extra, oldpc); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4c68_0)(uae_u32 opcode) /* DIVL.L #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{m68k_incpc(2); -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(0); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 dst = get_long(dsta); -m68k_incpc(4); - m68k_divl(opcode, dst, extra, oldpc); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4c70_0)(uae_u32 opcode) /* DIVL.L #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{m68k_incpc(2); -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(0); -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s32 dst = get_long(dsta); - m68k_divl(opcode, dst, extra, oldpc); -}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4c78_0)(uae_u32 opcode) /* DIVL.L #.W,(xxx).W */ -{ - cpuop_begin(); -{m68k_incpc(2); -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(0); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 dst = get_long(dsta); -m68k_incpc(4); - m68k_divl(opcode, dst, extra, oldpc); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4c79_0)(uae_u32 opcode) /* DIVL.L #.W,(xxx).L */ -{ - cpuop_begin(); -{m68k_incpc(2); -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(0); -{ uaecptr dsta = get_ilong(2); -{ uae_s32 dst = get_long(dsta); -m68k_incpc(6); - m68k_divl(opcode, dst, extra, oldpc); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4c7a_0)(uae_u32 opcode) /* DIVL.L #.W,(d16,PC) */ -{ - cpuop_begin(); - uae_u32 dstreg = 2; -{m68k_incpc(2); -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(0); -{ uaecptr dsta = m68k_getpc () + 2; - dsta += (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 dst = get_long(dsta); -m68k_incpc(4); - m68k_divl(opcode, dst, extra, oldpc); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4c7b_0)(uae_u32 opcode) /* DIVL.L #.W,(d8,PC,Xn) */ -{ - cpuop_begin(); - uae_u32 dstreg = 3; -{m68k_incpc(2); -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(0); -{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr dsta = get_disp_ea_020(tmppc, next_iword()); -{ uae_s32 dst = get_long(dsta); - m68k_divl(opcode, dst, extra, oldpc); -}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4c7c_0)(uae_u32 opcode) /* DIVL.L #.W,#.L */ -{ - cpuop_begin(); -{m68k_incpc(2); -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 extra = get_iword(0); -{ uae_s32 dst = get_ilong(2); -m68k_incpc(6); - m68k_divl(opcode, dst, extra, oldpc); -}}}} cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4c90_0)(uae_u32 opcode) /* MVMEL.W #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{ uae_u16 mask = get_iword(2); - unsigned int dmask = mask & 0xff, amask = (mask >> 8) & 0xff; -{ uaecptr srca = m68k_areg(regs, dstreg); -{ while (dmask) { m68k_dreg(regs, movem_index1[dmask]) = (uae_s32)(uae_s16)get_word(srca); srca += 2; dmask = movem_next[dmask]; } - while (amask) { m68k_areg(regs, movem_index1[amask]) = (uae_s32)(uae_s16)get_word(srca); srca += 2; amask = movem_next[amask]; } -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4c98_0)(uae_u32 opcode) /* MVMEL.W #.W,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{ uae_u16 mask = get_iword(2); - unsigned int dmask = mask & 0xff, amask = (mask >> 8) & 0xff; -{ uaecptr srca = m68k_areg(regs, dstreg); -{ while (dmask) { m68k_dreg(regs, movem_index1[dmask]) = (uae_s32)(uae_s16)get_word(srca); srca += 2; dmask = movem_next[dmask]; } - while (amask) { m68k_areg(regs, movem_index1[amask]) = (uae_s32)(uae_s16)get_word(srca); srca += 2; amask = movem_next[amask]; } - m68k_areg(regs, dstreg) = srca; -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4ca8_0)(uae_u32 opcode) /* MVMEL.W #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{ uae_u16 mask = get_iword(2); - unsigned int dmask = mask & 0xff, amask = (mask >> 8) & 0xff; -{ uaecptr srca = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ while (dmask) { m68k_dreg(regs, movem_index1[dmask]) = (uae_s32)(uae_s16)get_word(srca); srca += 2; dmask = movem_next[dmask]; } - while (amask) { m68k_areg(regs, movem_index1[amask]) = (uae_s32)(uae_s16)get_word(srca); srca += 2; amask = movem_next[amask]; } -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4cb0_0)(uae_u32 opcode) /* MVMEL.W #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{ uae_u16 mask = get_iword(2); - unsigned int dmask = mask & 0xff, amask = (mask >> 8) & 0xff; -{m68k_incpc(4); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ while (dmask) { m68k_dreg(regs, movem_index1[dmask]) = (uae_s32)(uae_s16)get_word(srca); srca += 2; dmask = movem_next[dmask]; } - while (amask) { m68k_areg(regs, movem_index1[amask]) = (uae_s32)(uae_s16)get_word(srca); srca += 2; amask = movem_next[amask]; } -}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4cb8_0)(uae_u32 opcode) /* MVMEL.W #.W,(xxx).W */ -{ - cpuop_begin(); -{ uae_u16 mask = get_iword(2); - unsigned int dmask = mask & 0xff, amask = (mask >> 8) & 0xff; -{ uaecptr srca = (uae_s32)(uae_s16)get_iword(4); -{ while (dmask) { m68k_dreg(regs, movem_index1[dmask]) = (uae_s32)(uae_s16)get_word(srca); srca += 2; dmask = movem_next[dmask]; } - while (amask) { m68k_areg(regs, movem_index1[amask]) = (uae_s32)(uae_s16)get_word(srca); srca += 2; amask = movem_next[amask]; } -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4cb9_0)(uae_u32 opcode) /* MVMEL.W #.W,(xxx).L */ -{ - cpuop_begin(); -{ uae_u16 mask = get_iword(2); - unsigned int dmask = mask & 0xff, amask = (mask >> 8) & 0xff; -{ uaecptr srca = get_ilong(4); -{ while (dmask) { m68k_dreg(regs, movem_index1[dmask]) = (uae_s32)(uae_s16)get_word(srca); srca += 2; dmask = movem_next[dmask]; } - while (amask) { m68k_areg(regs, movem_index1[amask]) = (uae_s32)(uae_s16)get_word(srca); srca += 2; amask = movem_next[amask]; } -}}}m68k_incpc(8); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4cba_0)(uae_u32 opcode) /* MVMEL.W #.W,(d16,PC) */ -{ - cpuop_begin(); - uae_u32 dstreg = 2; -{ uae_u16 mask = get_iword(2); - unsigned int dmask = mask & 0xff, amask = (mask >> 8) & 0xff; -{ uaecptr srca = m68k_getpc () + 4; - srca += (uae_s32)(uae_s16)get_iword(4); -{ while (dmask) { m68k_dreg(regs, movem_index1[dmask]) = (uae_s32)(uae_s16)get_word(srca); srca += 2; dmask = movem_next[dmask]; } - while (amask) { m68k_areg(regs, movem_index1[amask]) = (uae_s32)(uae_s16)get_word(srca); srca += 2; amask = movem_next[amask]; } -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4cbb_0)(uae_u32 opcode) /* MVMEL.W #.W,(d8,PC,Xn) */ -{ - cpuop_begin(); - uae_u32 dstreg = 3; -{ uae_u16 mask = get_iword(2); - unsigned int dmask = mask & 0xff, amask = (mask >> 8) & 0xff; -{m68k_incpc(4); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ while (dmask) { m68k_dreg(regs, movem_index1[dmask]) = (uae_s32)(uae_s16)get_word(srca); srca += 2; dmask = movem_next[dmask]; } - while (amask) { m68k_areg(regs, movem_index1[amask]) = (uae_s32)(uae_s16)get_word(srca); srca += 2; amask = movem_next[amask]; } -}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4cd0_0)(uae_u32 opcode) /* MVMEL.L #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{ uae_u16 mask = get_iword(2); - unsigned int dmask = mask & 0xff, amask = (mask >> 8) & 0xff; -{ uaecptr srca = m68k_areg(regs, dstreg); -{ while (dmask) { m68k_dreg(regs, movem_index1[dmask]) = get_long(srca); srca += 4; dmask = movem_next[dmask]; } - while (amask) { m68k_areg(regs, movem_index1[amask]) = get_long(srca); srca += 4; amask = movem_next[amask]; } -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4cd8_0)(uae_u32 opcode) /* MVMEL.L #.W,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{ uae_u16 mask = get_iword(2); - unsigned int dmask = mask & 0xff, amask = (mask >> 8) & 0xff; -{ uaecptr srca = m68k_areg(regs, dstreg); -{ while (dmask) { m68k_dreg(regs, movem_index1[dmask]) = get_long(srca); srca += 4; dmask = movem_next[dmask]; } - while (amask) { m68k_areg(regs, movem_index1[amask]) = get_long(srca); srca += 4; amask = movem_next[amask]; } - m68k_areg(regs, dstreg) = srca; -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4ce8_0)(uae_u32 opcode) /* MVMEL.L #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{ uae_u16 mask = get_iword(2); - unsigned int dmask = mask & 0xff, amask = (mask >> 8) & 0xff; -{ uaecptr srca = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ while (dmask) { m68k_dreg(regs, movem_index1[dmask]) = get_long(srca); srca += 4; dmask = movem_next[dmask]; } - while (amask) { m68k_areg(regs, movem_index1[amask]) = get_long(srca); srca += 4; amask = movem_next[amask]; } -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4cf0_0)(uae_u32 opcode) /* MVMEL.L #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{ uae_u16 mask = get_iword(2); - unsigned int dmask = mask & 0xff, amask = (mask >> 8) & 0xff; -{m68k_incpc(4); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ while (dmask) { m68k_dreg(regs, movem_index1[dmask]) = get_long(srca); srca += 4; dmask = movem_next[dmask]; } - while (amask) { m68k_areg(regs, movem_index1[amask]) = get_long(srca); srca += 4; amask = movem_next[amask]; } -}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4cf8_0)(uae_u32 opcode) /* MVMEL.L #.W,(xxx).W */ -{ - cpuop_begin(); -{ uae_u16 mask = get_iword(2); - unsigned int dmask = mask & 0xff, amask = (mask >> 8) & 0xff; -{ uaecptr srca = (uae_s32)(uae_s16)get_iword(4); -{ while (dmask) { m68k_dreg(regs, movem_index1[dmask]) = get_long(srca); srca += 4; dmask = movem_next[dmask]; } - while (amask) { m68k_areg(regs, movem_index1[amask]) = get_long(srca); srca += 4; amask = movem_next[amask]; } -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4cf9_0)(uae_u32 opcode) /* MVMEL.L #.W,(xxx).L */ -{ - cpuop_begin(); -{ uae_u16 mask = get_iword(2); - unsigned int dmask = mask & 0xff, amask = (mask >> 8) & 0xff; -{ uaecptr srca = get_ilong(4); -{ while (dmask) { m68k_dreg(regs, movem_index1[dmask]) = get_long(srca); srca += 4; dmask = movem_next[dmask]; } - while (amask) { m68k_areg(regs, movem_index1[amask]) = get_long(srca); srca += 4; amask = movem_next[amask]; } -}}}m68k_incpc(8); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4cfa_0)(uae_u32 opcode) /* MVMEL.L #.W,(d16,PC) */ -{ - cpuop_begin(); - uae_u32 dstreg = 2; -{ uae_u16 mask = get_iword(2); - unsigned int dmask = mask & 0xff, amask = (mask >> 8) & 0xff; -{ uaecptr srca = m68k_getpc () + 4; - srca += (uae_s32)(uae_s16)get_iword(4); -{ while (dmask) { m68k_dreg(regs, movem_index1[dmask]) = get_long(srca); srca += 4; dmask = movem_next[dmask]; } - while (amask) { m68k_areg(regs, movem_index1[amask]) = get_long(srca); srca += 4; amask = movem_next[amask]; } -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4cfb_0)(uae_u32 opcode) /* MVMEL.L #.W,(d8,PC,Xn) */ -{ - cpuop_begin(); - uae_u32 dstreg = 3; -{ uae_u16 mask = get_iword(2); - unsigned int dmask = mask & 0xff, amask = (mask >> 8) & 0xff; -{m68k_incpc(4); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ while (dmask) { m68k_dreg(regs, movem_index1[dmask]) = get_long(srca); srca += 4; dmask = movem_next[dmask]; } - while (amask) { m68k_areg(regs, movem_index1[amask]) = get_long(srca); srca += 4; amask = movem_next[amask]; } -}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4e40_0)(uae_u32 opcode) /* TRAP.L # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 15); -#else - uae_u32 srcreg = (opcode & 15); -#endif -{{ uae_u32 src = srcreg; -m68k_incpc(2); - Exception(src+32,0); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4e50_0)(uae_u32 opcode) /* LINK.W An,#.W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr olda = m68k_areg(regs, 7) - 4; - m68k_areg (regs, 7) = olda; -{ uae_s32 src = m68k_areg(regs, srcreg); - put_long(olda,src); - m68k_areg(regs, srcreg) = (m68k_areg(regs, 7)); -{ uae_s16 offs = get_iword(2); - m68k_areg(regs, 7) += offs; -}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4e58_0)(uae_u32 opcode) /* UNLK.L An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s32 src = m68k_areg(regs, srcreg); - m68k_areg(regs, 7) = src; -{ uaecptr olda = m68k_areg(regs, 7); -{ uae_s32 old = get_long(olda); - m68k_areg(regs, 7) += 4; - m68k_areg(regs, srcreg) = (old); -}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4e60_0)(uae_u32 opcode) /* MVR2USP.L An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel901; } -{{ uae_s32 src = m68k_areg(regs, srcreg); - regs.usp = src; -}}}m68k_incpc(2); -endlabel901: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4e68_0)(uae_u32 opcode) /* MVUSP2R.L An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel902; } -{{ m68k_areg(regs, srcreg) = (regs.usp); -}}}m68k_incpc(2); -endlabel902: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4e70_0)(uae_u32 opcode) /* RESET.L */ -{ - cpuop_begin(); -{if (!regs.s) { Exception(8,0); goto endlabel903; } -{}}m68k_incpc(2); -endlabel903: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4e71_0)(uae_u32 opcode) /* NOP.L */ -{ - cpuop_begin(); -{}m68k_incpc(2); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_4e72_0)(uae_u32 opcode) /* STOP.L #.W */ -{ - cpuop_begin(); -{if (!regs.s) { Exception(8,0); goto endlabel905; } -{{ uae_s16 src = get_iword(2); - regs.sr = src; - MakeFromSR(); - m68k_setstopped(1); -}}}m68k_incpc(4); -endlabel905: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4e73_0)(uae_u32 opcode) /* RTE.L */ -{ - cpuop_begin(); -{if (!regs.s) { Exception(8,0); goto endlabel906; } -{ uae_u16 newsr; uae_u32 newpc; for (;;) { -{ uaecptr sra = m68k_areg(regs, 7); -{ uae_s16 sr = get_word(sra); - m68k_areg(regs, 7) += 2; -{ uaecptr pca = m68k_areg(regs, 7); -{ uae_s32 pc = get_long(pca); - m68k_areg(regs, 7) += 4; -{ uaecptr formata = m68k_areg(regs, 7); -{ uae_s16 format = get_word(formata); - m68k_areg(regs, 7) += 2; - newsr = sr; newpc = pc; - if ((format & 0xF000) == 0x0000) { break; } - else if ((format & 0xF000) == 0x1000) { ; } - else if ((format & 0xF000) == 0x2000) { m68k_areg(regs, 7) += 4; break; } - else if ((format & 0xF000) == 0x3000) { m68k_areg(regs, 7) += 4; break; } - else if ((format & 0xF000) == 0x7000) { m68k_areg(regs, 7) += 52; break; } - else if ((format & 0xF000) == 0x8000) { m68k_areg(regs, 7) += 50; break; } - else if ((format & 0xF000) == 0x9000) { m68k_areg(regs, 7) += 12; break; } - else if ((format & 0xF000) == 0xa000) { m68k_areg(regs, 7) += 24; break; } - else if ((format & 0xF000) == 0xb000) { m68k_areg(regs, 7) += 84; break; } - else { Exception(14,0); goto endlabel906; } - regs.sr = newsr; MakeFromSR(); -} -}}}}}} regs.sr = newsr; MakeFromSR(); - m68k_setpc_rte(newpc); -}}endlabel906: ; - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4e74_0)(uae_u32 opcode) /* RTD.L #.W */ -{ - cpuop_begin(); -{{ uaecptr pca = m68k_areg(regs, 7); -{ uae_s32 pc = get_long(pca); - m68k_areg(regs, 7) += 4; -{ uae_s16 offs = get_iword(2); - m68k_areg(regs, 7) += offs; - m68k_setpc_rte(pc); -}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4e75_0)(uae_u32 opcode) /* RTS.L */ -{ - cpuop_begin(); -{ m68k_do_rts(); -} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4e76_0)(uae_u32 opcode) /* TRAPV.L */ -{ - cpuop_begin(); -{m68k_incpc(2); - if (GET_VFLG) { Exception(7,m68k_getpc()); goto endlabel909; } -}endlabel909: ; - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_4e77_0)(uae_u32 opcode) /* RTR.L */ -{ - cpuop_begin(); -{ MakeSR(); -{ uaecptr sra = m68k_areg(regs, 7); -{ uae_s16 sr = get_word(sra); - m68k_areg(regs, 7) += 2; -{ uaecptr pca = m68k_areg(regs, 7); -{ uae_s32 pc = get_long(pca); - m68k_areg(regs, 7) += 4; - regs.sr &= 0xFF00; sr &= 0xFF; - regs.sr |= sr; m68k_setpc(pc); - MakeFromSR(); -}}}}} cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4e7a_0)(uae_u32 opcode) /* MOVEC2.L #.W */ -{ - cpuop_begin(); -{if (!regs.s) { Exception(8,0); goto endlabel911; } -{{ uae_s16 src = get_iword(2); -{ int regno = (src >> 12) & 15; - uae_u32 *regp = regs.regs + regno; - if (! m68k_movec2(src & 0xFFF, regp)) goto endlabel911; -}}}}m68k_incpc(4); -endlabel911: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4e7b_0)(uae_u32 opcode) /* MOVE2C.L #.W */ -{ - cpuop_begin(); -{if (!regs.s) { Exception(8,0); goto endlabel912; } -{{ uae_s16 src = get_iword(2); -{ int regno = (src >> 12) & 15; - uae_u32 *regp = regs.regs + regno; - if (! m68k_move2c(src & 0xFFF, regp)) goto endlabel912; -}}}}m68k_incpc(4); -endlabel912: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4e90_0)(uae_u32 opcode) /* JSR.L (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); - m68k_do_jsr(m68k_getpc() + 2, srca); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4ea8_0)(uae_u32 opcode) /* JSR.L (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); - m68k_do_jsr(m68k_getpc() + 4, srca); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4eb0_0)(uae_u32 opcode) /* JSR.L (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); - m68k_do_jsr(m68k_getpc() + 0, srca); -}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4eb8_0)(uae_u32 opcode) /* JSR.L (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); - m68k_do_jsr(m68k_getpc() + 4, srca); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4eb9_0)(uae_u32 opcode) /* JSR.L (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); - m68k_do_jsr(m68k_getpc() + 6, srca); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4eba_0)(uae_u32 opcode) /* JSR.L (d16,PC) */ -{ - cpuop_begin(); -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); - m68k_do_jsr(m68k_getpc() + 4, srca); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4ebb_0)(uae_u32 opcode) /* JSR.L (d8,PC,Xn) */ -{ - cpuop_begin(); -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); - m68k_do_jsr(m68k_getpc() + 0, srca); -}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4ed0_0)(uae_u32 opcode) /* JMP.L (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); - m68k_setpc(srca); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4ee8_0)(uae_u32 opcode) /* JMP.L (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); - m68k_setpc(srca); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4ef0_0)(uae_u32 opcode) /* JMP.L (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); - m68k_setpc(srca); -}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4ef8_0)(uae_u32 opcode) /* JMP.L (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); - m68k_setpc(srca); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4ef9_0)(uae_u32 opcode) /* JMP.L (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); - m68k_setpc(srca); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4efa_0)(uae_u32 opcode) /* JMP.L (d16,PC) */ -{ - cpuop_begin(); -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); - m68k_setpc(srca); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4efb_0)(uae_u32 opcode) /* JMP.L (d8,PC,Xn) */ -{ - cpuop_begin(); -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); - m68k_setpc(srca); -}}} cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_5000_0)(uae_u32 opcode) /* ADD.B #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5010_0)(uae_u32 opcode) /* ADD.B #,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5018_0)(uae_u32 opcode) /* ADD.B #,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5020_0)(uae_u32 opcode) /* ADD.B #,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; -{ uae_s8 dst = get_byte(dsta); - m68k_areg (regs, dstreg) = dsta; -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5028_0)(uae_u32 opcode) /* ADD.B #,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5030_0)(uae_u32 opcode) /* ADD.B #,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5038_0)(uae_u32 opcode) /* ADD.B #,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5039_0)(uae_u32 opcode) /* ADD.B #,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = get_ilong(2); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -#endif - -#ifdef PART_5 -void REGPARAM2 CPUFUNC(op_5040_0)(uae_u32 opcode) /* ADD.W #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5048_0)(uae_u32 opcode) /* ADDA.W #,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst + src; - m68k_areg(regs, dstreg) = (newv); -}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_5050_0)(uae_u32 opcode) /* ADD.W #,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5058_0)(uae_u32 opcode) /* ADD.W #,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s16 dst = get_word(dsta); - m68k_areg(regs, dstreg) += 2; -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5060_0)(uae_u32 opcode) /* ADD.W #,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; -{ uae_s16 dst = get_word(dsta); - m68k_areg (regs, dstreg) = dsta; -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5068_0)(uae_u32 opcode) /* ADD.W #,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5070_0)(uae_u32 opcode) /* ADD.W #,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5078_0)(uae_u32 opcode) /* ADD.W #,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5079_0)(uae_u32 opcode) /* ADD.W #,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = get_ilong(2); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5080_0)(uae_u32 opcode) /* ADD.L #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5088_0)(uae_u32 opcode) /* ADDA.L #,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst + src; - m68k_areg(regs, dstreg) = (newv); -}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_5090_0)(uae_u32 opcode) /* ADD.L #,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5098_0)(uae_u32 opcode) /* ADD.L #,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); - m68k_areg(regs, dstreg) += 4; -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_50a0_0)(uae_u32 opcode) /* ADD.L #,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; -{ uae_s32 dst = get_long(dsta); - m68k_areg (regs, dstreg) = dsta; -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_50a8_0)(uae_u32 opcode) /* ADD.L #,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_50b0_0)(uae_u32 opcode) /* ADD.L #,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_50b8_0)(uae_u32 opcode) /* ADD.L #,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_50b9_0)(uae_u32 opcode) /* ADD.L #,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = get_ilong(2); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_50c0_0)(uae_u32 opcode) /* Scc.B Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{{ int val = cctrue(0) ? 0xff : 0; - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xff) | ((val) & 0xff); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_50c8_0)(uae_u32 opcode) /* DBcc.W Dn,#.W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s16 offs = get_iword(2); - if (!cctrue(0)) { - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xffff) | (((src-1)) & 0xffff); - if (src) { - m68k_incpc((uae_s32)offs + 2); -return; - } - } -}}}m68k_incpc(4); -endlabel954: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_50d0_0)(uae_u32 opcode) /* Scc.B (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ int val = cctrue(0) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_50d8_0)(uae_u32 opcode) /* Scc.B (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ int val = cctrue(0) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_50e0_0)(uae_u32 opcode) /* Scc.B -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; - m68k_areg (regs, srcreg) = srca; -{ int val = cctrue(0) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_50e8_0)(uae_u32 opcode) /* Scc.B (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(0) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_50f0_0)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ int val = cctrue(0) ? 0xff : 0; - put_byte(srca,val); -}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_50f8_0)(uae_u32 opcode) /* Scc.B (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(0) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_50f9_0)(uae_u32 opcode) /* Scc.B (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ int val = cctrue(0) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_50fa_0)(uae_u32 opcode) /* TRAPcc.L #.W */ -{ - cpuop_begin(); -{{ uae_s16 dummy = get_iword(2); - if (cctrue(0)) { Exception(7,m68k_getpc()); goto endlabel962; } -}}m68k_incpc(4); -endlabel962: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_50fb_0)(uae_u32 opcode) /* TRAPcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 dummy = get_ilong(2); - if (cctrue(0)) { Exception(7,m68k_getpc()); goto endlabel963; } -}}m68k_incpc(6); -endlabel963: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_50fc_0)(uae_u32 opcode) /* TRAPcc.L */ -{ - cpuop_begin(); -{ if (cctrue(0)) { Exception(7,m68k_getpc()); goto endlabel964; } -}m68k_incpc(2); -endlabel964: ; - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_5100_0)(uae_u32 opcode) /* SUB.B #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5110_0)(uae_u32 opcode) /* SUB.B #,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5118_0)(uae_u32 opcode) /* SUB.B #,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5120_0)(uae_u32 opcode) /* SUB.B #,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; -{ uae_s8 dst = get_byte(dsta); - m68k_areg (regs, dstreg) = dsta; -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5128_0)(uae_u32 opcode) /* SUB.B #,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5130_0)(uae_u32 opcode) /* SUB.B #,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5138_0)(uae_u32 opcode) /* SUB.B #,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5139_0)(uae_u32 opcode) /* SUB.B #,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = get_ilong(2); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5140_0)(uae_u32 opcode) /* SUB.W #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5148_0)(uae_u32 opcode) /* SUBA.W #,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst - src; - m68k_areg(regs, dstreg) = (newv); -}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_5150_0)(uae_u32 opcode) /* SUB.W #,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5158_0)(uae_u32 opcode) /* SUB.W #,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s16 dst = get_word(dsta); - m68k_areg(regs, dstreg) += 2; -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5160_0)(uae_u32 opcode) /* SUB.W #,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; -{ uae_s16 dst = get_word(dsta); - m68k_areg (regs, dstreg) = dsta; -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5168_0)(uae_u32 opcode) /* SUB.W #,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5170_0)(uae_u32 opcode) /* SUB.W #,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5178_0)(uae_u32 opcode) /* SUB.W #,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5179_0)(uae_u32 opcode) /* SUB.W #,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = get_ilong(2); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5180_0)(uae_u32 opcode) /* SUB.L #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5188_0)(uae_u32 opcode) /* SUBA.L #,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst - src; - m68k_areg(regs, dstreg) = (newv); -}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_5190_0)(uae_u32 opcode) /* SUB.L #,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5198_0)(uae_u32 opcode) /* SUB.L #,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); - m68k_areg(regs, dstreg) += 4; -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_51a0_0)(uae_u32 opcode) /* SUB.L #,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; -{ uae_s32 dst = get_long(dsta); - m68k_areg (regs, dstreg) = dsta; -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_51a8_0)(uae_u32 opcode) /* SUB.L #,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_51b0_0)(uae_u32 opcode) /* SUB.L #,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_51b8_0)(uae_u32 opcode) /* SUB.L #,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_51b9_0)(uae_u32 opcode) /* SUB.L #,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = get_ilong(2); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_51c0_0)(uae_u32 opcode) /* Scc.B Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{{ int val = cctrue(1) ? 0xff : 0; - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xff) | ((val) & 0xff); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_51c8_0)(uae_u32 opcode) /* DBcc.W Dn,#.W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s16 offs = get_iword(2); - if (!cctrue(1)) { - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xffff) | (((src-1)) & 0xffff); - if (src) { - m68k_incpc((uae_s32)offs + 2); -return; - } - } -}}}m68k_incpc(4); -endlabel992: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_51d0_0)(uae_u32 opcode) /* Scc.B (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ int val = cctrue(1) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_51d8_0)(uae_u32 opcode) /* Scc.B (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ int val = cctrue(1) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_51e0_0)(uae_u32 opcode) /* Scc.B -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; - m68k_areg (regs, srcreg) = srca; -{ int val = cctrue(1) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_51e8_0)(uae_u32 opcode) /* Scc.B (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(1) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_51f0_0)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ int val = cctrue(1) ? 0xff : 0; - put_byte(srca,val); -}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_51f8_0)(uae_u32 opcode) /* Scc.B (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(1) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_51f9_0)(uae_u32 opcode) /* Scc.B (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ int val = cctrue(1) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_51fa_0)(uae_u32 opcode) /* TRAPcc.L #.W */ -{ - cpuop_begin(); -{{ uae_s16 dummy = get_iword(2); - if (cctrue(1)) { Exception(7,m68k_getpc()); goto endlabel1000; } -}}m68k_incpc(4); -endlabel1000: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_51fb_0)(uae_u32 opcode) /* TRAPcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 dummy = get_ilong(2); - if (cctrue(1)) { Exception(7,m68k_getpc()); goto endlabel1001; } -}}m68k_incpc(6); -endlabel1001: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_51fc_0)(uae_u32 opcode) /* TRAPcc.L */ -{ - cpuop_begin(); -{ if (cctrue(1)) { Exception(7,m68k_getpc()); goto endlabel1002; } -}m68k_incpc(2); -endlabel1002: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_52c0_0)(uae_u32 opcode) /* Scc.B Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{{ int val = cctrue(2) ? 0xff : 0; - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xff) | ((val) & 0xff); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_52c8_0)(uae_u32 opcode) /* DBcc.W Dn,#.W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s16 offs = get_iword(2); - if (!cctrue(2)) { - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xffff) | (((src-1)) & 0xffff); - if (src) { - m68k_incpc((uae_s32)offs + 2); -return; - } - } -}}}m68k_incpc(4); -endlabel1004: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_52d0_0)(uae_u32 opcode) /* Scc.B (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ int val = cctrue(2) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_52d8_0)(uae_u32 opcode) /* Scc.B (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ int val = cctrue(2) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_52e0_0)(uae_u32 opcode) /* Scc.B -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; - m68k_areg (regs, srcreg) = srca; -{ int val = cctrue(2) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_52e8_0)(uae_u32 opcode) /* Scc.B (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(2) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_52f0_0)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ int val = cctrue(2) ? 0xff : 0; - put_byte(srca,val); -}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_52f8_0)(uae_u32 opcode) /* Scc.B (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(2) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_52f9_0)(uae_u32 opcode) /* Scc.B (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ int val = cctrue(2) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_52fa_0)(uae_u32 opcode) /* TRAPcc.L #.W */ -{ - cpuop_begin(); -{{ uae_s16 dummy = get_iword(2); - if (cctrue(2)) { Exception(7,m68k_getpc()); goto endlabel1012; } -}}m68k_incpc(4); -endlabel1012: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_52fb_0)(uae_u32 opcode) /* TRAPcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 dummy = get_ilong(2); - if (cctrue(2)) { Exception(7,m68k_getpc()); goto endlabel1013; } -}}m68k_incpc(6); -endlabel1013: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_52fc_0)(uae_u32 opcode) /* TRAPcc.L */ -{ - cpuop_begin(); -{ if (cctrue(2)) { Exception(7,m68k_getpc()); goto endlabel1014; } -}m68k_incpc(2); -endlabel1014: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_53c0_0)(uae_u32 opcode) /* Scc.B Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{{ int val = cctrue(3) ? 0xff : 0; - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xff) | ((val) & 0xff); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_53c8_0)(uae_u32 opcode) /* DBcc.W Dn,#.W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s16 offs = get_iword(2); - if (!cctrue(3)) { - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xffff) | (((src-1)) & 0xffff); - if (src) { - m68k_incpc((uae_s32)offs + 2); -return; - } - } -}}}m68k_incpc(4); -endlabel1016: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_53d0_0)(uae_u32 opcode) /* Scc.B (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ int val = cctrue(3) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_53d8_0)(uae_u32 opcode) /* Scc.B (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ int val = cctrue(3) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_53e0_0)(uae_u32 opcode) /* Scc.B -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; - m68k_areg (regs, srcreg) = srca; -{ int val = cctrue(3) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_53e8_0)(uae_u32 opcode) /* Scc.B (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(3) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_53f0_0)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ int val = cctrue(3) ? 0xff : 0; - put_byte(srca,val); -}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_53f8_0)(uae_u32 opcode) /* Scc.B (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(3) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_53f9_0)(uae_u32 opcode) /* Scc.B (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ int val = cctrue(3) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_53fa_0)(uae_u32 opcode) /* TRAPcc.L #.W */ -{ - cpuop_begin(); -{{ uae_s16 dummy = get_iword(2); - if (cctrue(3)) { Exception(7,m68k_getpc()); goto endlabel1024; } -}}m68k_incpc(4); -endlabel1024: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_53fb_0)(uae_u32 opcode) /* TRAPcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 dummy = get_ilong(2); - if (cctrue(3)) { Exception(7,m68k_getpc()); goto endlabel1025; } -}}m68k_incpc(6); -endlabel1025: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_53fc_0)(uae_u32 opcode) /* TRAPcc.L */ -{ - cpuop_begin(); -{ if (cctrue(3)) { Exception(7,m68k_getpc()); goto endlabel1026; } -}m68k_incpc(2); -endlabel1026: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_54c0_0)(uae_u32 opcode) /* Scc.B Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{{ int val = cctrue(4) ? 0xff : 0; - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xff) | ((val) & 0xff); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_54c8_0)(uae_u32 opcode) /* DBcc.W Dn,#.W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s16 offs = get_iword(2); - if (!cctrue(4)) { - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xffff) | (((src-1)) & 0xffff); - if (src) { - m68k_incpc((uae_s32)offs + 2); -return; - } - } -}}}m68k_incpc(4); -endlabel1028: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_54d0_0)(uae_u32 opcode) /* Scc.B (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ int val = cctrue(4) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_54d8_0)(uae_u32 opcode) /* Scc.B (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ int val = cctrue(4) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_54e0_0)(uae_u32 opcode) /* Scc.B -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; - m68k_areg (regs, srcreg) = srca; -{ int val = cctrue(4) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_54e8_0)(uae_u32 opcode) /* Scc.B (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(4) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_54f0_0)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ int val = cctrue(4) ? 0xff : 0; - put_byte(srca,val); -}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_54f8_0)(uae_u32 opcode) /* Scc.B (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(4) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_54f9_0)(uae_u32 opcode) /* Scc.B (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ int val = cctrue(4) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_54fa_0)(uae_u32 opcode) /* TRAPcc.L #.W */ -{ - cpuop_begin(); -{{ uae_s16 dummy = get_iword(2); - if (cctrue(4)) { Exception(7,m68k_getpc()); goto endlabel1036; } -}}m68k_incpc(4); -endlabel1036: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_54fb_0)(uae_u32 opcode) /* TRAPcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 dummy = get_ilong(2); - if (cctrue(4)) { Exception(7,m68k_getpc()); goto endlabel1037; } -}}m68k_incpc(6); -endlabel1037: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_54fc_0)(uae_u32 opcode) /* TRAPcc.L */ -{ - cpuop_begin(); -{ if (cctrue(4)) { Exception(7,m68k_getpc()); goto endlabel1038; } -}m68k_incpc(2); -endlabel1038: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_55c0_0)(uae_u32 opcode) /* Scc.B Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{{ int val = cctrue(5) ? 0xff : 0; - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xff) | ((val) & 0xff); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_55c8_0)(uae_u32 opcode) /* DBcc.W Dn,#.W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s16 offs = get_iword(2); - if (!cctrue(5)) { - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xffff) | (((src-1)) & 0xffff); - if (src) { - m68k_incpc((uae_s32)offs + 2); -return; - } - } -}}}m68k_incpc(4); -endlabel1040: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_55d0_0)(uae_u32 opcode) /* Scc.B (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ int val = cctrue(5) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_55d8_0)(uae_u32 opcode) /* Scc.B (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ int val = cctrue(5) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_55e0_0)(uae_u32 opcode) /* Scc.B -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; - m68k_areg (regs, srcreg) = srca; -{ int val = cctrue(5) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_55e8_0)(uae_u32 opcode) /* Scc.B (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(5) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_55f0_0)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ int val = cctrue(5) ? 0xff : 0; - put_byte(srca,val); -}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_55f8_0)(uae_u32 opcode) /* Scc.B (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(5) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_55f9_0)(uae_u32 opcode) /* Scc.B (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ int val = cctrue(5) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_55fa_0)(uae_u32 opcode) /* TRAPcc.L #.W */ -{ - cpuop_begin(); -{{ uae_s16 dummy = get_iword(2); - if (cctrue(5)) { Exception(7,m68k_getpc()); goto endlabel1048; } -}}m68k_incpc(4); -endlabel1048: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_55fb_0)(uae_u32 opcode) /* TRAPcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 dummy = get_ilong(2); - if (cctrue(5)) { Exception(7,m68k_getpc()); goto endlabel1049; } -}}m68k_incpc(6); -endlabel1049: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_55fc_0)(uae_u32 opcode) /* TRAPcc.L */ -{ - cpuop_begin(); -{ if (cctrue(5)) { Exception(7,m68k_getpc()); goto endlabel1050; } -}m68k_incpc(2); -endlabel1050: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_56c0_0)(uae_u32 opcode) /* Scc.B Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{{ int val = cctrue(6) ? 0xff : 0; - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xff) | ((val) & 0xff); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_56c8_0)(uae_u32 opcode) /* DBcc.W Dn,#.W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s16 offs = get_iword(2); - if (!cctrue(6)) { - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xffff) | (((src-1)) & 0xffff); - if (src) { - m68k_incpc((uae_s32)offs + 2); -return; - } - } -}}}m68k_incpc(4); -endlabel1052: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_56d0_0)(uae_u32 opcode) /* Scc.B (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ int val = cctrue(6) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_56d8_0)(uae_u32 opcode) /* Scc.B (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ int val = cctrue(6) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_56e0_0)(uae_u32 opcode) /* Scc.B -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; - m68k_areg (regs, srcreg) = srca; -{ int val = cctrue(6) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_56e8_0)(uae_u32 opcode) /* Scc.B (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(6) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_56f0_0)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ int val = cctrue(6) ? 0xff : 0; - put_byte(srca,val); -}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_56f8_0)(uae_u32 opcode) /* Scc.B (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(6) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_56f9_0)(uae_u32 opcode) /* Scc.B (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ int val = cctrue(6) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_56fa_0)(uae_u32 opcode) /* TRAPcc.L #.W */ -{ - cpuop_begin(); -{{ uae_s16 dummy = get_iword(2); - if (cctrue(6)) { Exception(7,m68k_getpc()); goto endlabel1060; } -}}m68k_incpc(4); -endlabel1060: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_56fb_0)(uae_u32 opcode) /* TRAPcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 dummy = get_ilong(2); - if (cctrue(6)) { Exception(7,m68k_getpc()); goto endlabel1061; } -}}m68k_incpc(6); -endlabel1061: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_56fc_0)(uae_u32 opcode) /* TRAPcc.L */ -{ - cpuop_begin(); -{ if (cctrue(6)) { Exception(7,m68k_getpc()); goto endlabel1062; } -}m68k_incpc(2); -endlabel1062: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_57c0_0)(uae_u32 opcode) /* Scc.B Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{{ int val = cctrue(7) ? 0xff : 0; - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xff) | ((val) & 0xff); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_57c8_0)(uae_u32 opcode) /* DBcc.W Dn,#.W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s16 offs = get_iword(2); - if (!cctrue(7)) { - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xffff) | (((src-1)) & 0xffff); - if (src) { - m68k_incpc((uae_s32)offs + 2); -return; - } - } -}}}m68k_incpc(4); -endlabel1064: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_57d0_0)(uae_u32 opcode) /* Scc.B (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ int val = cctrue(7) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_57d8_0)(uae_u32 opcode) /* Scc.B (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ int val = cctrue(7) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_57e0_0)(uae_u32 opcode) /* Scc.B -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; - m68k_areg (regs, srcreg) = srca; -{ int val = cctrue(7) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_57e8_0)(uae_u32 opcode) /* Scc.B (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(7) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_57f0_0)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ int val = cctrue(7) ? 0xff : 0; - put_byte(srca,val); -}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_57f8_0)(uae_u32 opcode) /* Scc.B (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(7) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_57f9_0)(uae_u32 opcode) /* Scc.B (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ int val = cctrue(7) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_57fa_0)(uae_u32 opcode) /* TRAPcc.L #.W */ -{ - cpuop_begin(); -{{ uae_s16 dummy = get_iword(2); - if (cctrue(7)) { Exception(7,m68k_getpc()); goto endlabel1072; } -}}m68k_incpc(4); -endlabel1072: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_57fb_0)(uae_u32 opcode) /* TRAPcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 dummy = get_ilong(2); - if (cctrue(7)) { Exception(7,m68k_getpc()); goto endlabel1073; } -}}m68k_incpc(6); -endlabel1073: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_57fc_0)(uae_u32 opcode) /* TRAPcc.L */ -{ - cpuop_begin(); -{ if (cctrue(7)) { Exception(7,m68k_getpc()); goto endlabel1074; } -}m68k_incpc(2); -endlabel1074: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_58c0_0)(uae_u32 opcode) /* Scc.B Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{{ int val = cctrue(8) ? 0xff : 0; - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xff) | ((val) & 0xff); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_58c8_0)(uae_u32 opcode) /* DBcc.W Dn,#.W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s16 offs = get_iword(2); - if (!cctrue(8)) { - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xffff) | (((src-1)) & 0xffff); - if (src) { - m68k_incpc((uae_s32)offs + 2); -return; - } - } -}}}m68k_incpc(4); -endlabel1076: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_58d0_0)(uae_u32 opcode) /* Scc.B (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ int val = cctrue(8) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_58d8_0)(uae_u32 opcode) /* Scc.B (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ int val = cctrue(8) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_58e0_0)(uae_u32 opcode) /* Scc.B -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; - m68k_areg (regs, srcreg) = srca; -{ int val = cctrue(8) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_58e8_0)(uae_u32 opcode) /* Scc.B (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(8) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_58f0_0)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ int val = cctrue(8) ? 0xff : 0; - put_byte(srca,val); -}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_58f8_0)(uae_u32 opcode) /* Scc.B (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(8) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_58f9_0)(uae_u32 opcode) /* Scc.B (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ int val = cctrue(8) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_58fa_0)(uae_u32 opcode) /* TRAPcc.L #.W */ -{ - cpuop_begin(); -{{ uae_s16 dummy = get_iword(2); - if (cctrue(8)) { Exception(7,m68k_getpc()); goto endlabel1084; } -}}m68k_incpc(4); -endlabel1084: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_58fb_0)(uae_u32 opcode) /* TRAPcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 dummy = get_ilong(2); - if (cctrue(8)) { Exception(7,m68k_getpc()); goto endlabel1085; } -}}m68k_incpc(6); -endlabel1085: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_58fc_0)(uae_u32 opcode) /* TRAPcc.L */ -{ - cpuop_begin(); -{ if (cctrue(8)) { Exception(7,m68k_getpc()); goto endlabel1086; } -}m68k_incpc(2); -endlabel1086: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_59c0_0)(uae_u32 opcode) /* Scc.B Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{{ int val = cctrue(9) ? 0xff : 0; - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xff) | ((val) & 0xff); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_59c8_0)(uae_u32 opcode) /* DBcc.W Dn,#.W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s16 offs = get_iword(2); - if (!cctrue(9)) { - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xffff) | (((src-1)) & 0xffff); - if (src) { - m68k_incpc((uae_s32)offs + 2); -return; - } - } -}}}m68k_incpc(4); -endlabel1088: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_59d0_0)(uae_u32 opcode) /* Scc.B (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ int val = cctrue(9) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_59d8_0)(uae_u32 opcode) /* Scc.B (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ int val = cctrue(9) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_59e0_0)(uae_u32 opcode) /* Scc.B -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; - m68k_areg (regs, srcreg) = srca; -{ int val = cctrue(9) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_59e8_0)(uae_u32 opcode) /* Scc.B (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(9) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_59f0_0)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ int val = cctrue(9) ? 0xff : 0; - put_byte(srca,val); -}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_59f8_0)(uae_u32 opcode) /* Scc.B (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(9) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_59f9_0)(uae_u32 opcode) /* Scc.B (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ int val = cctrue(9) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_59fa_0)(uae_u32 opcode) /* TRAPcc.L #.W */ -{ - cpuop_begin(); -{{ uae_s16 dummy = get_iword(2); - if (cctrue(9)) { Exception(7,m68k_getpc()); goto endlabel1096; } -}}m68k_incpc(4); -endlabel1096: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_59fb_0)(uae_u32 opcode) /* TRAPcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 dummy = get_ilong(2); - if (cctrue(9)) { Exception(7,m68k_getpc()); goto endlabel1097; } -}}m68k_incpc(6); -endlabel1097: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_59fc_0)(uae_u32 opcode) /* TRAPcc.L */ -{ - cpuop_begin(); -{ if (cctrue(9)) { Exception(7,m68k_getpc()); goto endlabel1098; } -}m68k_incpc(2); -endlabel1098: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5ac0_0)(uae_u32 opcode) /* Scc.B Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{{ int val = cctrue(10) ? 0xff : 0; - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xff) | ((val) & 0xff); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5ac8_0)(uae_u32 opcode) /* DBcc.W Dn,#.W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s16 offs = get_iword(2); - if (!cctrue(10)) { - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xffff) | (((src-1)) & 0xffff); - if (src) { - m68k_incpc((uae_s32)offs + 2); -return; - } - } -}}}m68k_incpc(4); -endlabel1100: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5ad0_0)(uae_u32 opcode) /* Scc.B (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ int val = cctrue(10) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5ad8_0)(uae_u32 opcode) /* Scc.B (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ int val = cctrue(10) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5ae0_0)(uae_u32 opcode) /* Scc.B -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; - m68k_areg (regs, srcreg) = srca; -{ int val = cctrue(10) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5ae8_0)(uae_u32 opcode) /* Scc.B (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(10) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5af0_0)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ int val = cctrue(10) ? 0xff : 0; - put_byte(srca,val); -}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5af8_0)(uae_u32 opcode) /* Scc.B (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(10) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5af9_0)(uae_u32 opcode) /* Scc.B (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ int val = cctrue(10) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5afa_0)(uae_u32 opcode) /* TRAPcc.L #.W */ -{ - cpuop_begin(); -{{ uae_s16 dummy = get_iword(2); - if (cctrue(10)) { Exception(7,m68k_getpc()); goto endlabel1108; } -}}m68k_incpc(4); -endlabel1108: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5afb_0)(uae_u32 opcode) /* TRAPcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 dummy = get_ilong(2); - if (cctrue(10)) { Exception(7,m68k_getpc()); goto endlabel1109; } -}}m68k_incpc(6); -endlabel1109: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5afc_0)(uae_u32 opcode) /* TRAPcc.L */ -{ - cpuop_begin(); -{ if (cctrue(10)) { Exception(7,m68k_getpc()); goto endlabel1110; } -}m68k_incpc(2); -endlabel1110: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5bc0_0)(uae_u32 opcode) /* Scc.B Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{{ int val = cctrue(11) ? 0xff : 0; - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xff) | ((val) & 0xff); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5bc8_0)(uae_u32 opcode) /* DBcc.W Dn,#.W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s16 offs = get_iword(2); - if (!cctrue(11)) { - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xffff) | (((src-1)) & 0xffff); - if (src) { - m68k_incpc((uae_s32)offs + 2); -return; - } - } -}}}m68k_incpc(4); -endlabel1112: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5bd0_0)(uae_u32 opcode) /* Scc.B (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ int val = cctrue(11) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5bd8_0)(uae_u32 opcode) /* Scc.B (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ int val = cctrue(11) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5be0_0)(uae_u32 opcode) /* Scc.B -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; - m68k_areg (regs, srcreg) = srca; -{ int val = cctrue(11) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5be8_0)(uae_u32 opcode) /* Scc.B (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(11) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5bf0_0)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ int val = cctrue(11) ? 0xff : 0; - put_byte(srca,val); -}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5bf8_0)(uae_u32 opcode) /* Scc.B (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(11) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5bf9_0)(uae_u32 opcode) /* Scc.B (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ int val = cctrue(11) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5bfa_0)(uae_u32 opcode) /* TRAPcc.L #.W */ -{ - cpuop_begin(); -{{ uae_s16 dummy = get_iword(2); - if (cctrue(11)) { Exception(7,m68k_getpc()); goto endlabel1120; } -}}m68k_incpc(4); -endlabel1120: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5bfb_0)(uae_u32 opcode) /* TRAPcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 dummy = get_ilong(2); - if (cctrue(11)) { Exception(7,m68k_getpc()); goto endlabel1121; } -}}m68k_incpc(6); -endlabel1121: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5bfc_0)(uae_u32 opcode) /* TRAPcc.L */ -{ - cpuop_begin(); -{ if (cctrue(11)) { Exception(7,m68k_getpc()); goto endlabel1122; } -}m68k_incpc(2); -endlabel1122: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5cc0_0)(uae_u32 opcode) /* Scc.B Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{{ int val = cctrue(12) ? 0xff : 0; - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xff) | ((val) & 0xff); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5cc8_0)(uae_u32 opcode) /* DBcc.W Dn,#.W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s16 offs = get_iword(2); - if (!cctrue(12)) { - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xffff) | (((src-1)) & 0xffff); - if (src) { - m68k_incpc((uae_s32)offs + 2); -return; - } - } -}}}m68k_incpc(4); -endlabel1124: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5cd0_0)(uae_u32 opcode) /* Scc.B (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ int val = cctrue(12) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5cd8_0)(uae_u32 opcode) /* Scc.B (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ int val = cctrue(12) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5ce0_0)(uae_u32 opcode) /* Scc.B -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; - m68k_areg (regs, srcreg) = srca; -{ int val = cctrue(12) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5ce8_0)(uae_u32 opcode) /* Scc.B (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(12) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5cf0_0)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ int val = cctrue(12) ? 0xff : 0; - put_byte(srca,val); -}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5cf8_0)(uae_u32 opcode) /* Scc.B (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(12) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5cf9_0)(uae_u32 opcode) /* Scc.B (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ int val = cctrue(12) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5cfa_0)(uae_u32 opcode) /* TRAPcc.L #.W */ -{ - cpuop_begin(); -{{ uae_s16 dummy = get_iword(2); - if (cctrue(12)) { Exception(7,m68k_getpc()); goto endlabel1132; } -}}m68k_incpc(4); -endlabel1132: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5cfb_0)(uae_u32 opcode) /* TRAPcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 dummy = get_ilong(2); - if (cctrue(12)) { Exception(7,m68k_getpc()); goto endlabel1133; } -}}m68k_incpc(6); -endlabel1133: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5cfc_0)(uae_u32 opcode) /* TRAPcc.L */ -{ - cpuop_begin(); -{ if (cctrue(12)) { Exception(7,m68k_getpc()); goto endlabel1134; } -}m68k_incpc(2); -endlabel1134: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5dc0_0)(uae_u32 opcode) /* Scc.B Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{{ int val = cctrue(13) ? 0xff : 0; - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xff) | ((val) & 0xff); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5dc8_0)(uae_u32 opcode) /* DBcc.W Dn,#.W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s16 offs = get_iword(2); - if (!cctrue(13)) { - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xffff) | (((src-1)) & 0xffff); - if (src) { - m68k_incpc((uae_s32)offs + 2); -return; - } - } -}}}m68k_incpc(4); -endlabel1136: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5dd0_0)(uae_u32 opcode) /* Scc.B (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ int val = cctrue(13) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5dd8_0)(uae_u32 opcode) /* Scc.B (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ int val = cctrue(13) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5de0_0)(uae_u32 opcode) /* Scc.B -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; - m68k_areg (regs, srcreg) = srca; -{ int val = cctrue(13) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5de8_0)(uae_u32 opcode) /* Scc.B (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(13) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5df0_0)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ int val = cctrue(13) ? 0xff : 0; - put_byte(srca,val); -}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5df8_0)(uae_u32 opcode) /* Scc.B (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(13) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5df9_0)(uae_u32 opcode) /* Scc.B (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ int val = cctrue(13) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5dfa_0)(uae_u32 opcode) /* TRAPcc.L #.W */ -{ - cpuop_begin(); -{{ uae_s16 dummy = get_iword(2); - if (cctrue(13)) { Exception(7,m68k_getpc()); goto endlabel1144; } -}}m68k_incpc(4); -endlabel1144: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5dfb_0)(uae_u32 opcode) /* TRAPcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 dummy = get_ilong(2); - if (cctrue(13)) { Exception(7,m68k_getpc()); goto endlabel1145; } -}}m68k_incpc(6); -endlabel1145: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5dfc_0)(uae_u32 opcode) /* TRAPcc.L */ -{ - cpuop_begin(); -{ if (cctrue(13)) { Exception(7,m68k_getpc()); goto endlabel1146; } -}m68k_incpc(2); -endlabel1146: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5ec0_0)(uae_u32 opcode) /* Scc.B Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{{ int val = cctrue(14) ? 0xff : 0; - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xff) | ((val) & 0xff); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5ec8_0)(uae_u32 opcode) /* DBcc.W Dn,#.W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s16 offs = get_iword(2); - if (!cctrue(14)) { - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xffff) | (((src-1)) & 0xffff); - if (src) { - m68k_incpc((uae_s32)offs + 2); -return; - } - } -}}}m68k_incpc(4); -endlabel1148: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5ed0_0)(uae_u32 opcode) /* Scc.B (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ int val = cctrue(14) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5ed8_0)(uae_u32 opcode) /* Scc.B (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ int val = cctrue(14) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5ee0_0)(uae_u32 opcode) /* Scc.B -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; - m68k_areg (regs, srcreg) = srca; -{ int val = cctrue(14) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5ee8_0)(uae_u32 opcode) /* Scc.B (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(14) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5ef0_0)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ int val = cctrue(14) ? 0xff : 0; - put_byte(srca,val); -}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5ef8_0)(uae_u32 opcode) /* Scc.B (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(14) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5ef9_0)(uae_u32 opcode) /* Scc.B (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ int val = cctrue(14) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5efa_0)(uae_u32 opcode) /* TRAPcc.L #.W */ -{ - cpuop_begin(); -{{ uae_s16 dummy = get_iword(2); - if (cctrue(14)) { Exception(7,m68k_getpc()); goto endlabel1156; } -}}m68k_incpc(4); -endlabel1156: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5efb_0)(uae_u32 opcode) /* TRAPcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 dummy = get_ilong(2); - if (cctrue(14)) { Exception(7,m68k_getpc()); goto endlabel1157; } -}}m68k_incpc(6); -endlabel1157: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5efc_0)(uae_u32 opcode) /* TRAPcc.L */ -{ - cpuop_begin(); -{ if (cctrue(14)) { Exception(7,m68k_getpc()); goto endlabel1158; } -}m68k_incpc(2); -endlabel1158: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5fc0_0)(uae_u32 opcode) /* Scc.B Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{{ int val = cctrue(15) ? 0xff : 0; - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xff) | ((val) & 0xff); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5fc8_0)(uae_u32 opcode) /* DBcc.W Dn,#.W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s16 offs = get_iword(2); - if (!cctrue(15)) { - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xffff) | (((src-1)) & 0xffff); - if (src) { - m68k_incpc((uae_s32)offs + 2); -return; - } - } -}}}m68k_incpc(4); -endlabel1160: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5fd0_0)(uae_u32 opcode) /* Scc.B (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ int val = cctrue(15) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5fd8_0)(uae_u32 opcode) /* Scc.B (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ int val = cctrue(15) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5fe0_0)(uae_u32 opcode) /* Scc.B -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; - m68k_areg (regs, srcreg) = srca; -{ int val = cctrue(15) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5fe8_0)(uae_u32 opcode) /* Scc.B (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(15) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5ff0_0)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ int val = cctrue(15) ? 0xff : 0; - put_byte(srca,val); -}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5ff8_0)(uae_u32 opcode) /* Scc.B (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ int val = cctrue(15) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5ff9_0)(uae_u32 opcode) /* Scc.B (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ int val = cctrue(15) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#endif - -#ifdef PART_6 -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5ffa_0)(uae_u32 opcode) /* TRAPcc.L #.W */ -{ - cpuop_begin(); -{{ uae_s16 dummy = get_iword(2); - if (cctrue(15)) { Exception(7,m68k_getpc()); goto endlabel1168; } -}}m68k_incpc(4); -endlabel1168: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5ffb_0)(uae_u32 opcode) /* TRAPcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 dummy = get_ilong(2); - if (cctrue(15)) { Exception(7,m68k_getpc()); goto endlabel1169; } -}}m68k_incpc(6); -endlabel1169: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5ffc_0)(uae_u32 opcode) /* TRAPcc.L */ -{ - cpuop_begin(); -{ if (cctrue(15)) { Exception(7,m68k_getpc()); goto endlabel1170; } -}m68k_incpc(2); -endlabel1170: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6000_0)(uae_u32 opcode) /* Bcc.W #.W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); - if (!cctrue(0)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(4); -endlabel1171: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6001_0)(uae_u32 opcode) /* Bcc.B # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = (uae_s32)(uae_s8)((opcode >> 8) & 255); -#else - uae_u32 srcreg = (uae_s32)(uae_s8)(opcode & 255); -#endif -{{ uae_u32 src = srcreg; - if (!cctrue(0)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(2); -endlabel1172: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_60ff_0)(uae_u32 opcode) /* Bcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); - if (!cctrue(0)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(6); -endlabel1173: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6100_0)(uae_u32 opcode) /* BSR.W #.W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); - uae_s32 s = (uae_s32)src + 2; - m68k_do_bsr(m68k_getpc() + 4, s); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6101_0)(uae_u32 opcode) /* BSR.B # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = (uae_s32)(uae_s8)((opcode >> 8) & 255); -#else - uae_u32 srcreg = (uae_s32)(uae_s8)(opcode & 255); -#endif -{{ uae_u32 src = srcreg; - uae_s32 s = (uae_s32)src + 2; - m68k_do_bsr(m68k_getpc() + 2, s); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_61ff_0)(uae_u32 opcode) /* BSR.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); - uae_s32 s = (uae_s32)src + 2; - m68k_do_bsr(m68k_getpc() + 6, s); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6200_0)(uae_u32 opcode) /* Bcc.W #.W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); - if (!cctrue(2)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(4); -endlabel1177: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6201_0)(uae_u32 opcode) /* Bcc.B # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = (uae_s32)(uae_s8)((opcode >> 8) & 255); -#else - uae_u32 srcreg = (uae_s32)(uae_s8)(opcode & 255); -#endif -{{ uae_u32 src = srcreg; - if (!cctrue(2)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(2); -endlabel1178: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_62ff_0)(uae_u32 opcode) /* Bcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); - if (!cctrue(2)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(6); -endlabel1179: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6300_0)(uae_u32 opcode) /* Bcc.W #.W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); - if (!cctrue(3)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(4); -endlabel1180: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6301_0)(uae_u32 opcode) /* Bcc.B # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = (uae_s32)(uae_s8)((opcode >> 8) & 255); -#else - uae_u32 srcreg = (uae_s32)(uae_s8)(opcode & 255); -#endif -{{ uae_u32 src = srcreg; - if (!cctrue(3)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(2); -endlabel1181: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_63ff_0)(uae_u32 opcode) /* Bcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); - if (!cctrue(3)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(6); -endlabel1182: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6400_0)(uae_u32 opcode) /* Bcc.W #.W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); - if (!cctrue(4)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(4); -endlabel1183: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6401_0)(uae_u32 opcode) /* Bcc.B # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = (uae_s32)(uae_s8)((opcode >> 8) & 255); -#else - uae_u32 srcreg = (uae_s32)(uae_s8)(opcode & 255); -#endif -{{ uae_u32 src = srcreg; - if (!cctrue(4)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(2); -endlabel1184: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_64ff_0)(uae_u32 opcode) /* Bcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); - if (!cctrue(4)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(6); -endlabel1185: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6500_0)(uae_u32 opcode) /* Bcc.W #.W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); - if (!cctrue(5)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(4); -endlabel1186: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6501_0)(uae_u32 opcode) /* Bcc.B # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = (uae_s32)(uae_s8)((opcode >> 8) & 255); -#else - uae_u32 srcreg = (uae_s32)(uae_s8)(opcode & 255); -#endif -{{ uae_u32 src = srcreg; - if (!cctrue(5)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(2); -endlabel1187: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_65ff_0)(uae_u32 opcode) /* Bcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); - if (!cctrue(5)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(6); -endlabel1188: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6600_0)(uae_u32 opcode) /* Bcc.W #.W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); - if (!cctrue(6)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(4); -endlabel1189: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6601_0)(uae_u32 opcode) /* Bcc.B # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = (uae_s32)(uae_s8)((opcode >> 8) & 255); -#else - uae_u32 srcreg = (uae_s32)(uae_s8)(opcode & 255); -#endif -{{ uae_u32 src = srcreg; - if (!cctrue(6)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(2); -endlabel1190: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_66ff_0)(uae_u32 opcode) /* Bcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); - if (!cctrue(6)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(6); -endlabel1191: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6700_0)(uae_u32 opcode) /* Bcc.W #.W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); - if (!cctrue(7)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(4); -endlabel1192: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6701_0)(uae_u32 opcode) /* Bcc.B # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = (uae_s32)(uae_s8)((opcode >> 8) & 255); -#else - uae_u32 srcreg = (uae_s32)(uae_s8)(opcode & 255); -#endif -{{ uae_u32 src = srcreg; - if (!cctrue(7)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(2); -endlabel1193: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_67ff_0)(uae_u32 opcode) /* Bcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); - if (!cctrue(7)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(6); -endlabel1194: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6800_0)(uae_u32 opcode) /* Bcc.W #.W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); - if (!cctrue(8)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(4); -endlabel1195: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6801_0)(uae_u32 opcode) /* Bcc.B # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = (uae_s32)(uae_s8)((opcode >> 8) & 255); -#else - uae_u32 srcreg = (uae_s32)(uae_s8)(opcode & 255); -#endif -{{ uae_u32 src = srcreg; - if (!cctrue(8)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(2); -endlabel1196: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_68ff_0)(uae_u32 opcode) /* Bcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); - if (!cctrue(8)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(6); -endlabel1197: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6900_0)(uae_u32 opcode) /* Bcc.W #.W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); - if (!cctrue(9)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(4); -endlabel1198: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6901_0)(uae_u32 opcode) /* Bcc.B # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = (uae_s32)(uae_s8)((opcode >> 8) & 255); -#else - uae_u32 srcreg = (uae_s32)(uae_s8)(opcode & 255); -#endif -{{ uae_u32 src = srcreg; - if (!cctrue(9)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(2); -endlabel1199: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_69ff_0)(uae_u32 opcode) /* Bcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); - if (!cctrue(9)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(6); -endlabel1200: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6a00_0)(uae_u32 opcode) /* Bcc.W #.W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); - if (!cctrue(10)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(4); -endlabel1201: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6a01_0)(uae_u32 opcode) /* Bcc.B # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = (uae_s32)(uae_s8)((opcode >> 8) & 255); -#else - uae_u32 srcreg = (uae_s32)(uae_s8)(opcode & 255); -#endif -{{ uae_u32 src = srcreg; - if (!cctrue(10)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(2); -endlabel1202: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6aff_0)(uae_u32 opcode) /* Bcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); - if (!cctrue(10)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(6); -endlabel1203: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6b00_0)(uae_u32 opcode) /* Bcc.W #.W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); - if (!cctrue(11)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(4); -endlabel1204: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6b01_0)(uae_u32 opcode) /* Bcc.B # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = (uae_s32)(uae_s8)((opcode >> 8) & 255); -#else - uae_u32 srcreg = (uae_s32)(uae_s8)(opcode & 255); -#endif -{{ uae_u32 src = srcreg; - if (!cctrue(11)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(2); -endlabel1205: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6bff_0)(uae_u32 opcode) /* Bcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); - if (!cctrue(11)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(6); -endlabel1206: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6c00_0)(uae_u32 opcode) /* Bcc.W #.W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); - if (!cctrue(12)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(4); -endlabel1207: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6c01_0)(uae_u32 opcode) /* Bcc.B # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = (uae_s32)(uae_s8)((opcode >> 8) & 255); -#else - uae_u32 srcreg = (uae_s32)(uae_s8)(opcode & 255); -#endif -{{ uae_u32 src = srcreg; - if (!cctrue(12)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(2); -endlabel1208: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6cff_0)(uae_u32 opcode) /* Bcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); - if (!cctrue(12)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(6); -endlabel1209: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6d00_0)(uae_u32 opcode) /* Bcc.W #.W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); - if (!cctrue(13)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(4); -endlabel1210: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6d01_0)(uae_u32 opcode) /* Bcc.B # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = (uae_s32)(uae_s8)((opcode >> 8) & 255); -#else - uae_u32 srcreg = (uae_s32)(uae_s8)(opcode & 255); -#endif -{{ uae_u32 src = srcreg; - if (!cctrue(13)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(2); -endlabel1211: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6dff_0)(uae_u32 opcode) /* Bcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); - if (!cctrue(13)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(6); -endlabel1212: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6e00_0)(uae_u32 opcode) /* Bcc.W #.W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); - if (!cctrue(14)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(4); -endlabel1213: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6e01_0)(uae_u32 opcode) /* Bcc.B # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = (uae_s32)(uae_s8)((opcode >> 8) & 255); -#else - uae_u32 srcreg = (uae_s32)(uae_s8)(opcode & 255); -#endif -{{ uae_u32 src = srcreg; - if (!cctrue(14)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(2); -endlabel1214: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6eff_0)(uae_u32 opcode) /* Bcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); - if (!cctrue(14)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(6); -endlabel1215: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6f00_0)(uae_u32 opcode) /* Bcc.W #.W */ -{ - cpuop_begin(); -{{ uae_s16 src = get_iword(2); - if (!cctrue(15)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(4); -endlabel1216: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6f01_0)(uae_u32 opcode) /* Bcc.B # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = (uae_s32)(uae_s8)((opcode >> 8) & 255); -#else - uae_u32 srcreg = (uae_s32)(uae_s8)(opcode & 255); -#endif -{{ uae_u32 src = srcreg; - if (!cctrue(15)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(2); -endlabel1217: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6fff_0)(uae_u32 opcode) /* Bcc.L #.L */ -{ - cpuop_begin(); -{{ uae_s32 src = get_ilong(2); - if (!cctrue(15)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(6); -endlabel1218: ; - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_7000_0)(uae_u32 opcode) /* MOVE.L #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = (uae_s32)(uae_s8)((opcode >> 8) & 255); -#else - uae_u32 srcreg = (uae_s32)(uae_s8)(opcode & 255); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_u32 src = srcreg; -{ CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}m68k_incpc(2); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_7100_0)(uae_u32 opcode) /* EMULOP_RETURN.L */ -{ - cpuop_begin(); -{ m68k_emulop_return(); -} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_7101_0)(uae_u32 opcode) /* EMULOP.L # */ -{ - cpuop_begin(); -{ -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - m68k_emulop(opcode); -}m68k_incpc(2); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_8000_0)(uae_u32 opcode) /* OR.B Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uae_s8 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8010_0)(uae_u32 opcode) /* OR.B (An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8018_0)(uae_u32 opcode) /* OR.B (An)+,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ uae_s8 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8020_0)(uae_u32 opcode) /* OR.B -(An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; -{ uae_s8 src = get_byte(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_s8 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8028_0)(uae_u32 opcode) /* OR.B (d16,An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8030_0)(uae_u32 opcode) /* OR.B (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8038_0)(uae_u32 opcode) /* OR.B (xxx).W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8039_0)(uae_u32 opcode) /* OR.B (xxx).L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_803a_0)(uae_u32 opcode) /* OR.B (d16,PC),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_803b_0)(uae_u32 opcode) /* OR.B (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_803c_0)(uae_u32 opcode) /* OR.B #.B,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uae_s8 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8040_0)(uae_u32 opcode) /* OR.W Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8050_0)(uae_u32 opcode) /* OR.W (An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8058_0)(uae_u32 opcode) /* OR.W (An)+,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, srcreg) += 2; -{ uae_s16 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8060_0)(uae_u32 opcode) /* OR.W -(An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_s16 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8068_0)(uae_u32 opcode) /* OR.W (d16,An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8070_0)(uae_u32 opcode) /* OR.W (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8078_0)(uae_u32 opcode) /* OR.W (xxx).W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8079_0)(uae_u32 opcode) /* OR.W (xxx).L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_807a_0)(uae_u32 opcode) /* OR.W (d16,PC),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_807b_0)(uae_u32 opcode) /* OR.W (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_807c_0)(uae_u32 opcode) /* OR.W #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8080_0)(uae_u32 opcode) /* OR.L Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8090_0)(uae_u32 opcode) /* OR.L (An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8098_0)(uae_u32 opcode) /* OR.L (An)+,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); - m68k_areg(regs, srcreg) += 4; -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_80a0_0)(uae_u32 opcode) /* OR.L -(An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 4; -{ uae_s32 src = get_long(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_80a8_0)(uae_u32 opcode) /* OR.L (d16,An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_80b0_0)(uae_u32 opcode) /* OR.L (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_80b8_0)(uae_u32 opcode) /* OR.L (xxx).W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_80b9_0)(uae_u32 opcode) /* OR.L (xxx).L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_80ba_0)(uae_u32 opcode) /* OR.L (d16,PC),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_80bb_0)(uae_u32 opcode) /* OR.L (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_80bc_0)(uae_u32 opcode) /* OR.L #.L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_80c0_0)(uae_u32 opcode) /* DIVU.W Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -m68k_incpc(2); - if (src == 0) { SET_VFLG (0); Exception (5, oldpc); goto endlabel1255; } else { - uae_u32 newv = (uae_u32)dst / (uae_u32)(uae_u16)src; - uae_u32 rem = (uae_u32)dst % (uae_u32)(uae_u16)src; - if (newv > 0xffff) { SET_VFLG (1); SET_NFLG (1); SET_CFLG (0); } else - { - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_NFLG (((uae_s16)(newv)) < 0); - newv = (newv & 0xffff) | ((uae_u32)rem << 16); - m68k_dreg(regs, dstreg) = (newv); - } - } -}}}endlabel1255: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_80d0_0)(uae_u32 opcode) /* DIVU.W (An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -m68k_incpc(2); - if (src == 0) { SET_VFLG (0); Exception (5, oldpc); goto endlabel1256; } else { - uae_u32 newv = (uae_u32)dst / (uae_u32)(uae_u16)src; - uae_u32 rem = (uae_u32)dst % (uae_u32)(uae_u16)src; - if (newv > 0xffff) { SET_VFLG (1); SET_NFLG (1); SET_CFLG (0); } else - { - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_NFLG (((uae_s16)(newv)) < 0); - newv = (newv & 0xffff) | ((uae_u32)rem << 16); - m68k_dreg(regs, dstreg) = (newv); - } - } -}}}}endlabel1256: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_80d8_0)(uae_u32 opcode) /* DIVU.W (An)+,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, srcreg) += 2; -{ uae_s32 dst = m68k_dreg(regs, dstreg); -m68k_incpc(2); - if (src == 0) { SET_VFLG (0); Exception (5, oldpc); goto endlabel1257; } else { - uae_u32 newv = (uae_u32)dst / (uae_u32)(uae_u16)src; - uae_u32 rem = (uae_u32)dst % (uae_u32)(uae_u16)src; - if (newv > 0xffff) { SET_VFLG (1); SET_NFLG (1); SET_CFLG (0); } else - { - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_NFLG (((uae_s16)(newv)) < 0); - newv = (newv & 0xffff) | ((uae_u32)rem << 16); - m68k_dreg(regs, dstreg) = (newv); - } - } -}}}}endlabel1257: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_80e0_0)(uae_u32 opcode) /* DIVU.W -(An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_s32 dst = m68k_dreg(regs, dstreg); -m68k_incpc(2); - if (src == 0) { SET_VFLG (0); Exception (5, oldpc); goto endlabel1258; } else { - uae_u32 newv = (uae_u32)dst / (uae_u32)(uae_u16)src; - uae_u32 rem = (uae_u32)dst % (uae_u32)(uae_u16)src; - if (newv > 0xffff) { SET_VFLG (1); SET_NFLG (1); SET_CFLG (0); } else - { - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_NFLG (((uae_s16)(newv)) < 0); - newv = (newv & 0xffff) | ((uae_u32)rem << 16); - m68k_dreg(regs, dstreg) = (newv); - } - } -}}}}endlabel1258: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_80e8_0)(uae_u32 opcode) /* DIVU.W (d16,An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -m68k_incpc(4); - if (src == 0) { SET_VFLG (0); Exception (5, oldpc); goto endlabel1259; } else { - uae_u32 newv = (uae_u32)dst / (uae_u32)(uae_u16)src; - uae_u32 rem = (uae_u32)dst % (uae_u32)(uae_u16)src; - if (newv > 0xffff) { SET_VFLG (1); SET_NFLG (1); SET_CFLG (0); } else - { - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_NFLG (((uae_s16)(newv)) < 0); - newv = (newv & 0xffff) | ((uae_u32)rem << 16); - m68k_dreg(regs, dstreg) = (newv); - } - } -}}}}endlabel1259: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_80f0_0)(uae_u32 opcode) /* DIVU.W (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - if (src == 0) { SET_VFLG (0); Exception (5, oldpc); goto endlabel1260; } else { - uae_u32 newv = (uae_u32)dst / (uae_u32)(uae_u16)src; - uae_u32 rem = (uae_u32)dst % (uae_u32)(uae_u16)src; - if (newv > 0xffff) { SET_VFLG (1); SET_NFLG (1); SET_CFLG (0); } else - { - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_NFLG (((uae_s16)(newv)) < 0); - newv = (newv & 0xffff) | ((uae_u32)rem << 16); - m68k_dreg(regs, dstreg) = (newv); - } - } -}}}}}endlabel1260: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_80f8_0)(uae_u32 opcode) /* DIVU.W (xxx).W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -m68k_incpc(4); - if (src == 0) { SET_VFLG (0); Exception (5, oldpc); goto endlabel1261; } else { - uae_u32 newv = (uae_u32)dst / (uae_u32)(uae_u16)src; - uae_u32 rem = (uae_u32)dst % (uae_u32)(uae_u16)src; - if (newv > 0xffff) { SET_VFLG (1); SET_NFLG (1); SET_CFLG (0); } else - { - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_NFLG (((uae_s16)(newv)) < 0); - newv = (newv & 0xffff) | ((uae_u32)rem << 16); - m68k_dreg(regs, dstreg) = (newv); - } - } -}}}}endlabel1261: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_80f9_0)(uae_u32 opcode) /* DIVU.W (xxx).L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = get_ilong(2); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -m68k_incpc(6); - if (src == 0) { SET_VFLG (0); Exception (5, oldpc); goto endlabel1262; } else { - uae_u32 newv = (uae_u32)dst / (uae_u32)(uae_u16)src; - uae_u32 rem = (uae_u32)dst % (uae_u32)(uae_u16)src; - if (newv > 0xffff) { SET_VFLG (1); SET_NFLG (1); SET_CFLG (0); } else - { - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_NFLG (((uae_s16)(newv)) < 0); - newv = (newv & 0xffff) | ((uae_u32)rem << 16); - m68k_dreg(regs, dstreg) = (newv); - } - } -}}}}endlabel1262: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_80fa_0)(uae_u32 opcode) /* DIVU.W (d16,PC),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -m68k_incpc(4); - if (src == 0) { SET_VFLG (0); Exception (5, oldpc); goto endlabel1263; } else { - uae_u32 newv = (uae_u32)dst / (uae_u32)(uae_u16)src; - uae_u32 rem = (uae_u32)dst % (uae_u32)(uae_u16)src; - if (newv > 0xffff) { SET_VFLG (1); SET_NFLG (1); SET_CFLG (0); } else - { - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_NFLG (((uae_s16)(newv)) < 0); - newv = (newv & 0xffff) | ((uae_u32)rem << 16); - m68k_dreg(regs, dstreg) = (newv); - } - } -}}}}endlabel1263: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_80fb_0)(uae_u32 opcode) /* DIVU.W (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - if (src == 0) { SET_VFLG (0); Exception (5, oldpc); goto endlabel1264; } else { - uae_u32 newv = (uae_u32)dst / (uae_u32)(uae_u16)src; - uae_u32 rem = (uae_u32)dst % (uae_u32)(uae_u16)src; - if (newv > 0xffff) { SET_VFLG (1); SET_NFLG (1); SET_CFLG (0); } else - { - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_NFLG (((uae_s16)(newv)) < 0); - newv = (newv & 0xffff) | ((uae_u32)rem << 16); - m68k_dreg(regs, dstreg) = (newv); - } - } -}}}}}endlabel1264: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_80fc_0)(uae_u32 opcode) /* DIVU.W #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 src = get_iword(2); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -m68k_incpc(4); - if (src == 0) { SET_VFLG (0); Exception (5, oldpc); goto endlabel1265; } else { - uae_u32 newv = (uae_u32)dst / (uae_u32)(uae_u16)src; - uae_u32 rem = (uae_u32)dst % (uae_u32)(uae_u16)src; - if (newv > 0xffff) { SET_VFLG (1); SET_NFLG (1); SET_CFLG (0); } else - { - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_NFLG (((uae_s16)(newv)) < 0); - newv = (newv & 0xffff) | ((uae_u32)rem << 16); - m68k_dreg(regs, dstreg) = (newv); - } - } -}}}endlabel1265: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8100_0)(uae_u32 opcode) /* SBCD.B Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{ uae_u16 newv_lo = (dst & 0xF) - (src & 0xF) - (GET_XFLG ? 1 : 0); - uae_u16 newv_hi = (dst & 0xF0) - (src & 0xF0); - uae_u16 newv, tmp_newv; - int bcd = 0; - newv = tmp_newv = newv_hi + newv_lo; - if (newv_lo & 0xF0) { newv -= 6; bcd = 6; }; - if ((((dst & 0xFF) - (src & 0xFF) - (GET_XFLG ? 1 : 0)) & 0x100) > 0xFF) { newv -= 0x60; } - SET_CFLG ((((dst & 0xFF) - (src & 0xFF) - bcd - (GET_XFLG ? 1 : 0)) & 0x300) > 0xFF); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8108_0)(uae_u32 opcode) /* SBCD.B -(An),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; -{ uae_s8 src = get_byte(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; -{ uae_s8 dst = get_byte(dsta); - m68k_areg (regs, dstreg) = dsta; -{ uae_u16 newv_lo = (dst & 0xF) - (src & 0xF) - (GET_XFLG ? 1 : 0); - uae_u16 newv_hi = (dst & 0xF0) - (src & 0xF0); - uae_u16 newv, tmp_newv; - int bcd = 0; - newv = tmp_newv = newv_hi + newv_lo; - if (newv_lo & 0xF0) { newv -= 6; bcd = 6; }; - if ((((dst & 0xFF) - (src & 0xFF) - (GET_XFLG ? 1 : 0)) & 0x100) > 0xFF) { newv -= 0x60; } - SET_CFLG ((((dst & 0xFF) - (src & 0xFF) - bcd - (GET_XFLG ? 1 : 0)) & 0x300) > 0xFF); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - put_byte(dsta,newv); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8110_0)(uae_u32 opcode) /* OR.B Dn,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8118_0)(uae_u32 opcode) /* OR.B Dn,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8120_0)(uae_u32 opcode) /* OR.B Dn,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; -{ uae_s8 dst = get_byte(dsta); - m68k_areg (regs, dstreg) = dsta; - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8128_0)(uae_u32 opcode) /* OR.B Dn,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 dst = get_byte(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8130_0)(uae_u32 opcode) /* OR.B Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s8 dst = get_byte(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8138_0)(uae_u32 opcode) /* OR.B Dn,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 dst = get_byte(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8139_0)(uae_u32 opcode) /* OR.B Dn,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_ilong(2); -{ uae_s8 dst = get_byte(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_8140_0)(uae_u32 opcode) /* PACK.L Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uae_u16 val = m68k_dreg(regs, srcreg) + get_iword(2); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & 0xffffff00) | ((val >> 4) & 0xf0) | (val & 0xf); -}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_8148_0)(uae_u32 opcode) /* PACK.L -(An),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uae_u16 val; - m68k_areg(regs, srcreg) -= areg_byteinc[srcreg]; - val = (uae_u16)get_byte(m68k_areg(regs, srcreg)); - m68k_areg(regs, srcreg) -= areg_byteinc[srcreg]; - val = (val | ((uae_u16)get_byte(m68k_areg(regs, srcreg)) << 8)) + get_iword(2); - m68k_areg(regs, dstreg) -= areg_byteinc[dstreg]; - put_byte(m68k_areg(regs, dstreg),((val >> 4) & 0xf0) | (val & 0xf)); -}m68k_incpc(4); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_8150_0)(uae_u32 opcode) /* OR.W Dn,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s16 dst = get_word(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8158_0)(uae_u32 opcode) /* OR.W Dn,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s16 dst = get_word(dsta); - m68k_areg(regs, dstreg) += 2; - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8160_0)(uae_u32 opcode) /* OR.W Dn,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; -{ uae_s16 dst = get_word(dsta); - m68k_areg (regs, dstreg) = dsta; - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8168_0)(uae_u32 opcode) /* OR.W Dn,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 dst = get_word(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8170_0)(uae_u32 opcode) /* OR.W Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s16 dst = get_word(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8178_0)(uae_u32 opcode) /* OR.W Dn,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 dst = get_word(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8179_0)(uae_u32 opcode) /* OR.W Dn,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_ilong(2); -{ uae_s16 dst = get_word(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_8180_0)(uae_u32 opcode) /* UNPK.L Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uae_u16 val = m68k_dreg(regs, srcreg); - val = (((val << 4) & 0xf00) | (val & 0xf)) + get_iword(2); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & 0xffff0000) | (val & 0xffff); -}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_8188_0)(uae_u32 opcode) /* UNPK.L -(An),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uae_u16 val; - m68k_areg(regs, srcreg) -= areg_byteinc[srcreg]; - val = (uae_u16)get_byte(m68k_areg(regs, srcreg)); - val = (((val << 4) & 0xf00) | (val & 0xf)) + get_iword(2); - m68k_areg(regs, dstreg) -= areg_byteinc[dstreg]; - put_byte(m68k_areg(regs, dstreg),val); - m68k_areg(regs, dstreg) -= areg_byteinc[dstreg]; - put_byte(m68k_areg(regs, dstreg),val >> 8); -}m68k_incpc(4); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_8190_0)(uae_u32 opcode) /* OR.L Dn,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8198_0)(uae_u32 opcode) /* OR.L Dn,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); - m68k_areg(regs, dstreg) += 4; - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_81a0_0)(uae_u32 opcode) /* OR.L Dn,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; -{ uae_s32 dst = get_long(dsta); - m68k_areg (regs, dstreg) = dsta; - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_81a8_0)(uae_u32 opcode) /* OR.L Dn,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 dst = get_long(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_81b0_0)(uae_u32 opcode) /* OR.L Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s32 dst = get_long(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_81b8_0)(uae_u32 opcode) /* OR.L Dn,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 dst = get_long(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_81b9_0)(uae_u32 opcode) /* OR.L Dn,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_ilong(2); -{ uae_s32 dst = get_long(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_81c0_0)(uae_u32 opcode) /* DIVS.W Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -m68k_incpc(2); - if (src == 0) { SET_VFLG (0); Exception(5,oldpc); goto endlabel1293; } else { - uae_s32 newv = (uae_s32)dst / (uae_s32)(uae_s16)src; - uae_u16 rem = (uae_s32)dst % (uae_s32)(uae_s16)src; - if ((newv & 0xffff8000) != 0 && (newv & 0xffff8000) != 0xffff8000) { SET_VFLG (1); SET_NFLG (1); SET_CFLG (0); } else - { - if (((uae_s16)rem < 0) != ((uae_s32)dst < 0)) rem = -rem; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_NFLG (((uae_s16)(newv)) < 0); - newv = (newv & 0xffff) | ((uae_u32)rem << 16); - m68k_dreg(regs, dstreg) = (newv); - } - } -}}}endlabel1293: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_81d0_0)(uae_u32 opcode) /* DIVS.W (An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -m68k_incpc(2); - if (src == 0) { SET_VFLG (0); Exception(5,oldpc); goto endlabel1294; } else { - uae_s32 newv = (uae_s32)dst / (uae_s32)(uae_s16)src; - uae_u16 rem = (uae_s32)dst % (uae_s32)(uae_s16)src; - if ((newv & 0xffff8000) != 0 && (newv & 0xffff8000) != 0xffff8000) { SET_VFLG (1); SET_NFLG (1); SET_CFLG (0); } else - { - if (((uae_s16)rem < 0) != ((uae_s32)dst < 0)) rem = -rem; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_NFLG (((uae_s16)(newv)) < 0); - newv = (newv & 0xffff) | ((uae_u32)rem << 16); - m68k_dreg(regs, dstreg) = (newv); - } - } -}}}}endlabel1294: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_81d8_0)(uae_u32 opcode) /* DIVS.W (An)+,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, srcreg) += 2; -{ uae_s32 dst = m68k_dreg(regs, dstreg); -m68k_incpc(2); - if (src == 0) { SET_VFLG (0); Exception(5,oldpc); goto endlabel1295; } else { - uae_s32 newv = (uae_s32)dst / (uae_s32)(uae_s16)src; - uae_u16 rem = (uae_s32)dst % (uae_s32)(uae_s16)src; - if ((newv & 0xffff8000) != 0 && (newv & 0xffff8000) != 0xffff8000) { SET_VFLG (1); SET_NFLG (1); SET_CFLG (0); } else - { - if (((uae_s16)rem < 0) != ((uae_s32)dst < 0)) rem = -rem; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_NFLG (((uae_s16)(newv)) < 0); - newv = (newv & 0xffff) | ((uae_u32)rem << 16); - m68k_dreg(regs, dstreg) = (newv); - } - } -}}}}endlabel1295: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_81e0_0)(uae_u32 opcode) /* DIVS.W -(An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_s32 dst = m68k_dreg(regs, dstreg); -m68k_incpc(2); - if (src == 0) { SET_VFLG (0); Exception(5,oldpc); goto endlabel1296; } else { - uae_s32 newv = (uae_s32)dst / (uae_s32)(uae_s16)src; - uae_u16 rem = (uae_s32)dst % (uae_s32)(uae_s16)src; - if ((newv & 0xffff8000) != 0 && (newv & 0xffff8000) != 0xffff8000) { SET_VFLG (1); SET_NFLG (1); SET_CFLG (0); } else - { - if (((uae_s16)rem < 0) != ((uae_s32)dst < 0)) rem = -rem; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_NFLG (((uae_s16)(newv)) < 0); - newv = (newv & 0xffff) | ((uae_u32)rem << 16); - m68k_dreg(regs, dstreg) = (newv); - } - } -}}}}endlabel1296: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_81e8_0)(uae_u32 opcode) /* DIVS.W (d16,An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -m68k_incpc(4); - if (src == 0) { SET_VFLG (0); Exception(5,oldpc); goto endlabel1297; } else { - uae_s32 newv = (uae_s32)dst / (uae_s32)(uae_s16)src; - uae_u16 rem = (uae_s32)dst % (uae_s32)(uae_s16)src; - if ((newv & 0xffff8000) != 0 && (newv & 0xffff8000) != 0xffff8000) { SET_VFLG (1); SET_NFLG (1); SET_CFLG (0); } else - { - if (((uae_s16)rem < 0) != ((uae_s32)dst < 0)) rem = -rem; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_NFLG (((uae_s16)(newv)) < 0); - newv = (newv & 0xffff) | ((uae_u32)rem << 16); - m68k_dreg(regs, dstreg) = (newv); - } - } -}}}}endlabel1297: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_81f0_0)(uae_u32 opcode) /* DIVS.W (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - if (src == 0) { SET_VFLG (0); Exception(5,oldpc); goto endlabel1298; } else { - uae_s32 newv = (uae_s32)dst / (uae_s32)(uae_s16)src; - uae_u16 rem = (uae_s32)dst % (uae_s32)(uae_s16)src; - if ((newv & 0xffff8000) != 0 && (newv & 0xffff8000) != 0xffff8000) { SET_VFLG (1); SET_NFLG (1); SET_CFLG (0); } else - { - if (((uae_s16)rem < 0) != ((uae_s32)dst < 0)) rem = -rem; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_NFLG (((uae_s16)(newv)) < 0); - newv = (newv & 0xffff) | ((uae_u32)rem << 16); - m68k_dreg(regs, dstreg) = (newv); - } - } -}}}}}endlabel1298: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_81f8_0)(uae_u32 opcode) /* DIVS.W (xxx).W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -m68k_incpc(4); - if (src == 0) { SET_VFLG (0); Exception(5,oldpc); goto endlabel1299; } else { - uae_s32 newv = (uae_s32)dst / (uae_s32)(uae_s16)src; - uae_u16 rem = (uae_s32)dst % (uae_s32)(uae_s16)src; - if ((newv & 0xffff8000) != 0 && (newv & 0xffff8000) != 0xffff8000) { SET_VFLG (1); SET_NFLG (1); SET_CFLG (0); } else - { - if (((uae_s16)rem < 0) != ((uae_s32)dst < 0)) rem = -rem; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_NFLG (((uae_s16)(newv)) < 0); - newv = (newv & 0xffff) | ((uae_u32)rem << 16); - m68k_dreg(regs, dstreg) = (newv); - } - } -}}}}endlabel1299: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_81f9_0)(uae_u32 opcode) /* DIVS.W (xxx).L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = get_ilong(2); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -m68k_incpc(6); - if (src == 0) { SET_VFLG (0); Exception(5,oldpc); goto endlabel1300; } else { - uae_s32 newv = (uae_s32)dst / (uae_s32)(uae_s16)src; - uae_u16 rem = (uae_s32)dst % (uae_s32)(uae_s16)src; - if ((newv & 0xffff8000) != 0 && (newv & 0xffff8000) != 0xffff8000) { SET_VFLG (1); SET_NFLG (1); SET_CFLG (0); } else - { - if (((uae_s16)rem < 0) != ((uae_s32)dst < 0)) rem = -rem; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_NFLG (((uae_s16)(newv)) < 0); - newv = (newv & 0xffff) | ((uae_u32)rem << 16); - m68k_dreg(regs, dstreg) = (newv); - } - } -}}}}endlabel1300: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_81fa_0)(uae_u32 opcode) /* DIVS.W (d16,PC),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -m68k_incpc(4); - if (src == 0) { SET_VFLG (0); Exception(5,oldpc); goto endlabel1301; } else { - uae_s32 newv = (uae_s32)dst / (uae_s32)(uae_s16)src; - uae_u16 rem = (uae_s32)dst % (uae_s32)(uae_s16)src; - if ((newv & 0xffff8000) != 0 && (newv & 0xffff8000) != 0xffff8000) { SET_VFLG (1); SET_NFLG (1); SET_CFLG (0); } else - { - if (((uae_s16)rem < 0) != ((uae_s32)dst < 0)) rem = -rem; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_NFLG (((uae_s16)(newv)) < 0); - newv = (newv & 0xffff) | ((uae_u32)rem << 16); - m68k_dreg(regs, dstreg) = (newv); - } - } -}}}}endlabel1301: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_81fb_0)(uae_u32 opcode) /* DIVS.W (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - if (src == 0) { SET_VFLG (0); Exception(5,oldpc); goto endlabel1302; } else { - uae_s32 newv = (uae_s32)dst / (uae_s32)(uae_s16)src; - uae_u16 rem = (uae_s32)dst % (uae_s32)(uae_s16)src; - if ((newv & 0xffff8000) != 0 && (newv & 0xffff8000) != 0xffff8000) { SET_VFLG (1); SET_NFLG (1); SET_CFLG (0); } else - { - if (((uae_s16)rem < 0) != ((uae_s32)dst < 0)) rem = -rem; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_NFLG (((uae_s16)(newv)) < 0); - newv = (newv & 0xffff) | ((uae_u32)rem << 16); - m68k_dreg(regs, dstreg) = (newv); - } - } -}}}}}endlabel1302: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_81fc_0)(uae_u32 opcode) /* DIVS.W #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 src = get_iword(2); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -m68k_incpc(4); - if (src == 0) { SET_VFLG (0); Exception(5,oldpc); goto endlabel1303; } else { - uae_s32 newv = (uae_s32)dst / (uae_s32)(uae_s16)src; - uae_u16 rem = (uae_s32)dst % (uae_s32)(uae_s16)src; - if ((newv & 0xffff8000) != 0 && (newv & 0xffff8000) != 0xffff8000) { SET_VFLG (1); SET_NFLG (1); SET_CFLG (0); } else - { - if (((uae_s16)rem < 0) != ((uae_s32)dst < 0)) rem = -rem; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_NFLG (((uae_s16)(newv)) < 0); - newv = (newv & 0xffff) | ((uae_u32)rem << 16); - m68k_dreg(regs, dstreg) = (newv); - } - } -}}}endlabel1303: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9000_0)(uae_u32 opcode) /* SUB.B Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9010_0)(uae_u32 opcode) /* SUB.B (An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9018_0)(uae_u32 opcode) /* SUB.B (An)+,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9020_0)(uae_u32 opcode) /* SUB.B -(An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; -{ uae_s8 src = get_byte(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9028_0)(uae_u32 opcode) /* SUB.B (d16,An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9030_0)(uae_u32 opcode) /* SUB.B (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9038_0)(uae_u32 opcode) /* SUB.B (xxx).W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9039_0)(uae_u32 opcode) /* SUB.B (xxx).L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_903a_0)(uae_u32 opcode) /* SUB.B (d16,PC),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_903b_0)(uae_u32 opcode) /* SUB.B (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_903c_0)(uae_u32 opcode) /* SUB.B #.B,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9040_0)(uae_u32 opcode) /* SUB.W Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9048_0)(uae_u32 opcode) /* SUB.W An,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_areg(regs, srcreg); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9050_0)(uae_u32 opcode) /* SUB.W (An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9058_0)(uae_u32 opcode) /* SUB.W (An)+,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, srcreg) += 2; -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9060_0)(uae_u32 opcode) /* SUB.W -(An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9068_0)(uae_u32 opcode) /* SUB.W (d16,An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9070_0)(uae_u32 opcode) /* SUB.W (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9078_0)(uae_u32 opcode) /* SUB.W (xxx).W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9079_0)(uae_u32 opcode) /* SUB.W (xxx).L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_907a_0)(uae_u32 opcode) /* SUB.W (d16,PC),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_907b_0)(uae_u32 opcode) /* SUB.W (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_907c_0)(uae_u32 opcode) /* SUB.W #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9080_0)(uae_u32 opcode) /* SUB.L Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9088_0)(uae_u32 opcode) /* SUB.L An,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_areg(regs, srcreg); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9090_0)(uae_u32 opcode) /* SUB.L (An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9098_0)(uae_u32 opcode) /* SUB.L (An)+,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); - m68k_areg(regs, srcreg) += 4; -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_90a0_0)(uae_u32 opcode) /* SUB.L -(An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 4; -{ uae_s32 src = get_long(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_90a8_0)(uae_u32 opcode) /* SUB.L (d16,An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_90b0_0)(uae_u32 opcode) /* SUB.L (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_90b8_0)(uae_u32 opcode) /* SUB.L (xxx).W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_90b9_0)(uae_u32 opcode) /* SUB.L (xxx).L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_90ba_0)(uae_u32 opcode) /* SUB.L (d16,PC),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_90bb_0)(uae_u32 opcode) /* SUB.L (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_90bc_0)(uae_u32 opcode) /* SUB.L #.L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}m68k_incpc(6); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_90c0_0)(uae_u32 opcode) /* SUBA.W Dn,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst - src; - m68k_areg(regs, dstreg) = (newv); -}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_90c8_0)(uae_u32 opcode) /* SUBA.W An,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_areg(regs, srcreg); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst - src; - m68k_areg(regs, dstreg) = (newv); -}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_90d0_0)(uae_u32 opcode) /* SUBA.W (An),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst - src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_90d8_0)(uae_u32 opcode) /* SUBA.W (An)+,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, srcreg) += 2; -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst - src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_90e0_0)(uae_u32 opcode) /* SUBA.W -(An),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst - src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_90e8_0)(uae_u32 opcode) /* SUBA.W (d16,An),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst - src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_90f0_0)(uae_u32 opcode) /* SUBA.W (d8,An,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst - src; - m68k_areg(regs, dstreg) = (newv); -}}}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_90f8_0)(uae_u32 opcode) /* SUBA.W (xxx).W,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst - src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_90f9_0)(uae_u32 opcode) /* SUBA.W (xxx).L,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst - src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_90fa_0)(uae_u32 opcode) /* SUBA.W (d16,PC),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst - src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_90fb_0)(uae_u32 opcode) /* SUBA.W (d8,PC,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst - src; - m68k_areg(regs, dstreg) = (newv); -}}}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_90fc_0)(uae_u32 opcode) /* SUBA.W #.W,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst - src; - m68k_areg(regs, dstreg) = (newv); -}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_9100_0)(uae_u32 opcode) /* SUBX.B Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = dst - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - SET_NFLG (((uae_s8)(newv)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9108_0)(uae_u32 opcode) /* SUBX.B -(An),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; -{ uae_s8 src = get_byte(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; -{ uae_s8 dst = get_byte(dsta); - m68k_areg (regs, dstreg) = dsta; -{ uae_u32 newv = dst - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - SET_NFLG (((uae_s8)(newv)) < 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9110_0)(uae_u32 opcode) /* SUB.B Dn,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9118_0)(uae_u32 opcode) /* SUB.B Dn,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9120_0)(uae_u32 opcode) /* SUB.B Dn,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; -{ uae_s8 dst = get_byte(dsta); - m68k_areg (regs, dstreg) = dsta; -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9128_0)(uae_u32 opcode) /* SUB.B Dn,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9130_0)(uae_u32 opcode) /* SUB.B Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9138_0)(uae_u32 opcode) /* SUB.B Dn,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9139_0)(uae_u32 opcode) /* SUB.B Dn,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_ilong(2); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9140_0)(uae_u32 opcode) /* SUBX.W Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = dst - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s16)(newv)) == 0)); - SET_NFLG (((uae_s16)(newv)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9148_0)(uae_u32 opcode) /* SUBX.W -(An),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; -{ uae_s16 dst = get_word(dsta); - m68k_areg (regs, dstreg) = dsta; -{ uae_u32 newv = dst - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s16)(newv)) == 0)); - SET_NFLG (((uae_s16)(newv)) < 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9150_0)(uae_u32 opcode) /* SUB.W Dn,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9158_0)(uae_u32 opcode) /* SUB.W Dn,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s16 dst = get_word(dsta); - m68k_areg(regs, dstreg) += 2; -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9160_0)(uae_u32 opcode) /* SUB.W Dn,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; -{ uae_s16 dst = get_word(dsta); - m68k_areg (regs, dstreg) = dsta; -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9168_0)(uae_u32 opcode) /* SUB.W Dn,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9170_0)(uae_u32 opcode) /* SUB.W Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9178_0)(uae_u32 opcode) /* SUB.W Dn,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9179_0)(uae_u32 opcode) /* SUB.W Dn,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_ilong(2); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9180_0)(uae_u32 opcode) /* SUBX.L Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = dst - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s32)(newv)) == 0)); - SET_NFLG (((uae_s32)(newv)) < 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9188_0)(uae_u32 opcode) /* SUBX.L -(An),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 4; -{ uae_s32 src = get_long(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; -{ uae_s32 dst = get_long(dsta); - m68k_areg (regs, dstreg) = dsta; -{ uae_u32 newv = dst - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s32)(newv)) == 0)); - SET_NFLG (((uae_s32)(newv)) < 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9190_0)(uae_u32 opcode) /* SUB.L Dn,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9198_0)(uae_u32 opcode) /* SUB.L Dn,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); - m68k_areg(regs, dstreg) += 4; -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_91a0_0)(uae_u32 opcode) /* SUB.L Dn,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; -{ uae_s32 dst = get_long(dsta); - m68k_areg (regs, dstreg) = dsta; -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_91a8_0)(uae_u32 opcode) /* SUB.L Dn,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_91b0_0)(uae_u32 opcode) /* SUB.L Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_91b8_0)(uae_u32 opcode) /* SUB.L Dn,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_91b9_0)(uae_u32 opcode) /* SUB.L Dn,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_ilong(2); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_91c0_0)(uae_u32 opcode) /* SUBA.L Dn,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst - src; - m68k_areg(regs, dstreg) = (newv); -}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_91c8_0)(uae_u32 opcode) /* SUBA.L An,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_areg(regs, srcreg); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst - src; - m68k_areg(regs, dstreg) = (newv); -}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_91d0_0)(uae_u32 opcode) /* SUBA.L (An),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst - src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_91d8_0)(uae_u32 opcode) /* SUBA.L (An)+,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); - m68k_areg(regs, srcreg) += 4; -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst - src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_91e0_0)(uae_u32 opcode) /* SUBA.L -(An),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 4; -{ uae_s32 src = get_long(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst - src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_91e8_0)(uae_u32 opcode) /* SUBA.L (d16,An),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst - src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_91f0_0)(uae_u32 opcode) /* SUBA.L (d8,An,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst - src; - m68k_areg(regs, dstreg) = (newv); -}}}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_91f8_0)(uae_u32 opcode) /* SUBA.L (xxx).W,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst - src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_91f9_0)(uae_u32 opcode) /* SUBA.L (xxx).L,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst - src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_91fa_0)(uae_u32 opcode) /* SUBA.L (d16,PC),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst - src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_91fb_0)(uae_u32 opcode) /* SUBA.L (d8,PC,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst - src; - m68k_areg(regs, dstreg) = (newv); -}}}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_91fc_0)(uae_u32 opcode) /* SUBA.L #.L,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst - src; - m68k_areg(regs, dstreg) = (newv); -}}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_b000_0)(uae_u32 opcode) /* CMP.B Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b010_0)(uae_u32 opcode) /* CMP.B (An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b018_0)(uae_u32 opcode) /* CMP.B (An)+,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b020_0)(uae_u32 opcode) /* CMP.B -(An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; -{ uae_s8 src = get_byte(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b028_0)(uae_u32 opcode) /* CMP.B (d16,An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b030_0)(uae_u32 opcode) /* CMP.B (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b038_0)(uae_u32 opcode) /* CMP.B (xxx).W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b039_0)(uae_u32 opcode) /* CMP.B (xxx).L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b03a_0)(uae_u32 opcode) /* CMP.B (d16,PC),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b03b_0)(uae_u32 opcode) /* CMP.B (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b03c_0)(uae_u32 opcode) /* CMP.B #.B,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); -}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b040_0)(uae_u32 opcode) /* CMP.W Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -#endif - -#ifdef PART_7 -void REGPARAM2 CPUFUNC(op_b048_0)(uae_u32 opcode) /* CMP.W An,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_areg(regs, srcreg); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b050_0)(uae_u32 opcode) /* CMP.W (An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b058_0)(uae_u32 opcode) /* CMP.W (An)+,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, srcreg) += 2; -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b060_0)(uae_u32 opcode) /* CMP.W -(An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b068_0)(uae_u32 opcode) /* CMP.W (d16,An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b070_0)(uae_u32 opcode) /* CMP.W (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b078_0)(uae_u32 opcode) /* CMP.W (xxx).W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b079_0)(uae_u32 opcode) /* CMP.W (xxx).L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b07a_0)(uae_u32 opcode) /* CMP.W (d16,PC),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b07b_0)(uae_u32 opcode) /* CMP.W (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b07c_0)(uae_u32 opcode) /* CMP.W #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); -}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b080_0)(uae_u32 opcode) /* CMP.L Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b088_0)(uae_u32 opcode) /* CMP.L An,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_areg(regs, srcreg); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b090_0)(uae_u32 opcode) /* CMP.L (An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b098_0)(uae_u32 opcode) /* CMP.L (An)+,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); - m68k_areg(regs, srcreg) += 4; -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b0a0_0)(uae_u32 opcode) /* CMP.L -(An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 4; -{ uae_s32 src = get_long(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b0a8_0)(uae_u32 opcode) /* CMP.L (d16,An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b0b0_0)(uae_u32 opcode) /* CMP.L (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b0b8_0)(uae_u32 opcode) /* CMP.L (xxx).W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b0b9_0)(uae_u32 opcode) /* CMP.L (xxx).L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b0ba_0)(uae_u32 opcode) /* CMP.L (d16,PC),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b0bb_0)(uae_u32 opcode) /* CMP.L (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b0bc_0)(uae_u32 opcode) /* CMP.L #.L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b0c0_0)(uae_u32 opcode) /* CMPA.W Dn,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b0c8_0)(uae_u32 opcode) /* CMPA.W An,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_areg(regs, srcreg); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b0d0_0)(uae_u32 opcode) /* CMPA.W (An),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b0d8_0)(uae_u32 opcode) /* CMPA.W (An)+,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, srcreg) += 2; -{ uae_s32 dst = m68k_areg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b0e0_0)(uae_u32 opcode) /* CMPA.W -(An),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_s32 dst = m68k_areg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b0e8_0)(uae_u32 opcode) /* CMPA.W (d16,An),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b0f0_0)(uae_u32 opcode) /* CMPA.W (d8,An,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b0f8_0)(uae_u32 opcode) /* CMPA.W (xxx).W,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b0f9_0)(uae_u32 opcode) /* CMPA.W (xxx).L,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b0fa_0)(uae_u32 opcode) /* CMPA.W (d16,PC),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b0fb_0)(uae_u32 opcode) /* CMPA.W (d8,PC,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b0fc_0)(uae_u32 opcode) /* CMPA.W #.W,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b100_0)(uae_u32 opcode) /* EOR.B Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uae_s8 dst = m68k_dreg(regs, dstreg); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b108_0)(uae_u32 opcode) /* CMPM.B (An)+,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b110_0)(uae_u32 opcode) /* EOR.B Dn,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b118_0)(uae_u32 opcode) /* EOR.B Dn,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b120_0)(uae_u32 opcode) /* EOR.B Dn,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; -{ uae_s8 dst = get_byte(dsta); - m68k_areg (regs, dstreg) = dsta; - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b128_0)(uae_u32 opcode) /* EOR.B Dn,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 dst = get_byte(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b130_0)(uae_u32 opcode) /* EOR.B Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s8 dst = get_byte(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b138_0)(uae_u32 opcode) /* EOR.B Dn,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 dst = get_byte(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b139_0)(uae_u32 opcode) /* EOR.B Dn,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_ilong(2); -{ uae_s8 dst = get_byte(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b140_0)(uae_u32 opcode) /* EOR.W Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b148_0)(uae_u32 opcode) /* CMPM.W (An)+,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, srcreg) += 2; -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s16 dst = get_word(dsta); - m68k_areg(regs, dstreg) += 2; -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b150_0)(uae_u32 opcode) /* EOR.W Dn,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s16 dst = get_word(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b158_0)(uae_u32 opcode) /* EOR.W Dn,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s16 dst = get_word(dsta); - m68k_areg(regs, dstreg) += 2; - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b160_0)(uae_u32 opcode) /* EOR.W Dn,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; -{ uae_s16 dst = get_word(dsta); - m68k_areg (regs, dstreg) = dsta; - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b168_0)(uae_u32 opcode) /* EOR.W Dn,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 dst = get_word(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b170_0)(uae_u32 opcode) /* EOR.W Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s16 dst = get_word(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b178_0)(uae_u32 opcode) /* EOR.W Dn,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 dst = get_word(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b179_0)(uae_u32 opcode) /* EOR.W Dn,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_ilong(2); -{ uae_s16 dst = get_word(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b180_0)(uae_u32 opcode) /* EOR.L Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b188_0)(uae_u32 opcode) /* CMPM.L (An)+,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); - m68k_areg(regs, srcreg) += 4; -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); - m68k_areg(regs, dstreg) += 4; -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b190_0)(uae_u32 opcode) /* EOR.L Dn,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b198_0)(uae_u32 opcode) /* EOR.L Dn,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); - m68k_areg(regs, dstreg) += 4; - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b1a0_0)(uae_u32 opcode) /* EOR.L Dn,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; -{ uae_s32 dst = get_long(dsta); - m68k_areg (regs, dstreg) = dsta; - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b1a8_0)(uae_u32 opcode) /* EOR.L Dn,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 dst = get_long(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b1b0_0)(uae_u32 opcode) /* EOR.L Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s32 dst = get_long(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b1b8_0)(uae_u32 opcode) /* EOR.L Dn,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 dst = get_long(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b1b9_0)(uae_u32 opcode) /* EOR.L Dn,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_ilong(2); -{ uae_s32 dst = get_long(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b1c0_0)(uae_u32 opcode) /* CMPA.L Dn,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b1c8_0)(uae_u32 opcode) /* CMPA.L An,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_areg(regs, srcreg); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b1d0_0)(uae_u32 opcode) /* CMPA.L (An),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b1d8_0)(uae_u32 opcode) /* CMPA.L (An)+,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); - m68k_areg(regs, srcreg) += 4; -{ uae_s32 dst = m68k_areg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b1e0_0)(uae_u32 opcode) /* CMPA.L -(An),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 4; -{ uae_s32 src = get_long(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_s32 dst = m68k_areg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b1e8_0)(uae_u32 opcode) /* CMPA.L (d16,An),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b1f0_0)(uae_u32 opcode) /* CMPA.L (d8,An,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b1f8_0)(uae_u32 opcode) /* CMPA.L (xxx).W,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b1f9_0)(uae_u32 opcode) /* CMPA.L (xxx).L,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b1fa_0)(uae_u32 opcode) /* CMPA.L (d16,PC),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b1fb_0)(uae_u32 opcode) /* CMPA.L (d8,PC,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b1fc_0)(uae_u32 opcode) /* CMPA.L #.L,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c000_0)(uae_u32 opcode) /* AND.B Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uae_s8 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c010_0)(uae_u32 opcode) /* AND.B (An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c018_0)(uae_u32 opcode) /* AND.B (An)+,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ uae_s8 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c020_0)(uae_u32 opcode) /* AND.B -(An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; -{ uae_s8 src = get_byte(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_s8 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c028_0)(uae_u32 opcode) /* AND.B (d16,An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c030_0)(uae_u32 opcode) /* AND.B (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c038_0)(uae_u32 opcode) /* AND.B (xxx).W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c039_0)(uae_u32 opcode) /* AND.B (xxx).L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c03a_0)(uae_u32 opcode) /* AND.B (d16,PC),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c03b_0)(uae_u32 opcode) /* AND.B (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c03c_0)(uae_u32 opcode) /* AND.B #.B,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uae_s8 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c040_0)(uae_u32 opcode) /* AND.W Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c050_0)(uae_u32 opcode) /* AND.W (An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c058_0)(uae_u32 opcode) /* AND.W (An)+,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, srcreg) += 2; -{ uae_s16 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c060_0)(uae_u32 opcode) /* AND.W -(An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_s16 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c068_0)(uae_u32 opcode) /* AND.W (d16,An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c070_0)(uae_u32 opcode) /* AND.W (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c078_0)(uae_u32 opcode) /* AND.W (xxx).W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c079_0)(uae_u32 opcode) /* AND.W (xxx).L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c07a_0)(uae_u32 opcode) /* AND.W (d16,PC),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c07b_0)(uae_u32 opcode) /* AND.W (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c07c_0)(uae_u32 opcode) /* AND.W #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c080_0)(uae_u32 opcode) /* AND.L Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c090_0)(uae_u32 opcode) /* AND.L (An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c098_0)(uae_u32 opcode) /* AND.L (An)+,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); - m68k_areg(regs, srcreg) += 4; -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c0a0_0)(uae_u32 opcode) /* AND.L -(An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 4; -{ uae_s32 src = get_long(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c0a8_0)(uae_u32 opcode) /* AND.L (d16,An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c0b0_0)(uae_u32 opcode) /* AND.L (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c0b8_0)(uae_u32 opcode) /* AND.L (xxx).W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c0b9_0)(uae_u32 opcode) /* AND.L (xxx).L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c0ba_0)(uae_u32 opcode) /* AND.L (d16,PC),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c0bb_0)(uae_u32 opcode) /* AND.L (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c0bc_0)(uae_u32 opcode) /* AND.L #.L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c0c0_0)(uae_u32 opcode) /* MULU.W Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = (uae_u32)(uae_u16)dst * (uae_u32)(uae_u16)src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_NFLG (((uae_s32)(newv)) < 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c0d0_0)(uae_u32 opcode) /* MULU.W (An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = (uae_u32)(uae_u16)dst * (uae_u32)(uae_u16)src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_NFLG (((uae_s32)(newv)) < 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c0d8_0)(uae_u32 opcode) /* MULU.W (An)+,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, srcreg) += 2; -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = (uae_u32)(uae_u16)dst * (uae_u32)(uae_u16)src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_NFLG (((uae_s32)(newv)) < 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c0e0_0)(uae_u32 opcode) /* MULU.W -(An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = (uae_u32)(uae_u16)dst * (uae_u32)(uae_u16)src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_NFLG (((uae_s32)(newv)) < 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c0e8_0)(uae_u32 opcode) /* MULU.W (d16,An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = (uae_u32)(uae_u16)dst * (uae_u32)(uae_u16)src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_NFLG (((uae_s32)(newv)) < 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c0f0_0)(uae_u32 opcode) /* MULU.W (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = (uae_u32)(uae_u16)dst * (uae_u32)(uae_u16)src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_NFLG (((uae_s32)(newv)) < 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c0f8_0)(uae_u32 opcode) /* MULU.W (xxx).W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = (uae_u32)(uae_u16)dst * (uae_u32)(uae_u16)src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_NFLG (((uae_s32)(newv)) < 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c0f9_0)(uae_u32 opcode) /* MULU.W (xxx).L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = (uae_u32)(uae_u16)dst * (uae_u32)(uae_u16)src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_NFLG (((uae_s32)(newv)) < 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c0fa_0)(uae_u32 opcode) /* MULU.W (d16,PC),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = (uae_u32)(uae_u16)dst * (uae_u32)(uae_u16)src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_NFLG (((uae_s32)(newv)) < 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c0fb_0)(uae_u32 opcode) /* MULU.W (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = (uae_u32)(uae_u16)dst * (uae_u32)(uae_u16)src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_NFLG (((uae_s32)(newv)) < 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c0fc_0)(uae_u32 opcode) /* MULU.W #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = (uae_u32)(uae_u16)dst * (uae_u32)(uae_u16)src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_NFLG (((uae_s32)(newv)) < 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c100_0)(uae_u32 opcode) /* ABCD.B Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{ uae_u16 newv_lo = (src & 0xF) + (dst & 0xF) + (GET_XFLG ? 1 : 0); - uae_u16 newv_hi = (src & 0xF0) + (dst & 0xF0); - uae_u16 newv, tmp_newv; - int cflg; - newv = tmp_newv = newv_hi + newv_lo; - if (newv_lo > 9) { newv += 6; } - cflg = (newv & 0x3F0) > 0x90; - if (cflg) newv += 0x60; - SET_CFLG (cflg); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c108_0)(uae_u32 opcode) /* ABCD.B -(An),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; -{ uae_s8 src = get_byte(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; -{ uae_s8 dst = get_byte(dsta); - m68k_areg (regs, dstreg) = dsta; -{ uae_u16 newv_lo = (src & 0xF) + (dst & 0xF) + (GET_XFLG ? 1 : 0); - uae_u16 newv_hi = (src & 0xF0) + (dst & 0xF0); - uae_u16 newv, tmp_newv; - int cflg; - newv = tmp_newv = newv_hi + newv_lo; - if (newv_lo > 9) { newv += 6; } - cflg = (newv & 0x3F0) > 0x90; - if (cflg) newv += 0x60; - SET_CFLG (cflg); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - put_byte(dsta,newv); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c110_0)(uae_u32 opcode) /* AND.B Dn,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c118_0)(uae_u32 opcode) /* AND.B Dn,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c120_0)(uae_u32 opcode) /* AND.B Dn,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; -{ uae_s8 dst = get_byte(dsta); - m68k_areg (regs, dstreg) = dsta; - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c128_0)(uae_u32 opcode) /* AND.B Dn,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 dst = get_byte(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c130_0)(uae_u32 opcode) /* AND.B Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s8 dst = get_byte(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c138_0)(uae_u32 opcode) /* AND.B Dn,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 dst = get_byte(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c139_0)(uae_u32 opcode) /* AND.B Dn,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_ilong(2); -{ uae_s8 dst = get_byte(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_c140_0)(uae_u32 opcode) /* EXG.L Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - m68k_dreg(regs, srcreg) = (dst); - m68k_dreg(regs, dstreg) = (src); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_c148_0)(uae_u32 opcode) /* EXG.L An,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_areg(regs, srcreg); -{ uae_s32 dst = m68k_areg(regs, dstreg); - m68k_areg(regs, srcreg) = (dst); - m68k_areg(regs, dstreg) = (src); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_c150_0)(uae_u32 opcode) /* AND.W Dn,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s16 dst = get_word(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c158_0)(uae_u32 opcode) /* AND.W Dn,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s16 dst = get_word(dsta); - m68k_areg(regs, dstreg) += 2; - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c160_0)(uae_u32 opcode) /* AND.W Dn,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; -{ uae_s16 dst = get_word(dsta); - m68k_areg (regs, dstreg) = dsta; - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c168_0)(uae_u32 opcode) /* AND.W Dn,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 dst = get_word(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c170_0)(uae_u32 opcode) /* AND.W Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s16 dst = get_word(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c178_0)(uae_u32 opcode) /* AND.W Dn,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 dst = get_word(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c179_0)(uae_u32 opcode) /* AND.W Dn,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_ilong(2); -{ uae_s16 dst = get_word(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_c188_0)(uae_u32 opcode) /* EXG.L Dn,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uae_s32 dst = m68k_areg(regs, dstreg); - m68k_dreg(regs, srcreg) = (dst); - m68k_areg(regs, dstreg) = (src); -}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_c190_0)(uae_u32 opcode) /* AND.L Dn,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c198_0)(uae_u32 opcode) /* AND.L Dn,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); - m68k_areg(regs, dstreg) += 4; - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c1a0_0)(uae_u32 opcode) /* AND.L Dn,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; -{ uae_s32 dst = get_long(dsta); - m68k_areg (regs, dstreg) = dsta; - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c1a8_0)(uae_u32 opcode) /* AND.L Dn,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 dst = get_long(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c1b0_0)(uae_u32 opcode) /* AND.L Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s32 dst = get_long(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c1b8_0)(uae_u32 opcode) /* AND.L Dn,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 dst = get_long(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c1b9_0)(uae_u32 opcode) /* AND.L Dn,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_ilong(2); -{ uae_s32 dst = get_long(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c1c0_0)(uae_u32 opcode) /* MULS.W Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = (uae_s32)(uae_s16)dst * (uae_s32)(uae_s16)src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_NFLG (((uae_s32)(newv)) < 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c1d0_0)(uae_u32 opcode) /* MULS.W (An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = (uae_s32)(uae_s16)dst * (uae_s32)(uae_s16)src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_NFLG (((uae_s32)(newv)) < 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c1d8_0)(uae_u32 opcode) /* MULS.W (An)+,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, srcreg) += 2; -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = (uae_s32)(uae_s16)dst * (uae_s32)(uae_s16)src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_NFLG (((uae_s32)(newv)) < 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c1e0_0)(uae_u32 opcode) /* MULS.W -(An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = (uae_s32)(uae_s16)dst * (uae_s32)(uae_s16)src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_NFLG (((uae_s32)(newv)) < 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c1e8_0)(uae_u32 opcode) /* MULS.W (d16,An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = (uae_s32)(uae_s16)dst * (uae_s32)(uae_s16)src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_NFLG (((uae_s32)(newv)) < 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c1f0_0)(uae_u32 opcode) /* MULS.W (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = (uae_s32)(uae_s16)dst * (uae_s32)(uae_s16)src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_NFLG (((uae_s32)(newv)) < 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c1f8_0)(uae_u32 opcode) /* MULS.W (xxx).W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = (uae_s32)(uae_s16)dst * (uae_s32)(uae_s16)src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_NFLG (((uae_s32)(newv)) < 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c1f9_0)(uae_u32 opcode) /* MULS.W (xxx).L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = (uae_s32)(uae_s16)dst * (uae_s32)(uae_s16)src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_NFLG (((uae_s32)(newv)) < 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c1fa_0)(uae_u32 opcode) /* MULS.W (d16,PC),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = (uae_s32)(uae_s16)dst * (uae_s32)(uae_s16)src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_NFLG (((uae_s32)(newv)) < 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c1fb_0)(uae_u32 opcode) /* MULS.W (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = (uae_s32)(uae_s16)dst * (uae_s32)(uae_s16)src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_NFLG (((uae_s32)(newv)) < 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c1fc_0)(uae_u32 opcode) /* MULS.W #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = (uae_s32)(uae_s16)dst * (uae_s32)(uae_s16)src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_NFLG (((uae_s32)(newv)) < 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d000_0)(uae_u32 opcode) /* ADD.B Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d010_0)(uae_u32 opcode) /* ADD.B (An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d018_0)(uae_u32 opcode) /* ADD.B (An)+,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d020_0)(uae_u32 opcode) /* ADD.B -(An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; -{ uae_s8 src = get_byte(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d028_0)(uae_u32 opcode) /* ADD.B (d16,An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d030_0)(uae_u32 opcode) /* ADD.B (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d038_0)(uae_u32 opcode) /* ADD.B (xxx).W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d039_0)(uae_u32 opcode) /* ADD.B (xxx).L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d03a_0)(uae_u32 opcode) /* ADD.B (d16,PC),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d03b_0)(uae_u32 opcode) /* ADD.B (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d03c_0)(uae_u32 opcode) /* ADD.B #.B,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d040_0)(uae_u32 opcode) /* ADD.W Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d048_0)(uae_u32 opcode) /* ADD.W An,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_areg(regs, srcreg); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d050_0)(uae_u32 opcode) /* ADD.W (An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d058_0)(uae_u32 opcode) /* ADD.W (An)+,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, srcreg) += 2; -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d060_0)(uae_u32 opcode) /* ADD.W -(An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d068_0)(uae_u32 opcode) /* ADD.W (d16,An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d070_0)(uae_u32 opcode) /* ADD.W (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d078_0)(uae_u32 opcode) /* ADD.W (xxx).W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d079_0)(uae_u32 opcode) /* ADD.W (xxx).L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d07a_0)(uae_u32 opcode) /* ADD.W (d16,PC),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d07b_0)(uae_u32 opcode) /* ADD.W (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d07c_0)(uae_u32 opcode) /* ADD.W #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d080_0)(uae_u32 opcode) /* ADD.L Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d088_0)(uae_u32 opcode) /* ADD.L An,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_areg(regs, srcreg); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d090_0)(uae_u32 opcode) /* ADD.L (An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d098_0)(uae_u32 opcode) /* ADD.L (An)+,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); - m68k_areg(regs, srcreg) += 4; -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d0a0_0)(uae_u32 opcode) /* ADD.L -(An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 4; -{ uae_s32 src = get_long(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d0a8_0)(uae_u32 opcode) /* ADD.L (d16,An),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d0b0_0)(uae_u32 opcode) /* ADD.L (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d0b8_0)(uae_u32 opcode) /* ADD.L (xxx).W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d0b9_0)(uae_u32 opcode) /* ADD.L (xxx).L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d0ba_0)(uae_u32 opcode) /* ADD.L (d16,PC),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d0bb_0)(uae_u32 opcode) /* ADD.L (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d0bc_0)(uae_u32 opcode) /* ADD.L #.L,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}m68k_incpc(6); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_d0c0_0)(uae_u32 opcode) /* ADDA.W Dn,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst + src; - m68k_areg(regs, dstreg) = (newv); -}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_d0c8_0)(uae_u32 opcode) /* ADDA.W An,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_areg(regs, srcreg); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst + src; - m68k_areg(regs, dstreg) = (newv); -}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_d0d0_0)(uae_u32 opcode) /* ADDA.W (An),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst + src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_d0d8_0)(uae_u32 opcode) /* ADDA.W (An)+,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, srcreg) += 2; -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst + src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_d0e0_0)(uae_u32 opcode) /* ADDA.W -(An),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst + src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_d0e8_0)(uae_u32 opcode) /* ADDA.W (d16,An),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst + src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_d0f0_0)(uae_u32 opcode) /* ADDA.W (d8,An,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst + src; - m68k_areg(regs, dstreg) = (newv); -}}}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_d0f8_0)(uae_u32 opcode) /* ADDA.W (xxx).W,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst + src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_d0f9_0)(uae_u32 opcode) /* ADDA.W (xxx).L,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst + src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_d0fa_0)(uae_u32 opcode) /* ADDA.W (d16,PC),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst + src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_d0fb_0)(uae_u32 opcode) /* ADDA.W (d8,PC,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst + src; - m68k_areg(regs, dstreg) = (newv); -}}}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_d0fc_0)(uae_u32 opcode) /* ADDA.W #.W,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst + src; - m68k_areg(regs, dstreg) = (newv); -}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_d100_0)(uae_u32 opcode) /* ADDX.B Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = dst + src + (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgo) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - SET_NFLG (((uae_s8)(newv)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d108_0)(uae_u32 opcode) /* ADDX.B -(An),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; -{ uae_s8 src = get_byte(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; -{ uae_s8 dst = get_byte(dsta); - m68k_areg (regs, dstreg) = dsta; -{ uae_u32 newv = dst + src + (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgo) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - SET_NFLG (((uae_s8)(newv)) < 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d110_0)(uae_u32 opcode) /* ADD.B Dn,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d118_0)(uae_u32 opcode) /* ADD.B Dn,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s8 dst = get_byte(dsta); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d120_0)(uae_u32 opcode) /* ADD.B Dn,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; -{ uae_s8 dst = get_byte(dsta); - m68k_areg (regs, dstreg) = dsta; -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d128_0)(uae_u32 opcode) /* ADD.B Dn,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d130_0)(uae_u32 opcode) /* ADD.B Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d138_0)(uae_u32 opcode) /* ADD.B Dn,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d139_0)(uae_u32 opcode) /* ADD.B Dn,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_ilong(2); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d140_0)(uae_u32 opcode) /* ADDX.W Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = dst + src + (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgo) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s16)(newv)) == 0)); - SET_NFLG (((uae_s16)(newv)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d148_0)(uae_u32 opcode) /* ADDX.W -(An),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; -{ uae_s16 dst = get_word(dsta); - m68k_areg (regs, dstreg) = dsta; -{ uae_u32 newv = dst + src + (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgo) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s16)(newv)) == 0)); - SET_NFLG (((uae_s16)(newv)) < 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d150_0)(uae_u32 opcode) /* ADD.W Dn,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d158_0)(uae_u32 opcode) /* ADD.W Dn,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s16 dst = get_word(dsta); - m68k_areg(regs, dstreg) += 2; -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d160_0)(uae_u32 opcode) /* ADD.W Dn,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; -{ uae_s16 dst = get_word(dsta); - m68k_areg (regs, dstreg) = dsta; -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d168_0)(uae_u32 opcode) /* ADD.W Dn,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d170_0)(uae_u32 opcode) /* ADD.W Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d178_0)(uae_u32 opcode) /* ADD.W Dn,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d179_0)(uae_u32 opcode) /* ADD.W Dn,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_ilong(2); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d180_0)(uae_u32 opcode) /* ADDX.L Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = dst + src + (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgo) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s32)(newv)) == 0)); - SET_NFLG (((uae_s32)(newv)) < 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d188_0)(uae_u32 opcode) /* ADDX.L -(An),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 4; -{ uae_s32 src = get_long(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; -{ uae_s32 dst = get_long(dsta); - m68k_areg (regs, dstreg) = dsta; -{ uae_u32 newv = dst + src + (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgo) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s32)(newv)) == 0)); - SET_NFLG (((uae_s32)(newv)) < 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d190_0)(uae_u32 opcode) /* ADD.L Dn,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d198_0)(uae_u32 opcode) /* ADD.L Dn,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 dst = get_long(dsta); - m68k_areg(regs, dstreg) += 4; -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d1a0_0)(uae_u32 opcode) /* ADD.L Dn,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; -{ uae_s32 dst = get_long(dsta); - m68k_areg (regs, dstreg) = dsta; -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d1a8_0)(uae_u32 opcode) /* ADD.L Dn,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d1b0_0)(uae_u32 opcode) /* ADD.L Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{m68k_incpc(2); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d1b8_0)(uae_u32 opcode) /* ADD.L Dn,(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d1b9_0)(uae_u32 opcode) /* ADD.L Dn,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_ilong(2); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_d1c0_0)(uae_u32 opcode) /* ADDA.L Dn,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst + src; - m68k_areg(regs, dstreg) = (newv); -}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_d1c8_0)(uae_u32 opcode) /* ADDA.L An,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_areg(regs, srcreg); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst + src; - m68k_areg(regs, dstreg) = (newv); -}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_d1d0_0)(uae_u32 opcode) /* ADDA.L (An),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst + src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_d1d8_0)(uae_u32 opcode) /* ADDA.L (An)+,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); - m68k_areg(regs, srcreg) += 4; -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst + src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#endif - -#ifdef PART_8 -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_d1e0_0)(uae_u32 opcode) /* ADDA.L -(An),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 4; -{ uae_s32 src = get_long(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst + src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_d1e8_0)(uae_u32 opcode) /* ADDA.L (d16,An),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst + src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_d1f0_0)(uae_u32 opcode) /* ADDA.L (d8,An,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst + src; - m68k_areg(regs, dstreg) = (newv); -}}}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_d1f8_0)(uae_u32 opcode) /* ADDA.L (xxx).W,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst + src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_d1f9_0)(uae_u32 opcode) /* ADDA.L (xxx).L,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst + src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_d1fa_0)(uae_u32 opcode) /* ADDA.L (d16,PC),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst + src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_d1fb_0)(uae_u32 opcode) /* ADDA.L (d8,PC,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{m68k_incpc(2); -{ uaecptr tmppc = m68k_getpc(); - uaecptr srca = get_disp_ea_020(tmppc, next_iword()); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst + src; - m68k_areg(regs, dstreg) = (newv); -}}}}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_d1fc_0)(uae_u32 opcode) /* ADDA.L #.L,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst + src; - m68k_areg(regs, dstreg) = (newv); -}}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_e000_0)(uae_u32 opcode) /* ASR.B #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 cnt = srcreg; -{ uae_s8 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u8)data; - uae_u32 sign = (0x80 & val) >> 7; - cnt &= 63; - CLEAR_CZNV; - if (cnt >= 8) { - val = 0xff & (uae_u32)-(uae_s32)sign; - SET_CFLG (sign); - COPY_CARRY; - } else { - val >>= cnt - 1; - SET_CFLG (val & 1); - COPY_CARRY; - val >>= 1; - val |= (0xff << (8 - cnt)) & (uae_u32)-(uae_s32)sign; - val &= 0xff; - } - SET_ZFLG (((uae_s8)(val)) == 0); - SET_NFLG (((uae_s8)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((val) & 0xff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e008_0)(uae_u32 opcode) /* LSR.B #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 cnt = srcreg; -{ uae_s8 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u8)data; - cnt &= 63; - CLEAR_CZNV; - if (cnt >= 8) { - SET_CFLG ((cnt == 8) & (val >> 7)); - COPY_CARRY; - val = 0; - } else { - val >>= cnt - 1; - SET_CFLG (val & 1); - COPY_CARRY; - val >>= 1; - } - SET_ZFLG (((uae_s8)(val)) == 0); - SET_NFLG (((uae_s8)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((val) & 0xff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e010_0)(uae_u32 opcode) /* ROXR.B #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 cnt = srcreg; -{ uae_s8 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u8)data; - cnt &= 63; - CLEAR_CZNV; -{ cnt--; - { - uae_u32 carry; - uae_u32 hival = (val << 1) | GET_XFLG; - hival <<= (7 - cnt); - val >>= cnt; - carry = val & 1; - val >>= 1; - val |= hival; - SET_XFLG (carry); - val &= 0xff; - } } - SET_CFLG (GET_XFLG); - SET_ZFLG (((uae_s8)(val)) == 0); - SET_NFLG (((uae_s8)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((val) & 0xff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e018_0)(uae_u32 opcode) /* ROR.B #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 cnt = srcreg; -{ uae_s8 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u8)data; - cnt &= 63; - CLEAR_CZNV; -{ uae_u32 hival; - cnt &= 7; - hival = val << (8 - cnt); - val >>= cnt; - val |= hival; - val &= 0xff; - SET_CFLG ((val & 0x80) >> 7); - } - SET_ZFLG (((uae_s8)(val)) == 0); - SET_NFLG (((uae_s8)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((val) & 0xff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e020_0)(uae_u32 opcode) /* ASR.B Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 cnt = m68k_dreg(regs, srcreg); -{ uae_s8 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u8)data; - uae_u32 sign = (0x80 & val) >> 7; - cnt &= 63; - CLEAR_CZNV; - if (cnt >= 8) { - val = 0xff & (uae_u32)-(uae_s32)sign; - SET_CFLG (sign); - COPY_CARRY; - } else if (cnt > 0) { - val >>= cnt - 1; - SET_CFLG (val & 1); - COPY_CARRY; - val >>= 1; - val |= (0xff << (8 - cnt)) & (uae_u32)-(uae_s32)sign; - val &= 0xff; - } - SET_ZFLG (((uae_s8)(val)) == 0); - SET_NFLG (((uae_s8)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((val) & 0xff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e028_0)(uae_u32 opcode) /* LSR.B Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 cnt = m68k_dreg(regs, srcreg); -{ uae_s8 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u8)data; - cnt &= 63; - CLEAR_CZNV; - if (cnt >= 8) { - SET_CFLG ((cnt == 8) & (val >> 7)); - COPY_CARRY; - val = 0; - } else if (cnt > 0) { - val >>= cnt - 1; - SET_CFLG (val & 1); - COPY_CARRY; - val >>= 1; - } - SET_ZFLG (((uae_s8)(val)) == 0); - SET_NFLG (((uae_s8)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((val) & 0xff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e030_0)(uae_u32 opcode) /* ROXR.B Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 cnt = m68k_dreg(regs, srcreg); -{ uae_s8 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u8)data; - cnt &= 63; - CLEAR_CZNV; - if (cnt >= 36) cnt -= 36; - if (cnt >= 18) cnt -= 18; - if (cnt >= 9) cnt -= 9; - if (cnt > 0) { - cnt--; - { - uae_u32 carry; - uae_u32 hival = (val << 1) | GET_XFLG; - hival <<= (7 - cnt); - val >>= cnt; - carry = val & 1; - val >>= 1; - val |= hival; - SET_XFLG (carry); - val &= 0xff; - } } - SET_CFLG (GET_XFLG); - SET_ZFLG (((uae_s8)(val)) == 0); - SET_NFLG (((uae_s8)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((val) & 0xff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e038_0)(uae_u32 opcode) /* ROR.B Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 cnt = m68k_dreg(regs, srcreg); -{ uae_s8 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u8)data; - cnt &= 63; - CLEAR_CZNV; - if (cnt > 0) { uae_u32 hival; - cnt &= 7; - hival = val << (8 - cnt); - val >>= cnt; - val |= hival; - val &= 0xff; - SET_CFLG ((val & 0x80) >> 7); - } - SET_ZFLG (((uae_s8)(val)) == 0); - SET_NFLG (((uae_s8)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((val) & 0xff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e040_0)(uae_u32 opcode) /* ASR.W #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 cnt = srcreg; -{ uae_s16 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u16)data; - uae_u32 sign = (0x8000 & val) >> 15; - cnt &= 63; - CLEAR_CZNV; - if (cnt >= 16) { - val = 0xffff & (uae_u32)-(uae_s32)sign; - SET_CFLG (sign); - COPY_CARRY; - } else { - val >>= cnt - 1; - SET_CFLG (val & 1); - COPY_CARRY; - val >>= 1; - val |= (0xffff << (16 - cnt)) & (uae_u32)-(uae_s32)sign; - val &= 0xffff; - } - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((val) & 0xffff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e048_0)(uae_u32 opcode) /* LSR.W #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 cnt = srcreg; -{ uae_s16 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u16)data; - cnt &= 63; - CLEAR_CZNV; - if (cnt >= 16) { - SET_CFLG ((cnt == 16) & (val >> 15)); - COPY_CARRY; - val = 0; - } else { - val >>= cnt - 1; - SET_CFLG (val & 1); - COPY_CARRY; - val >>= 1; - } - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((val) & 0xffff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e050_0)(uae_u32 opcode) /* ROXR.W #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 cnt = srcreg; -{ uae_s16 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u16)data; - cnt &= 63; - CLEAR_CZNV; -{ cnt--; - { - uae_u32 carry; - uae_u32 hival = (val << 1) | GET_XFLG; - hival <<= (15 - cnt); - val >>= cnt; - carry = val & 1; - val >>= 1; - val |= hival; - SET_XFLG (carry); - val &= 0xffff; - } } - SET_CFLG (GET_XFLG); - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((val) & 0xffff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e058_0)(uae_u32 opcode) /* ROR.W #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 cnt = srcreg; -{ uae_s16 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u16)data; - cnt &= 63; - CLEAR_CZNV; -{ uae_u32 hival; - cnt &= 15; - hival = val << (16 - cnt); - val >>= cnt; - val |= hival; - val &= 0xffff; - SET_CFLG ((val & 0x8000) >> 15); - } - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((val) & 0xffff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e060_0)(uae_u32 opcode) /* ASR.W Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 cnt = m68k_dreg(regs, srcreg); -{ uae_s16 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u16)data; - uae_u32 sign = (0x8000 & val) >> 15; - cnt &= 63; - CLEAR_CZNV; - if (cnt >= 16) { - val = 0xffff & (uae_u32)-(uae_s32)sign; - SET_CFLG (sign); - COPY_CARRY; - } else if (cnt > 0) { - val >>= cnt - 1; - SET_CFLG (val & 1); - COPY_CARRY; - val >>= 1; - val |= (0xffff << (16 - cnt)) & (uae_u32)-(uae_s32)sign; - val &= 0xffff; - } - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((val) & 0xffff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e068_0)(uae_u32 opcode) /* LSR.W Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 cnt = m68k_dreg(regs, srcreg); -{ uae_s16 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u16)data; - cnt &= 63; - CLEAR_CZNV; - if (cnt >= 16) { - SET_CFLG ((cnt == 16) & (val >> 15)); - COPY_CARRY; - val = 0; - } else if (cnt > 0) { - val >>= cnt - 1; - SET_CFLG (val & 1); - COPY_CARRY; - val >>= 1; - } - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((val) & 0xffff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e070_0)(uae_u32 opcode) /* ROXR.W Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 cnt = m68k_dreg(regs, srcreg); -{ uae_s16 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u16)data; - cnt &= 63; - CLEAR_CZNV; - if (cnt >= 34) cnt -= 34; - if (cnt >= 17) cnt -= 17; - if (cnt > 0) { - cnt--; - { - uae_u32 carry; - uae_u32 hival = (val << 1) | GET_XFLG; - hival <<= (15 - cnt); - val >>= cnt; - carry = val & 1; - val >>= 1; - val |= hival; - SET_XFLG (carry); - val &= 0xffff; - } } - SET_CFLG (GET_XFLG); - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((val) & 0xffff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e078_0)(uae_u32 opcode) /* ROR.W Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 cnt = m68k_dreg(regs, srcreg); -{ uae_s16 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u16)data; - cnt &= 63; - CLEAR_CZNV; - if (cnt > 0) { uae_u32 hival; - cnt &= 15; - hival = val << (16 - cnt); - val >>= cnt; - val |= hival; - val &= 0xffff; - SET_CFLG ((val & 0x8000) >> 15); - } - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((val) & 0xffff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e080_0)(uae_u32 opcode) /* ASR.L #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 cnt = srcreg; -{ uae_s32 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = data; - uae_u32 sign = (0x80000000 & val) >> 31; - cnt &= 63; - CLEAR_CZNV; - if (cnt >= 32) { - val = 0xffffffff & (uae_u32)-(uae_s32)sign; - SET_CFLG (sign); - COPY_CARRY; - } else { - val >>= cnt - 1; - SET_CFLG (val & 1); - COPY_CARRY; - val >>= 1; - val |= (0xffffffff << (32 - cnt)) & (uae_u32)-(uae_s32)sign; - val &= 0xffffffff; - } - SET_ZFLG (((uae_s32)(val)) == 0); - SET_NFLG (((uae_s32)(val)) < 0); - m68k_dreg(regs, dstreg) = (val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e088_0)(uae_u32 opcode) /* LSR.L #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 cnt = srcreg; -{ uae_s32 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = data; - cnt &= 63; - CLEAR_CZNV; - if (cnt >= 32) { - SET_CFLG ((cnt == 32) & (val >> 31)); - COPY_CARRY; - val = 0; - } else { - val >>= cnt - 1; - SET_CFLG (val & 1); - COPY_CARRY; - val >>= 1; - } - SET_ZFLG (((uae_s32)(val)) == 0); - SET_NFLG (((uae_s32)(val)) < 0); - m68k_dreg(regs, dstreg) = (val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e090_0)(uae_u32 opcode) /* ROXR.L #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 cnt = srcreg; -{ uae_s32 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = data; - cnt &= 63; - CLEAR_CZNV; -{ cnt--; - { - uae_u32 carry; - uae_u32 hival = (val << 1) | GET_XFLG; - hival <<= (31 - cnt); - val >>= cnt; - carry = val & 1; - val >>= 1; - val |= hival; - SET_XFLG (carry); - val &= 0xffffffff; - } } - SET_CFLG (GET_XFLG); - SET_ZFLG (((uae_s32)(val)) == 0); - SET_NFLG (((uae_s32)(val)) < 0); - m68k_dreg(regs, dstreg) = (val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e098_0)(uae_u32 opcode) /* ROR.L #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 cnt = srcreg; -{ uae_s32 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = data; - cnt &= 63; - CLEAR_CZNV; -{ uae_u32 hival; - cnt &= 31; - hival = val << (32 - cnt); - val >>= cnt; - val |= hival; - val &= 0xffffffff; - SET_CFLG ((val & 0x80000000) >> 31); - } - SET_ZFLG (((uae_s32)(val)) == 0); - SET_NFLG (((uae_s32)(val)) < 0); - m68k_dreg(regs, dstreg) = (val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e0a0_0)(uae_u32 opcode) /* ASR.L Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 cnt = m68k_dreg(regs, srcreg); -{ uae_s32 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = data; - uae_u32 sign = (0x80000000 & val) >> 31; - cnt &= 63; - CLEAR_CZNV; - if (cnt >= 32) { - val = 0xffffffff & (uae_u32)-(uae_s32)sign; - SET_CFLG (sign); - COPY_CARRY; - } else if (cnt > 0) { - val >>= cnt - 1; - SET_CFLG (val & 1); - COPY_CARRY; - val >>= 1; - val |= (0xffffffff << (32 - cnt)) & (uae_u32)-(uae_s32)sign; - val &= 0xffffffff; - } - SET_ZFLG (((uae_s32)(val)) == 0); - SET_NFLG (((uae_s32)(val)) < 0); - m68k_dreg(regs, dstreg) = (val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e0a8_0)(uae_u32 opcode) /* LSR.L Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 cnt = m68k_dreg(regs, srcreg); -{ uae_s32 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = data; - cnt &= 63; - CLEAR_CZNV; - if (cnt >= 32) { - SET_CFLG ((cnt == 32) & (val >> 31)); - COPY_CARRY; - val = 0; - } else if (cnt > 0) { - val >>= cnt - 1; - SET_CFLG (val & 1); - COPY_CARRY; - val >>= 1; - } - SET_ZFLG (((uae_s32)(val)) == 0); - SET_NFLG (((uae_s32)(val)) < 0); - m68k_dreg(regs, dstreg) = (val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e0b0_0)(uae_u32 opcode) /* ROXR.L Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 cnt = m68k_dreg(regs, srcreg); -{ uae_s32 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = data; - cnt &= 63; - CLEAR_CZNV; - if (cnt >= 33) cnt -= 33; - if (cnt > 0) { - cnt--; - { - uae_u32 carry; - uae_u32 hival = (val << 1) | GET_XFLG; - hival <<= (31 - cnt); - val >>= cnt; - carry = val & 1; - val >>= 1; - val |= hival; - SET_XFLG (carry); - val &= 0xffffffff; - } } - SET_CFLG (GET_XFLG); - SET_ZFLG (((uae_s32)(val)) == 0); - SET_NFLG (((uae_s32)(val)) < 0); - m68k_dreg(regs, dstreg) = (val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e0b8_0)(uae_u32 opcode) /* ROR.L Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 cnt = m68k_dreg(regs, srcreg); -{ uae_s32 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = data; - cnt &= 63; - CLEAR_CZNV; - if (cnt > 0) { uae_u32 hival; - cnt &= 31; - hival = val << (32 - cnt); - val >>= cnt; - val |= hival; - val &= 0xffffffff; - SET_CFLG ((val & 0x80000000) >> 31); - } - SET_ZFLG (((uae_s32)(val)) == 0); - SET_NFLG (((uae_s32)(val)) < 0); - m68k_dreg(regs, dstreg) = (val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e0d0_0)(uae_u32 opcode) /* ASRW.W (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg); -{ uae_s16 data = get_word(dataa); -{ uae_u32 val = (uae_u16)data; - uae_u32 sign = 0x8000 & val; - uae_u32 cflg = val & 1; - val = (val >> 1) | sign; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - SET_CFLG (cflg); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e0d8_0)(uae_u32 opcode) /* ASRW.W (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg); -{ uae_s16 data = get_word(dataa); - m68k_areg(regs, srcreg) += 2; -{ uae_u32 val = (uae_u16)data; - uae_u32 sign = 0x8000 & val; - uae_u32 cflg = val & 1; - val = (val >> 1) | sign; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - SET_CFLG (cflg); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e0e0_0)(uae_u32 opcode) /* ASRW.W -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg) - 2; -{ uae_s16 data = get_word(dataa); - m68k_areg (regs, srcreg) = dataa; -{ uae_u32 val = (uae_u16)data; - uae_u32 sign = 0x8000 & val; - uae_u32 cflg = val & 1; - val = (val >> 1) | sign; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - SET_CFLG (cflg); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e0e8_0)(uae_u32 opcode) /* ASRW.W (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 data = get_word(dataa); -{ uae_u32 val = (uae_u16)data; - uae_u32 sign = 0x8000 & val; - uae_u32 cflg = val & 1; - val = (val >> 1) | sign; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - SET_CFLG (cflg); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e0f0_0)(uae_u32 opcode) /* ASRW.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr dataa = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 data = get_word(dataa); -{ uae_u32 val = (uae_u16)data; - uae_u32 sign = 0x8000 & val; - uae_u32 cflg = val & 1; - val = (val >> 1) | sign; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - SET_CFLG (cflg); - COPY_CARRY; - put_word(dataa,val); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e0f8_0)(uae_u32 opcode) /* ASRW.W (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr dataa = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 data = get_word(dataa); -{ uae_u32 val = (uae_u16)data; - uae_u32 sign = 0x8000 & val; - uae_u32 cflg = val & 1; - val = (val >> 1) | sign; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - SET_CFLG (cflg); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e0f9_0)(uae_u32 opcode) /* ASRW.W (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr dataa = get_ilong(2); -{ uae_s16 data = get_word(dataa); -{ uae_u32 val = (uae_u16)data; - uae_u32 sign = 0x8000 & val; - uae_u32 cflg = val & 1; - val = (val >> 1) | sign; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - SET_CFLG (cflg); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e100_0)(uae_u32 opcode) /* ASL.B #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 cnt = srcreg; -{ uae_s8 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u8)data; - cnt &= 63; - CLEAR_CZNV; - if (cnt >= 8) { - SET_VFLG (val != 0); - SET_CFLG (cnt == 8 ? val & 1 : 0); - COPY_CARRY; - val = 0; - } else { - uae_u32 mask = (0xff << (7 - cnt)) & 0xff; - SET_VFLG ((val & mask) != mask && (val & mask) != 0); - val <<= cnt - 1; - SET_CFLG ((val & 0x80) >> 7); - COPY_CARRY; - val <<= 1; - val &= 0xff; - } - SET_ZFLG (((uae_s8)(val)) == 0); - SET_NFLG (((uae_s8)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((val) & 0xff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e108_0)(uae_u32 opcode) /* LSL.B #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 cnt = srcreg; -{ uae_s8 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u8)data; - cnt &= 63; - CLEAR_CZNV; - if (cnt >= 8) { - SET_CFLG (cnt == 8 ? val & 1 : 0); - COPY_CARRY; - val = 0; - } else { - val <<= (cnt - 1); - SET_CFLG ((val & 0x80) >> 7); - COPY_CARRY; - val <<= 1; - val &= 0xff; - } - SET_ZFLG (((uae_s8)(val)) == 0); - SET_NFLG (((uae_s8)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((val) & 0xff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e110_0)(uae_u32 opcode) /* ROXL.B #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 cnt = srcreg; -{ uae_s8 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u8)data; - cnt &= 63; - CLEAR_CZNV; -{ cnt--; - { - uae_u32 carry; - uae_u32 loval = val >> (7 - cnt); - carry = loval & 1; - val = (((val << 1) | GET_XFLG) << cnt) | (loval >> 1); - SET_XFLG (carry); - val &= 0xff; - } } - SET_CFLG (GET_XFLG); - SET_ZFLG (((uae_s8)(val)) == 0); - SET_NFLG (((uae_s8)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((val) & 0xff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e118_0)(uae_u32 opcode) /* ROL.B #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 cnt = srcreg; -{ uae_s8 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u8)data; - cnt &= 63; - CLEAR_CZNV; -{ uae_u32 loval; - cnt &= 7; - loval = val >> (8 - cnt); - val <<= cnt; - val |= loval; - val &= 0xff; - SET_CFLG (val & 1); -} - SET_ZFLG (((uae_s8)(val)) == 0); - SET_NFLG (((uae_s8)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((val) & 0xff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e120_0)(uae_u32 opcode) /* ASL.B Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 cnt = m68k_dreg(regs, srcreg); -{ uae_s8 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u8)data; - cnt &= 63; - CLEAR_CZNV; - if (cnt >= 8) { - SET_VFLG (val != 0); - SET_CFLG (cnt == 8 ? val & 1 : 0); - COPY_CARRY; - val = 0; - } else if (cnt > 0) { - uae_u32 mask = (0xff << (7 - cnt)) & 0xff; - SET_VFLG ((val & mask) != mask && (val & mask) != 0); - val <<= cnt - 1; - SET_CFLG ((val & 0x80) >> 7); - COPY_CARRY; - val <<= 1; - val &= 0xff; - } - SET_ZFLG (((uae_s8)(val)) == 0); - SET_NFLG (((uae_s8)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((val) & 0xff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e128_0)(uae_u32 opcode) /* LSL.B Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 cnt = m68k_dreg(regs, srcreg); -{ uae_s8 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u8)data; - cnt &= 63; - CLEAR_CZNV; - if (cnt >= 8) { - SET_CFLG (cnt == 8 ? val & 1 : 0); - COPY_CARRY; - val = 0; - } else if (cnt > 0) { - val <<= (cnt - 1); - SET_CFLG ((val & 0x80) >> 7); - COPY_CARRY; - val <<= 1; - val &= 0xff; - } - SET_ZFLG (((uae_s8)(val)) == 0); - SET_NFLG (((uae_s8)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((val) & 0xff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e130_0)(uae_u32 opcode) /* ROXL.B Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 cnt = m68k_dreg(regs, srcreg); -{ uae_s8 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u8)data; - cnt &= 63; - CLEAR_CZNV; - if (cnt >= 36) cnt -= 36; - if (cnt >= 18) cnt -= 18; - if (cnt >= 9) cnt -= 9; - if (cnt > 0) { - cnt--; - { - uae_u32 carry; - uae_u32 loval = val >> (7 - cnt); - carry = loval & 1; - val = (((val << 1) | GET_XFLG) << cnt) | (loval >> 1); - SET_XFLG (carry); - val &= 0xff; - } } - SET_CFLG (GET_XFLG); - SET_ZFLG (((uae_s8)(val)) == 0); - SET_NFLG (((uae_s8)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((val) & 0xff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e138_0)(uae_u32 opcode) /* ROL.B Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 cnt = m68k_dreg(regs, srcreg); -{ uae_s8 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u8)data; - cnt &= 63; - CLEAR_CZNV; - if (cnt > 0) { - uae_u32 loval; - cnt &= 7; - loval = val >> (8 - cnt); - val <<= cnt; - val |= loval; - val &= 0xff; - SET_CFLG (val & 1); -} - SET_ZFLG (((uae_s8)(val)) == 0); - SET_NFLG (((uae_s8)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((val) & 0xff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e140_0)(uae_u32 opcode) /* ASL.W #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 cnt = srcreg; -{ uae_s16 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u16)data; - cnt &= 63; - CLEAR_CZNV; - if (cnt >= 16) { - SET_VFLG (val != 0); - SET_CFLG (cnt == 16 ? val & 1 : 0); - COPY_CARRY; - val = 0; - } else { - uae_u32 mask = (0xffff << (15 - cnt)) & 0xffff; - SET_VFLG ((val & mask) != mask && (val & mask) != 0); - val <<= cnt - 1; - SET_CFLG ((val & 0x8000) >> 15); - COPY_CARRY; - val <<= 1; - val &= 0xffff; - } - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((val) & 0xffff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e148_0)(uae_u32 opcode) /* LSL.W #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 cnt = srcreg; -{ uae_s16 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u16)data; - cnt &= 63; - CLEAR_CZNV; - if (cnt >= 16) { - SET_CFLG (cnt == 16 ? val & 1 : 0); - COPY_CARRY; - val = 0; - } else { - val <<= (cnt - 1); - SET_CFLG ((val & 0x8000) >> 15); - COPY_CARRY; - val <<= 1; - val &= 0xffff; - } - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((val) & 0xffff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e150_0)(uae_u32 opcode) /* ROXL.W #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 cnt = srcreg; -{ uae_s16 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u16)data; - cnt &= 63; - CLEAR_CZNV; -{ cnt--; - { - uae_u32 carry; - uae_u32 loval = val >> (15 - cnt); - carry = loval & 1; - val = (((val << 1) | GET_XFLG) << cnt) | (loval >> 1); - SET_XFLG (carry); - val &= 0xffff; - } } - SET_CFLG (GET_XFLG); - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((val) & 0xffff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e158_0)(uae_u32 opcode) /* ROL.W #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 cnt = srcreg; -{ uae_s16 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u16)data; - cnt &= 63; - CLEAR_CZNV; -{ uae_u32 loval; - cnt &= 15; - loval = val >> (16 - cnt); - val <<= cnt; - val |= loval; - val &= 0xffff; - SET_CFLG (val & 1); -} - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((val) & 0xffff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e160_0)(uae_u32 opcode) /* ASL.W Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 cnt = m68k_dreg(regs, srcreg); -{ uae_s16 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u16)data; - cnt &= 63; - CLEAR_CZNV; - if (cnt >= 16) { - SET_VFLG (val != 0); - SET_CFLG (cnt == 16 ? val & 1 : 0); - COPY_CARRY; - val = 0; - } else if (cnt > 0) { - uae_u32 mask = (0xffff << (15 - cnt)) & 0xffff; - SET_VFLG ((val & mask) != mask && (val & mask) != 0); - val <<= cnt - 1; - SET_CFLG ((val & 0x8000) >> 15); - COPY_CARRY; - val <<= 1; - val &= 0xffff; - } - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((val) & 0xffff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e168_0)(uae_u32 opcode) /* LSL.W Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 cnt = m68k_dreg(regs, srcreg); -{ uae_s16 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u16)data; - cnt &= 63; - CLEAR_CZNV; - if (cnt >= 16) { - SET_CFLG (cnt == 16 ? val & 1 : 0); - COPY_CARRY; - val = 0; - } else if (cnt > 0) { - val <<= (cnt - 1); - SET_CFLG ((val & 0x8000) >> 15); - COPY_CARRY; - val <<= 1; - val &= 0xffff; - } - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((val) & 0xffff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e170_0)(uae_u32 opcode) /* ROXL.W Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 cnt = m68k_dreg(regs, srcreg); -{ uae_s16 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u16)data; - cnt &= 63; - CLEAR_CZNV; - if (cnt >= 34) cnt -= 34; - if (cnt >= 17) cnt -= 17; - if (cnt > 0) { - cnt--; - { - uae_u32 carry; - uae_u32 loval = val >> (15 - cnt); - carry = loval & 1; - val = (((val << 1) | GET_XFLG) << cnt) | (loval >> 1); - SET_XFLG (carry); - val &= 0xffff; - } } - SET_CFLG (GET_XFLG); - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((val) & 0xffff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e178_0)(uae_u32 opcode) /* ROL.W Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 cnt = m68k_dreg(regs, srcreg); -{ uae_s16 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = (uae_u16)data; - cnt &= 63; - CLEAR_CZNV; - if (cnt > 0) { - uae_u32 loval; - cnt &= 15; - loval = val >> (16 - cnt); - val <<= cnt; - val |= loval; - val &= 0xffff; - SET_CFLG (val & 1); -} - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((val) & 0xffff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e180_0)(uae_u32 opcode) /* ASL.L #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 cnt = srcreg; -{ uae_s32 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = data; - cnt &= 63; - CLEAR_CZNV; - if (cnt >= 32) { - SET_VFLG (val != 0); - SET_CFLG (cnt == 32 ? val & 1 : 0); - COPY_CARRY; - val = 0; - } else { - uae_u32 mask = (0xffffffff << (31 - cnt)) & 0xffffffff; - SET_VFLG ((val & mask) != mask && (val & mask) != 0); - val <<= cnt - 1; - SET_CFLG ((val & 0x80000000) >> 31); - COPY_CARRY; - val <<= 1; - val &= 0xffffffff; - } - SET_ZFLG (((uae_s32)(val)) == 0); - SET_NFLG (((uae_s32)(val)) < 0); - m68k_dreg(regs, dstreg) = (val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e188_0)(uae_u32 opcode) /* LSL.L #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 cnt = srcreg; -{ uae_s32 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = data; - cnt &= 63; - CLEAR_CZNV; - if (cnt >= 32) { - SET_CFLG (cnt == 32 ? val & 1 : 0); - COPY_CARRY; - val = 0; - } else { - val <<= (cnt - 1); - SET_CFLG ((val & 0x80000000) >> 31); - COPY_CARRY; - val <<= 1; - val &= 0xffffffff; - } - SET_ZFLG (((uae_s32)(val)) == 0); - SET_NFLG (((uae_s32)(val)) < 0); - m68k_dreg(regs, dstreg) = (val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e190_0)(uae_u32 opcode) /* ROXL.L #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 cnt = srcreg; -{ uae_s32 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = data; - cnt &= 63; - CLEAR_CZNV; -{ cnt--; - { - uae_u32 carry; - uae_u32 loval = val >> (31 - cnt); - carry = loval & 1; - val = (((val << 1) | GET_XFLG) << cnt) | (loval >> 1); - SET_XFLG (carry); - val &= 0xffffffff; - } } - SET_CFLG (GET_XFLG); - SET_ZFLG (((uae_s32)(val)) == 0); - SET_NFLG (((uae_s32)(val)) < 0); - m68k_dreg(regs, dstreg) = (val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e198_0)(uae_u32 opcode) /* ROL.L #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 cnt = srcreg; -{ uae_s32 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = data; - cnt &= 63; - CLEAR_CZNV; -{ uae_u32 loval; - cnt &= 31; - loval = val >> (32 - cnt); - val <<= cnt; - val |= loval; - val &= 0xffffffff; - SET_CFLG (val & 1); -} - SET_ZFLG (((uae_s32)(val)) == 0); - SET_NFLG (((uae_s32)(val)) < 0); - m68k_dreg(regs, dstreg) = (val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e1a0_0)(uae_u32 opcode) /* ASL.L Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 cnt = m68k_dreg(regs, srcreg); -{ uae_s32 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = data; - cnt &= 63; - CLEAR_CZNV; - if (cnt >= 32) { - SET_VFLG (val != 0); - SET_CFLG (cnt == 32 ? val & 1 : 0); - COPY_CARRY; - val = 0; - } else if (cnt > 0) { - uae_u32 mask = (0xffffffff << (31 - cnt)) & 0xffffffff; - SET_VFLG ((val & mask) != mask && (val & mask) != 0); - val <<= cnt - 1; - SET_CFLG ((val & 0x80000000) >> 31); - COPY_CARRY; - val <<= 1; - val &= 0xffffffff; - } - SET_ZFLG (((uae_s32)(val)) == 0); - SET_NFLG (((uae_s32)(val)) < 0); - m68k_dreg(regs, dstreg) = (val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e1a8_0)(uae_u32 opcode) /* LSL.L Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 cnt = m68k_dreg(regs, srcreg); -{ uae_s32 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = data; - cnt &= 63; - CLEAR_CZNV; - if (cnt >= 32) { - SET_CFLG (cnt == 32 ? val & 1 : 0); - COPY_CARRY; - val = 0; - } else if (cnt > 0) { - val <<= (cnt - 1); - SET_CFLG ((val & 0x80000000) >> 31); - COPY_CARRY; - val <<= 1; - val &= 0xffffffff; - } - SET_ZFLG (((uae_s32)(val)) == 0); - SET_NFLG (((uae_s32)(val)) < 0); - m68k_dreg(regs, dstreg) = (val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e1b0_0)(uae_u32 opcode) /* ROXL.L Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 cnt = m68k_dreg(regs, srcreg); -{ uae_s32 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = data; - cnt &= 63; - CLEAR_CZNV; - if (cnt >= 33) cnt -= 33; - if (cnt > 0) { - cnt--; - { - uae_u32 carry; - uae_u32 loval = val >> (31 - cnt); - carry = loval & 1; - val = (((val << 1) | GET_XFLG) << cnt) | (loval >> 1); - SET_XFLG (carry); - val &= 0xffffffff; - } } - SET_CFLG (GET_XFLG); - SET_ZFLG (((uae_s32)(val)) == 0); - SET_NFLG (((uae_s32)(val)) < 0); - m68k_dreg(regs, dstreg) = (val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e1b8_0)(uae_u32 opcode) /* ROL.L Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 cnt = m68k_dreg(regs, srcreg); -{ uae_s32 data = m68k_dreg(regs, dstreg); -{ uae_u32 val = data; - cnt &= 63; - CLEAR_CZNV; - if (cnt > 0) { - uae_u32 loval; - cnt &= 31; - loval = val >> (32 - cnt); - val <<= cnt; - val |= loval; - val &= 0xffffffff; - SET_CFLG (val & 1); -} - SET_ZFLG (((uae_s32)(val)) == 0); - SET_NFLG (((uae_s32)(val)) < 0); - m68k_dreg(regs, dstreg) = (val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e1d0_0)(uae_u32 opcode) /* ASLW.W (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg); -{ uae_s16 data = get_word(dataa); -{ uae_u32 val = (uae_u16)data; - uae_u32 sign = 0x8000 & val; - uae_u32 sign2; - val <<= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - sign2 = 0x8000 & val; - SET_CFLG (sign != 0); - COPY_CARRY; - SET_VFLG (GET_VFLG | (sign2 != sign)); - put_word(dataa,val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e1d8_0)(uae_u32 opcode) /* ASLW.W (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg); -{ uae_s16 data = get_word(dataa); - m68k_areg(regs, srcreg) += 2; -{ uae_u32 val = (uae_u16)data; - uae_u32 sign = 0x8000 & val; - uae_u32 sign2; - val <<= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - sign2 = 0x8000 & val; - SET_CFLG (sign != 0); - COPY_CARRY; - SET_VFLG (GET_VFLG | (sign2 != sign)); - put_word(dataa,val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e1e0_0)(uae_u32 opcode) /* ASLW.W -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg) - 2; -{ uae_s16 data = get_word(dataa); - m68k_areg (regs, srcreg) = dataa; -{ uae_u32 val = (uae_u16)data; - uae_u32 sign = 0x8000 & val; - uae_u32 sign2; - val <<= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - sign2 = 0x8000 & val; - SET_CFLG (sign != 0); - COPY_CARRY; - SET_VFLG (GET_VFLG | (sign2 != sign)); - put_word(dataa,val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e1e8_0)(uae_u32 opcode) /* ASLW.W (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 data = get_word(dataa); -{ uae_u32 val = (uae_u16)data; - uae_u32 sign = 0x8000 & val; - uae_u32 sign2; - val <<= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - sign2 = 0x8000 & val; - SET_CFLG (sign != 0); - COPY_CARRY; - SET_VFLG (GET_VFLG | (sign2 != sign)); - put_word(dataa,val); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e1f0_0)(uae_u32 opcode) /* ASLW.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr dataa = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 data = get_word(dataa); -{ uae_u32 val = (uae_u16)data; - uae_u32 sign = 0x8000 & val; - uae_u32 sign2; - val <<= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - sign2 = 0x8000 & val; - SET_CFLG (sign != 0); - COPY_CARRY; - SET_VFLG (GET_VFLG | (sign2 != sign)); - put_word(dataa,val); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e1f8_0)(uae_u32 opcode) /* ASLW.W (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr dataa = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 data = get_word(dataa); -{ uae_u32 val = (uae_u16)data; - uae_u32 sign = 0x8000 & val; - uae_u32 sign2; - val <<= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - sign2 = 0x8000 & val; - SET_CFLG (sign != 0); - COPY_CARRY; - SET_VFLG (GET_VFLG | (sign2 != sign)); - put_word(dataa,val); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e1f9_0)(uae_u32 opcode) /* ASLW.W (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr dataa = get_ilong(2); -{ uae_s16 data = get_word(dataa); -{ uae_u32 val = (uae_u16)data; - uae_u32 sign = 0x8000 & val; - uae_u32 sign2; - val <<= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - sign2 = 0x8000 & val; - SET_CFLG (sign != 0); - COPY_CARRY; - SET_VFLG (GET_VFLG | (sign2 != sign)); - put_word(dataa,val); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e2d0_0)(uae_u32 opcode) /* LSRW.W (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg); -{ uae_s16 data = get_word(dataa); -{ uae_u32 val = (uae_u16)data; - uae_u32 carry = val & 1; - val >>= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e2d8_0)(uae_u32 opcode) /* LSRW.W (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg); -{ uae_s16 data = get_word(dataa); - m68k_areg(regs, srcreg) += 2; -{ uae_u32 val = (uae_u16)data; - uae_u32 carry = val & 1; - val >>= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e2e0_0)(uae_u32 opcode) /* LSRW.W -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg) - 2; -{ uae_s16 data = get_word(dataa); - m68k_areg (regs, srcreg) = dataa; -{ uae_u32 val = (uae_u16)data; - uae_u32 carry = val & 1; - val >>= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e2e8_0)(uae_u32 opcode) /* LSRW.W (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 data = get_word(dataa); -{ uae_u32 val = (uae_u16)data; - uae_u32 carry = val & 1; - val >>= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e2f0_0)(uae_u32 opcode) /* LSRW.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr dataa = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 data = get_word(dataa); -{ uae_u32 val = (uae_u16)data; - uae_u32 carry = val & 1; - val >>= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry); - COPY_CARRY; - put_word(dataa,val); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e2f8_0)(uae_u32 opcode) /* LSRW.W (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr dataa = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 data = get_word(dataa); -{ uae_u32 val = (uae_u16)data; - uae_u32 carry = val & 1; - val >>= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e2f9_0)(uae_u32 opcode) /* LSRW.W (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr dataa = get_ilong(2); -{ uae_s16 data = get_word(dataa); -{ uae_u32 val = (uae_u16)data; - uae_u32 carry = val & 1; - val >>= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e3d0_0)(uae_u32 opcode) /* LSLW.W (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg); -{ uae_s16 data = get_word(dataa); -{ uae_u16 val = data; - uae_u32 carry = val & 0x8000; - val <<= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry >> 15); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e3d8_0)(uae_u32 opcode) /* LSLW.W (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg); -{ uae_s16 data = get_word(dataa); - m68k_areg(regs, srcreg) += 2; -{ uae_u16 val = data; - uae_u32 carry = val & 0x8000; - val <<= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry >> 15); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e3e0_0)(uae_u32 opcode) /* LSLW.W -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg) - 2; -{ uae_s16 data = get_word(dataa); - m68k_areg (regs, srcreg) = dataa; -{ uae_u16 val = data; - uae_u32 carry = val & 0x8000; - val <<= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry >> 15); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e3e8_0)(uae_u32 opcode) /* LSLW.W (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 data = get_word(dataa); -{ uae_u16 val = data; - uae_u32 carry = val & 0x8000; - val <<= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry >> 15); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e3f0_0)(uae_u32 opcode) /* LSLW.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr dataa = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 data = get_word(dataa); -{ uae_u16 val = data; - uae_u32 carry = val & 0x8000; - val <<= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry >> 15); - COPY_CARRY; - put_word(dataa,val); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e3f8_0)(uae_u32 opcode) /* LSLW.W (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr dataa = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 data = get_word(dataa); -{ uae_u16 val = data; - uae_u32 carry = val & 0x8000; - val <<= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry >> 15); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e3f9_0)(uae_u32 opcode) /* LSLW.W (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr dataa = get_ilong(2); -{ uae_s16 data = get_word(dataa); -{ uae_u16 val = data; - uae_u32 carry = val & 0x8000; - val <<= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry >> 15); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e4d0_0)(uae_u32 opcode) /* ROXRW.W (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg); -{ uae_s16 data = get_word(dataa); -{ uae_u16 val = data; - uae_u32 carry = val & 1; - val >>= 1; - if (GET_XFLG) val |= 0x8000; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e4d8_0)(uae_u32 opcode) /* ROXRW.W (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg); -{ uae_s16 data = get_word(dataa); - m68k_areg(regs, srcreg) += 2; -{ uae_u16 val = data; - uae_u32 carry = val & 1; - val >>= 1; - if (GET_XFLG) val |= 0x8000; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e4e0_0)(uae_u32 opcode) /* ROXRW.W -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg) - 2; -{ uae_s16 data = get_word(dataa); - m68k_areg (regs, srcreg) = dataa; -{ uae_u16 val = data; - uae_u32 carry = val & 1; - val >>= 1; - if (GET_XFLG) val |= 0x8000; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e4e8_0)(uae_u32 opcode) /* ROXRW.W (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 data = get_word(dataa); -{ uae_u16 val = data; - uae_u32 carry = val & 1; - val >>= 1; - if (GET_XFLG) val |= 0x8000; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e4f0_0)(uae_u32 opcode) /* ROXRW.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr dataa = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 data = get_word(dataa); -{ uae_u16 val = data; - uae_u32 carry = val & 1; - val >>= 1; - if (GET_XFLG) val |= 0x8000; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry); - COPY_CARRY; - put_word(dataa,val); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e4f8_0)(uae_u32 opcode) /* ROXRW.W (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr dataa = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 data = get_word(dataa); -{ uae_u16 val = data; - uae_u32 carry = val & 1; - val >>= 1; - if (GET_XFLG) val |= 0x8000; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e4f9_0)(uae_u32 opcode) /* ROXRW.W (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr dataa = get_ilong(2); -{ uae_s16 data = get_word(dataa); -{ uae_u16 val = data; - uae_u32 carry = val & 1; - val >>= 1; - if (GET_XFLG) val |= 0x8000; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e5d0_0)(uae_u32 opcode) /* ROXLW.W (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg); -{ uae_s16 data = get_word(dataa); -{ uae_u16 val = data; - uae_u32 carry = val & 0x8000; - val <<= 1; - if (GET_XFLG) val |= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry >> 15); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e5d8_0)(uae_u32 opcode) /* ROXLW.W (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg); -{ uae_s16 data = get_word(dataa); - m68k_areg(regs, srcreg) += 2; -{ uae_u16 val = data; - uae_u32 carry = val & 0x8000; - val <<= 1; - if (GET_XFLG) val |= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry >> 15); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e5e0_0)(uae_u32 opcode) /* ROXLW.W -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg) - 2; -{ uae_s16 data = get_word(dataa); - m68k_areg (regs, srcreg) = dataa; -{ uae_u16 val = data; - uae_u32 carry = val & 0x8000; - val <<= 1; - if (GET_XFLG) val |= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry >> 15); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e5e8_0)(uae_u32 opcode) /* ROXLW.W (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 data = get_word(dataa); -{ uae_u16 val = data; - uae_u32 carry = val & 0x8000; - val <<= 1; - if (GET_XFLG) val |= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry >> 15); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e5f0_0)(uae_u32 opcode) /* ROXLW.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr dataa = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 data = get_word(dataa); -{ uae_u16 val = data; - uae_u32 carry = val & 0x8000; - val <<= 1; - if (GET_XFLG) val |= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry >> 15); - COPY_CARRY; - put_word(dataa,val); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e5f8_0)(uae_u32 opcode) /* ROXLW.W (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr dataa = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 data = get_word(dataa); -{ uae_u16 val = data; - uae_u32 carry = val & 0x8000; - val <<= 1; - if (GET_XFLG) val |= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry >> 15); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e5f9_0)(uae_u32 opcode) /* ROXLW.W (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr dataa = get_ilong(2); -{ uae_s16 data = get_word(dataa); -{ uae_u16 val = data; - uae_u32 carry = val & 0x8000; - val <<= 1; - if (GET_XFLG) val |= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry >> 15); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e6d0_0)(uae_u32 opcode) /* RORW.W (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg); -{ uae_s16 data = get_word(dataa); -{ uae_u16 val = data; - uae_u32 carry = val & 1; - val >>= 1; - if (carry) val |= 0x8000; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry); - put_word(dataa,val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e6d8_0)(uae_u32 opcode) /* RORW.W (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg); -{ uae_s16 data = get_word(dataa); - m68k_areg(regs, srcreg) += 2; -{ uae_u16 val = data; - uae_u32 carry = val & 1; - val >>= 1; - if (carry) val |= 0x8000; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry); - put_word(dataa,val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e6e0_0)(uae_u32 opcode) /* RORW.W -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg) - 2; -{ uae_s16 data = get_word(dataa); - m68k_areg (regs, srcreg) = dataa; -{ uae_u16 val = data; - uae_u32 carry = val & 1; - val >>= 1; - if (carry) val |= 0x8000; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry); - put_word(dataa,val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e6e8_0)(uae_u32 opcode) /* RORW.W (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 data = get_word(dataa); -{ uae_u16 val = data; - uae_u32 carry = val & 1; - val >>= 1; - if (carry) val |= 0x8000; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry); - put_word(dataa,val); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e6f0_0)(uae_u32 opcode) /* RORW.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr dataa = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 data = get_word(dataa); -{ uae_u16 val = data; - uae_u32 carry = val & 1; - val >>= 1; - if (carry) val |= 0x8000; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry); - put_word(dataa,val); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e6f8_0)(uae_u32 opcode) /* RORW.W (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr dataa = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 data = get_word(dataa); -{ uae_u16 val = data; - uae_u32 carry = val & 1; - val >>= 1; - if (carry) val |= 0x8000; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry); - put_word(dataa,val); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e6f9_0)(uae_u32 opcode) /* RORW.W (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr dataa = get_ilong(2); -{ uae_s16 data = get_word(dataa); -{ uae_u16 val = data; - uae_u32 carry = val & 1; - val >>= 1; - if (carry) val |= 0x8000; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry); - put_word(dataa,val); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e7d0_0)(uae_u32 opcode) /* ROLW.W (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg); -{ uae_s16 data = get_word(dataa); -{ uae_u16 val = data; - uae_u32 carry = val & 0x8000; - val <<= 1; - if (carry) val |= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry >> 15); - put_word(dataa,val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e7d8_0)(uae_u32 opcode) /* ROLW.W (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg); -{ uae_s16 data = get_word(dataa); - m68k_areg(regs, srcreg) += 2; -{ uae_u16 val = data; - uae_u32 carry = val & 0x8000; - val <<= 1; - if (carry) val |= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry >> 15); - put_word(dataa,val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e7e0_0)(uae_u32 opcode) /* ROLW.W -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg) - 2; -{ uae_s16 data = get_word(dataa); - m68k_areg (regs, srcreg) = dataa; -{ uae_u16 val = data; - uae_u32 carry = val & 0x8000; - val <<= 1; - if (carry) val |= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry >> 15); - put_word(dataa,val); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e7e8_0)(uae_u32 opcode) /* ROLW.W (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 data = get_word(dataa); -{ uae_u16 val = data; - uae_u32 carry = val & 0x8000; - val <<= 1; - if (carry) val |= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry >> 15); - put_word(dataa,val); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e7f0_0)(uae_u32 opcode) /* ROLW.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr dataa = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s16 data = get_word(dataa); -{ uae_u16 val = data; - uae_u32 carry = val & 0x8000; - val <<= 1; - if (carry) val |= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry >> 15); - put_word(dataa,val); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e7f8_0)(uae_u32 opcode) /* ROLW.W (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr dataa = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 data = get_word(dataa); -{ uae_u16 val = data; - uae_u32 carry = val & 0x8000; - val <<= 1; - if (carry) val |= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry >> 15); - put_word(dataa,val); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e7f9_0)(uae_u32 opcode) /* ROLW.W (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr dataa = get_ilong(2); -{ uae_s16 data = get_word(dataa); -{ uae_u16 val = data; - uae_u32 carry = val & 0x8000; - val <<= 1; - if (carry) val |= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry >> 15); - put_word(dataa,val); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e8c0_0)(uae_u32 opcode) /* BFTST.L #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp = m68k_dreg(regs, dstreg) << (offset & 0x1f); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e8d0_0)(uae_u32 opcode) /* BFTST.L #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e8e8_0)(uae_u32 opcode) /* BFTST.L #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e8f0_0)(uae_u32 opcode) /* BFTST.L #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e8f8_0)(uae_u32 opcode) /* BFTST.L #.W,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e8f9_0)(uae_u32 opcode) /* BFTST.L #.W,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = get_ilong(4); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e8fa_0)(uae_u32 opcode) /* BFTST.L #.W,(d16,PC) */ -{ - cpuop_begin(); - uae_u32 dstreg = 2; -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_getpc () + 4; - dsta += (uae_s32)(uae_s16)get_iword(4); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e8fb_0)(uae_u32 opcode) /* BFTST.L #.W,(d8,PC,Xn) */ -{ - cpuop_begin(); - uae_u32 dstreg = 3; -{{ uae_s16 extra = get_iword(2); -{m68k_incpc(4); -{ uaecptr tmppc = m68k_getpc(); - uaecptr dsta = get_disp_ea_020(tmppc, next_iword()); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e9c0_0)(uae_u32 opcode) /* BFEXTU.L #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp = m68k_dreg(regs, dstreg) << (offset & 0x1f); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - m68k_dreg(regs, (extra >> 12) & 7) = tmp; -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e9d0_0)(uae_u32 opcode) /* BFEXTU.L #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - m68k_dreg(regs, (extra >> 12) & 7) = tmp; -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e9e8_0)(uae_u32 opcode) /* BFEXTU.L #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - m68k_dreg(regs, (extra >> 12) & 7) = tmp; -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e9f0_0)(uae_u32 opcode) /* BFEXTU.L #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - m68k_dreg(regs, (extra >> 12) & 7) = tmp; -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e9f8_0)(uae_u32 opcode) /* BFEXTU.L #.W,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - m68k_dreg(regs, (extra >> 12) & 7) = tmp; -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e9f9_0)(uae_u32 opcode) /* BFEXTU.L #.W,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = get_ilong(4); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - m68k_dreg(regs, (extra >> 12) & 7) = tmp; -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e9fa_0)(uae_u32 opcode) /* BFEXTU.L #.W,(d16,PC) */ -{ - cpuop_begin(); - uae_u32 dstreg = 2; -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_getpc () + 4; - dsta += (uae_s32)(uae_s16)get_iword(4); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - m68k_dreg(regs, (extra >> 12) & 7) = tmp; -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e9fb_0)(uae_u32 opcode) /* BFEXTU.L #.W,(d8,PC,Xn) */ -{ - cpuop_begin(); - uae_u32 dstreg = 3; -{{ uae_s16 extra = get_iword(2); -{m68k_incpc(4); -{ uaecptr tmppc = m68k_getpc(); - uaecptr dsta = get_disp_ea_020(tmppc, next_iword()); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - m68k_dreg(regs, (extra >> 12) & 7) = tmp; -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_eac0_0)(uae_u32 opcode) /* BFCHG.L #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp = m68k_dreg(regs, dstreg) << (offset & 0x1f); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - tmp = ~tmp; - tmp <<= (32 - width); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ((offset & 0x1f) == 0 ? 0 : - (0xffffffff << (32 - (offset & 0x1f))))) | - (tmp >> (offset & 0x1f)) | - (((offset & 0x1f) + width) >= 32 ? 0 : - (m68k_dreg(regs, dstreg) & ((uae_u32)0xffffffff >> ((offset & 0x1f) + width)))); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ead0_0)(uae_u32 opcode) /* BFCHG.L #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - tmp = ~tmp; - tmp <<= (32 - width); - bf0 = (bf0 & (0xff000000 << (8 - (offset & 7)))) | - (tmp >> (offset & 7)) | - (((offset & 7) + width) >= 32 ? 0 : - (bf0 & ((uae_u32)0xffffffff >> ((offset & 7) + width)))); - put_long(dsta,bf0 ); - if (((offset & 7) + width) > 32) { - bf1 = (bf1 & (0xff >> (width - 32 + (offset & 7)))) | - (tmp << (8 - (offset & 7))); - put_byte(dsta+4,bf1); - } -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_eae8_0)(uae_u32 opcode) /* BFCHG.L #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - tmp = ~tmp; - tmp <<= (32 - width); - bf0 = (bf0 & (0xff000000 << (8 - (offset & 7)))) | - (tmp >> (offset & 7)) | - (((offset & 7) + width) >= 32 ? 0 : - (bf0 & ((uae_u32)0xffffffff >> ((offset & 7) + width)))); - put_long(dsta,bf0 ); - if (((offset & 7) + width) > 32) { - bf1 = (bf1 & (0xff >> (width - 32 + (offset & 7)))) | - (tmp << (8 - (offset & 7))); - put_byte(dsta+4,bf1); - } -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_eaf0_0)(uae_u32 opcode) /* BFCHG.L #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - tmp = ~tmp; - tmp <<= (32 - width); - bf0 = (bf0 & (0xff000000 << (8 - (offset & 7)))) | - (tmp >> (offset & 7)) | - (((offset & 7) + width) >= 32 ? 0 : - (bf0 & ((uae_u32)0xffffffff >> ((offset & 7) + width)))); - put_long(dsta,bf0 ); - if (((offset & 7) + width) > 32) { - bf1 = (bf1 & (0xff >> (width - 32 + (offset & 7)))) | - (tmp << (8 - (offset & 7))); - put_byte(dsta+4,bf1); - } -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_eaf8_0)(uae_u32 opcode) /* BFCHG.L #.W,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - tmp = ~tmp; - tmp <<= (32 - width); - bf0 = (bf0 & (0xff000000 << (8 - (offset & 7)))) | - (tmp >> (offset & 7)) | - (((offset & 7) + width) >= 32 ? 0 : - (bf0 & ((uae_u32)0xffffffff >> ((offset & 7) + width)))); - put_long(dsta,bf0 ); - if (((offset & 7) + width) > 32) { - bf1 = (bf1 & (0xff >> (width - 32 + (offset & 7)))) | - (tmp << (8 - (offset & 7))); - put_byte(dsta+4,bf1); - } -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_eaf9_0)(uae_u32 opcode) /* BFCHG.L #.W,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = get_ilong(4); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - tmp = ~tmp; - tmp <<= (32 - width); - bf0 = (bf0 & (0xff000000 << (8 - (offset & 7)))) | - (tmp >> (offset & 7)) | - (((offset & 7) + width) >= 32 ? 0 : - (bf0 & ((uae_u32)0xffffffff >> ((offset & 7) + width)))); - put_long(dsta,bf0 ); - if (((offset & 7) + width) > 32) { - bf1 = (bf1 & (0xff >> (width - 32 + (offset & 7)))) | - (tmp << (8 - (offset & 7))); - put_byte(dsta+4,bf1); - } -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ebc0_0)(uae_u32 opcode) /* BFEXTS.L #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp = m68k_dreg(regs, dstreg) << (offset & 0x1f); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - if (GET_NFLG) tmp |= width == 32 ? 0 : (-1 << width); - m68k_dreg(regs, (extra >> 12) & 7) = tmp; -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ebd0_0)(uae_u32 opcode) /* BFEXTS.L #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - if (GET_NFLG) tmp |= width == 32 ? 0 : (-1 << width); - m68k_dreg(regs, (extra >> 12) & 7) = tmp; -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ebe8_0)(uae_u32 opcode) /* BFEXTS.L #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - if (GET_NFLG) tmp |= width == 32 ? 0 : (-1 << width); - m68k_dreg(regs, (extra >> 12) & 7) = tmp; -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ebf0_0)(uae_u32 opcode) /* BFEXTS.L #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - if (GET_NFLG) tmp |= width == 32 ? 0 : (-1 << width); - m68k_dreg(regs, (extra >> 12) & 7) = tmp; -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ebf8_0)(uae_u32 opcode) /* BFEXTS.L #.W,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - if (GET_NFLG) tmp |= width == 32 ? 0 : (-1 << width); - m68k_dreg(regs, (extra >> 12) & 7) = tmp; -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ebf9_0)(uae_u32 opcode) /* BFEXTS.L #.W,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = get_ilong(4); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - if (GET_NFLG) tmp |= width == 32 ? 0 : (-1 << width); - m68k_dreg(regs, (extra >> 12) & 7) = tmp; -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ebfa_0)(uae_u32 opcode) /* BFEXTS.L #.W,(d16,PC) */ -{ - cpuop_begin(); - uae_u32 dstreg = 2; -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_getpc () + 4; - dsta += (uae_s32)(uae_s16)get_iword(4); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - if (GET_NFLG) tmp |= width == 32 ? 0 : (-1 << width); - m68k_dreg(regs, (extra >> 12) & 7) = tmp; -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ebfb_0)(uae_u32 opcode) /* BFEXTS.L #.W,(d8,PC,Xn) */ -{ - cpuop_begin(); - uae_u32 dstreg = 3; -{{ uae_s16 extra = get_iword(2); -{m68k_incpc(4); -{ uaecptr tmppc = m68k_getpc(); - uaecptr dsta = get_disp_ea_020(tmppc, next_iword()); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - if (GET_NFLG) tmp |= width == 32 ? 0 : (-1 << width); - m68k_dreg(regs, (extra >> 12) & 7) = tmp; -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ecc0_0)(uae_u32 opcode) /* BFCLR.L #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp = m68k_dreg(regs, dstreg) << (offset & 0x1f); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - tmp = 0; - tmp <<= (32 - width); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ((offset & 0x1f) == 0 ? 0 : - (0xffffffff << (32 - (offset & 0x1f))))) | - (tmp >> (offset & 0x1f)) | - (((offset & 0x1f) + width) >= 32 ? 0 : - (m68k_dreg(regs, dstreg) & ((uae_u32)0xffffffff >> ((offset & 0x1f) + width)))); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ecd0_0)(uae_u32 opcode) /* BFCLR.L #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - tmp = 0; - tmp <<= (32 - width); - bf0 = (bf0 & (0xff000000 << (8 - (offset & 7)))) | - (tmp >> (offset & 7)) | - (((offset & 7) + width) >= 32 ? 0 : - (bf0 & ((uae_u32)0xffffffff >> ((offset & 7) + width)))); - put_long(dsta,bf0 ); - if (((offset & 7) + width) > 32) { - bf1 = (bf1 & (0xff >> (width - 32 + (offset & 7)))) | - (tmp << (8 - (offset & 7))); - put_byte(dsta+4,bf1); - } -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ece8_0)(uae_u32 opcode) /* BFCLR.L #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - tmp = 0; - tmp <<= (32 - width); - bf0 = (bf0 & (0xff000000 << (8 - (offset & 7)))) | - (tmp >> (offset & 7)) | - (((offset & 7) + width) >= 32 ? 0 : - (bf0 & ((uae_u32)0xffffffff >> ((offset & 7) + width)))); - put_long(dsta,bf0 ); - if (((offset & 7) + width) > 32) { - bf1 = (bf1 & (0xff >> (width - 32 + (offset & 7)))) | - (tmp << (8 - (offset & 7))); - put_byte(dsta+4,bf1); - } -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ecf0_0)(uae_u32 opcode) /* BFCLR.L #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - tmp = 0; - tmp <<= (32 - width); - bf0 = (bf0 & (0xff000000 << (8 - (offset & 7)))) | - (tmp >> (offset & 7)) | - (((offset & 7) + width) >= 32 ? 0 : - (bf0 & ((uae_u32)0xffffffff >> ((offset & 7) + width)))); - put_long(dsta,bf0 ); - if (((offset & 7) + width) > 32) { - bf1 = (bf1 & (0xff >> (width - 32 + (offset & 7)))) | - (tmp << (8 - (offset & 7))); - put_byte(dsta+4,bf1); - } -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ecf8_0)(uae_u32 opcode) /* BFCLR.L #.W,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - tmp = 0; - tmp <<= (32 - width); - bf0 = (bf0 & (0xff000000 << (8 - (offset & 7)))) | - (tmp >> (offset & 7)) | - (((offset & 7) + width) >= 32 ? 0 : - (bf0 & ((uae_u32)0xffffffff >> ((offset & 7) + width)))); - put_long(dsta,bf0 ); - if (((offset & 7) + width) > 32) { - bf1 = (bf1 & (0xff >> (width - 32 + (offset & 7)))) | - (tmp << (8 - (offset & 7))); - put_byte(dsta+4,bf1); - } -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ecf9_0)(uae_u32 opcode) /* BFCLR.L #.W,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = get_ilong(4); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - tmp = 0; - tmp <<= (32 - width); - bf0 = (bf0 & (0xff000000 << (8 - (offset & 7)))) | - (tmp >> (offset & 7)) | - (((offset & 7) + width) >= 32 ? 0 : - (bf0 & ((uae_u32)0xffffffff >> ((offset & 7) + width)))); - put_long(dsta,bf0 ); - if (((offset & 7) + width) > 32) { - bf1 = (bf1 & (0xff >> (width - 32 + (offset & 7)))) | - (tmp << (8 - (offset & 7))); - put_byte(dsta+4,bf1); - } -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_edc0_0)(uae_u32 opcode) /* BFFFO.L #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp = m68k_dreg(regs, dstreg) << (offset & 0x1f); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - { uae_u32 mask = 1 << (width-1); - while (mask) { if (tmp & mask) break; mask >>= 1; offset++; }} - m68k_dreg(regs, (extra >> 12) & 7) = offset; -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_edd0_0)(uae_u32 opcode) /* BFFFO.L #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - { uae_u32 mask = 1 << (width-1); - while (mask) { if (tmp & mask) break; mask >>= 1; offset++; }} - m68k_dreg(regs, (extra >> 12) & 7) = offset; -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_ede8_0)(uae_u32 opcode) /* BFFFO.L #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - { uae_u32 mask = 1 << (width-1); - while (mask) { if (tmp & mask) break; mask >>= 1; offset++; }} - m68k_dreg(regs, (extra >> 12) & 7) = offset; -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_edf0_0)(uae_u32 opcode) /* BFFFO.L #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - { uae_u32 mask = 1 << (width-1); - while (mask) { if (tmp & mask) break; mask >>= 1; offset++; }} - m68k_dreg(regs, (extra >> 12) & 7) = offset; -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_edf8_0)(uae_u32 opcode) /* BFFFO.L #.W,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - { uae_u32 mask = 1 << (width-1); - while (mask) { if (tmp & mask) break; mask >>= 1; offset++; }} - m68k_dreg(regs, (extra >> 12) & 7) = offset; -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_edf9_0)(uae_u32 opcode) /* BFFFO.L #.W,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = get_ilong(4); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - { uae_u32 mask = 1 << (width-1); - while (mask) { if (tmp & mask) break; mask >>= 1; offset++; }} - m68k_dreg(regs, (extra >> 12) & 7) = offset; -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_edfa_0)(uae_u32 opcode) /* BFFFO.L #.W,(d16,PC) */ -{ - cpuop_begin(); - uae_u32 dstreg = 2; -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_getpc () + 4; - dsta += (uae_s32)(uae_s16)get_iword(4); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - { uae_u32 mask = 1 << (width-1); - while (mask) { if (tmp & mask) break; mask >>= 1; offset++; }} - m68k_dreg(regs, (extra >> 12) & 7) = offset; -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_edfb_0)(uae_u32 opcode) /* BFFFO.L #.W,(d8,PC,Xn) */ -{ - cpuop_begin(); - uae_u32 dstreg = 3; -{{ uae_s16 extra = get_iword(2); -{m68k_incpc(4); -{ uaecptr tmppc = m68k_getpc(); - uaecptr dsta = get_disp_ea_020(tmppc, next_iword()); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - { uae_u32 mask = 1 << (width-1); - while (mask) { if (tmp & mask) break; mask >>= 1; offset++; }} - m68k_dreg(regs, (extra >> 12) & 7) = offset; -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_eec0_0)(uae_u32 opcode) /* BFSET.L #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp = m68k_dreg(regs, dstreg) << (offset & 0x1f); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - tmp = 0xffffffff; - tmp <<= (32 - width); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ((offset & 0x1f) == 0 ? 0 : - (0xffffffff << (32 - (offset & 0x1f))))) | - (tmp >> (offset & 0x1f)) | - (((offset & 0x1f) + width) >= 32 ? 0 : - (m68k_dreg(regs, dstreg) & ((uae_u32)0xffffffff >> ((offset & 0x1f) + width)))); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_eed0_0)(uae_u32 opcode) /* BFSET.L #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - tmp = 0xffffffff; - tmp <<= (32 - width); - bf0 = (bf0 & (0xff000000 << (8 - (offset & 7)))) | - (tmp >> (offset & 7)) | - (((offset & 7) + width) >= 32 ? 0 : - (bf0 & ((uae_u32)0xffffffff >> ((offset & 7) + width)))); - put_long(dsta,bf0 ); - if (((offset & 7) + width) > 32) { - bf1 = (bf1 & (0xff >> (width - 32 + (offset & 7)))) | - (tmp << (8 - (offset & 7))); - put_byte(dsta+4,bf1); - } -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_eee8_0)(uae_u32 opcode) /* BFSET.L #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - tmp = 0xffffffff; - tmp <<= (32 - width); - bf0 = (bf0 & (0xff000000 << (8 - (offset & 7)))) | - (tmp >> (offset & 7)) | - (((offset & 7) + width) >= 32 ? 0 : - (bf0 & ((uae_u32)0xffffffff >> ((offset & 7) + width)))); - put_long(dsta,bf0 ); - if (((offset & 7) + width) > 32) { - bf1 = (bf1 & (0xff >> (width - 32 + (offset & 7)))) | - (tmp << (8 - (offset & 7))); - put_byte(dsta+4,bf1); - } -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_eef0_0)(uae_u32 opcode) /* BFSET.L #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - tmp = 0xffffffff; - tmp <<= (32 - width); - bf0 = (bf0 & (0xff000000 << (8 - (offset & 7)))) | - (tmp >> (offset & 7)) | - (((offset & 7) + width) >= 32 ? 0 : - (bf0 & ((uae_u32)0xffffffff >> ((offset & 7) + width)))); - put_long(dsta,bf0 ); - if (((offset & 7) + width) > 32) { - bf1 = (bf1 & (0xff >> (width - 32 + (offset & 7)))) | - (tmp << (8 - (offset & 7))); - put_byte(dsta+4,bf1); - } -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_eef8_0)(uae_u32 opcode) /* BFSET.L #.W,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - tmp = 0xffffffff; - tmp <<= (32 - width); - bf0 = (bf0 & (0xff000000 << (8 - (offset & 7)))) | - (tmp >> (offset & 7)) | - (((offset & 7) + width) >= 32 ? 0 : - (bf0 & ((uae_u32)0xffffffff >> ((offset & 7) + width)))); - put_long(dsta,bf0 ); - if (((offset & 7) + width) > 32) { - bf1 = (bf1 & (0xff >> (width - 32 + (offset & 7)))) | - (tmp << (8 - (offset & 7))); - put_byte(dsta+4,bf1); - } -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_eef9_0)(uae_u32 opcode) /* BFSET.L #.W,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = get_ilong(4); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - tmp = 0xffffffff; - tmp <<= (32 - width); - bf0 = (bf0 & (0xff000000 << (8 - (offset & 7)))) | - (tmp >> (offset & 7)) | - (((offset & 7) + width) >= 32 ? 0 : - (bf0 & ((uae_u32)0xffffffff >> ((offset & 7) + width)))); - put_long(dsta,bf0 ); - if (((offset & 7) + width) > 32) { - bf1 = (bf1 & (0xff >> (width - 32 + (offset & 7)))) | - (tmp << (8 - (offset & 7))); - put_byte(dsta+4,bf1); - } -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_efc0_0)(uae_u32 opcode) /* BFINS.L #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp = m68k_dreg(regs, dstreg) << (offset & 0x1f); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - tmp = m68k_dreg(regs, (extra >> 12) & 7); - SET_NFLG_ALWAYS (tmp & (1 << (width - 1)) ? 1 : 0); - SET_ZFLG (tmp == 0); - tmp <<= (32 - width); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ((offset & 0x1f) == 0 ? 0 : - (0xffffffff << (32 - (offset & 0x1f))))) | - (tmp >> (offset & 0x1f)) | - (((offset & 0x1f) + width) >= 32 ? 0 : - (m68k_dreg(regs, dstreg) & ((uae_u32)0xffffffff >> ((offset & 0x1f) + width)))); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_efd0_0)(uae_u32 opcode) /* BFINS.L #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - tmp = m68k_dreg(regs, (extra >> 12) & 7); - SET_NFLG_ALWAYS (tmp & (1 << (width - 1)) ? 1 : 0); - SET_ZFLG (tmp == 0); - tmp <<= (32 - width); - bf0 = (bf0 & (0xff000000 << (8 - (offset & 7)))) | - (tmp >> (offset & 7)) | - (((offset & 7) + width) >= 32 ? 0 : - (bf0 & ((uae_u32)0xffffffff >> ((offset & 7) + width)))); - put_long(dsta,bf0 ); - if (((offset & 7) + width) > 32) { - bf1 = (bf1 & (0xff >> (width - 32 + (offset & 7)))) | - (tmp << (8 - (offset & 7))); - put_byte(dsta+4,bf1); - } -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_efe8_0)(uae_u32 opcode) /* BFINS.L #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - tmp = m68k_dreg(regs, (extra >> 12) & 7); - SET_NFLG_ALWAYS (tmp & (1 << (width - 1)) ? 1 : 0); - SET_ZFLG (tmp == 0); - tmp <<= (32 - width); - bf0 = (bf0 & (0xff000000 << (8 - (offset & 7)))) | - (tmp >> (offset & 7)) | - (((offset & 7) + width) >= 32 ? 0 : - (bf0 & ((uae_u32)0xffffffff >> ((offset & 7) + width)))); - put_long(dsta,bf0 ); - if (((offset & 7) + width) > 32) { - bf1 = (bf1 & (0xff >> (width - 32 + (offset & 7)))) | - (tmp << (8 - (offset & 7))); - put_byte(dsta+4,bf1); - } -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_eff0_0)(uae_u32 opcode) /* BFINS.L #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -{m68k_incpc(4); -{ uaecptr dsta = get_disp_ea_020(m68k_areg(regs, dstreg), next_iword()); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - tmp = m68k_dreg(regs, (extra >> 12) & 7); - SET_NFLG_ALWAYS (tmp & (1 << (width - 1)) ? 1 : 0); - SET_ZFLG (tmp == 0); - tmp <<= (32 - width); - bf0 = (bf0 & (0xff000000 << (8 - (offset & 7)))) | - (tmp >> (offset & 7)) | - (((offset & 7) + width) >= 32 ? 0 : - (bf0 & ((uae_u32)0xffffffff >> ((offset & 7) + width)))); - put_long(dsta,bf0 ); - if (((offset & 7) + width) > 32) { - bf1 = (bf1 & (0xff >> (width - 32 + (offset & 7)))) | - (tmp << (8 - (offset & 7))); - put_byte(dsta+4,bf1); - } -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_eff8_0)(uae_u32 opcode) /* BFINS.L #.W,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - tmp = m68k_dreg(regs, (extra >> 12) & 7); - SET_NFLG_ALWAYS (tmp & (1 << (width - 1)) ? 1 : 0); - SET_ZFLG (tmp == 0); - tmp <<= (32 - width); - bf0 = (bf0 & (0xff000000 << (8 - (offset & 7)))) | - (tmp >> (offset & 7)) | - (((offset & 7) + width) >= 32 ? 0 : - (bf0 & ((uae_u32)0xffffffff >> ((offset & 7) + width)))); - put_long(dsta,bf0 ); - if (((offset & 7) + width) > 32) { - bf1 = (bf1 & (0xff >> (width - 32 + (offset & 7)))) | - (tmp << (8 - (offset & 7))); - put_byte(dsta+4,bf1); - } -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_eff9_0)(uae_u32 opcode) /* BFINS.L #.W,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s16 extra = get_iword(2); -{ uaecptr dsta = get_ilong(4); -{ uae_s32 offset = extra & 0x800 ? m68k_dreg(regs, (extra >> 6) & 7) : (extra >> 6) & 0x1f; - int width = (((extra & 0x20 ? m68k_dreg(regs, extra & 7) : extra) -1) & 0x1f) +1; - uae_u32 tmp,bf0,bf1; - dsta += (offset >> 3) | (offset & 0x80000000 ? ~0x1fffffff : 0); - bf0 = get_long(dsta);bf1 = get_byte(dsta+4) & 0xff; - tmp = (bf0 << (offset & 7)) | (bf1 >> (8 - (offset & 7))); - tmp >>= (32 - width); - SET_NFLG_ALWAYS (tmp & (1 << (width-1)) ? 1 : 0); - SET_ZFLG (tmp == 0); SET_VFLG (0); SET_CFLG (0); - tmp = m68k_dreg(regs, (extra >> 12) & 7); - SET_NFLG_ALWAYS (tmp & (1 << (width - 1)) ? 1 : 0); - SET_ZFLG (tmp == 0); - tmp <<= (32 - width); - bf0 = (bf0 & (0xff000000 << (8 - (offset & 7)))) | - (tmp >> (offset & 7)) | - (((offset & 7) + width) >= 32 ? 0 : - (bf0 & ((uae_u32)0xffffffff >> ((offset & 7) + width)))); - put_long(dsta,bf0 ); - if (((offset & 7) + width) > 32) { - bf1 = (bf1 & (0xff >> (width - 32 + (offset & 7)))) | - (tmp << (8 - (offset & 7))); - put_byte(dsta+4,bf1); - } -}}}}m68k_incpc(8); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f200_0)(uae_u32 opcode) /* FPP.L #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -m68k_incpc(4); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_arithmetic(opcode, extra); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f208_0)(uae_u32 opcode) /* FPP.L #.W,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -m68k_incpc(4); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_arithmetic(opcode, extra); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f210_0)(uae_u32 opcode) /* FPP.L #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -m68k_incpc(4); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_arithmetic(opcode, extra); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f218_0)(uae_u32 opcode) /* FPP.L #.W,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -m68k_incpc(4); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_arithmetic(opcode, extra); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f220_0)(uae_u32 opcode) /* FPP.L #.W,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -m68k_incpc(4); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_arithmetic(opcode, extra); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f228_0)(uae_u32 opcode) /* FPP.L #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -m68k_incpc(4); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_arithmetic(opcode, extra); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f230_0)(uae_u32 opcode) /* FPP.L #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -m68k_incpc(4); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_arithmetic(opcode, extra); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f238_0)(uae_u32 opcode) /* FPP.L #.W,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s16 extra = get_iword(2); -m68k_incpc(4); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_arithmetic(opcode, extra); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f239_0)(uae_u32 opcode) /* FPP.L #.W,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s16 extra = get_iword(2); -m68k_incpc(4); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_arithmetic(opcode, extra); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f23a_0)(uae_u32 opcode) /* FPP.L #.W,(d16,PC) */ -{ - cpuop_begin(); - uae_u32 dstreg = 2; -{{ uae_s16 extra = get_iword(2); -m68k_incpc(4); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_arithmetic(opcode, extra); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f23b_0)(uae_u32 opcode) /* FPP.L #.W,(d8,PC,Xn) */ -{ - cpuop_begin(); - uae_u32 dstreg = 3; -{{ uae_s16 extra = get_iword(2); -m68k_incpc(4); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_arithmetic(opcode, extra); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f23c_0)(uae_u32 opcode) /* FPP.L #.W,#.L */ -{ - cpuop_begin(); -{{ uae_s16 extra = get_iword(2); -m68k_incpc(4); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_arithmetic(opcode, extra); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f240_0)(uae_u32 opcode) /* FScc.L #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -m68k_incpc(4); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_scc(opcode,extra); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f248_0)(uae_u32 opcode) /* FDBcc.L #.W,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -m68k_incpc(4); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_dbcc(opcode, extra); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f250_0)(uae_u32 opcode) /* FScc.L #.W,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -m68k_incpc(4); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_scc(opcode,extra); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f258_0)(uae_u32 opcode) /* FScc.L #.W,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -m68k_incpc(4); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_scc(opcode,extra); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f260_0)(uae_u32 opcode) /* FScc.L #.W,-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -m68k_incpc(4); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_scc(opcode,extra); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f268_0)(uae_u32 opcode) /* FScc.L #.W,(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -m68k_incpc(4); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_scc(opcode,extra); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f270_0)(uae_u32 opcode) /* FScc.L #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 extra = get_iword(2); -m68k_incpc(4); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_scc(opcode,extra); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f278_0)(uae_u32 opcode) /* FScc.L #.W,(xxx).W */ -{ - cpuop_begin(); -{{ uae_s16 extra = get_iword(2); -m68k_incpc(4); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_scc(opcode,extra); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f279_0)(uae_u32 opcode) /* FScc.L #.W,(xxx).L */ -{ - cpuop_begin(); -{{ uae_s16 extra = get_iword(2); -m68k_incpc(4); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_scc(opcode,extra); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f27a_0)(uae_u32 opcode) /* FTRAPcc.L #.W */ -{ - cpuop_begin(); -{m68k_incpc(2); -{ uaecptr oldpc = m68k_getpc(); -{ uae_s16 dummy = get_iword(0); -m68k_incpc(2); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_trapcc(opcode,oldpc); -}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f27b_0)(uae_u32 opcode) /* FTRAPcc.L #.L */ -{ - cpuop_begin(); -{m68k_incpc(2); -{ uaecptr oldpc = m68k_getpc(); -{ uae_s32 dummy = get_ilong(0); -m68k_incpc(4); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_trapcc(opcode,oldpc); -}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f27c_0)(uae_u32 opcode) /* FTRAPcc.L */ -{ - cpuop_begin(); -{m68k_incpc(2); -{ uaecptr oldpc = m68k_getpc(); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_trapcc(opcode,oldpc); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f280_0)(uae_u32 opcode) /* FBcc.L #,#.W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 63); -#else - uae_u32 srcreg = (opcode & 63); -#endif -{m68k_incpc(2); -{ uaecptr pc = m68k_getpc(); -{ uae_s16 extra = get_iword(0); -m68k_incpc(2); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_bcc(opcode,pc,extra); -}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f2c0_0)(uae_u32 opcode) /* FBcc.L #,#.L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 63); -#else - uae_u32 srcreg = (opcode & 63); -#endif -{m68k_incpc(2); -{ uaecptr pc = m68k_getpc(); -{ uae_s32 extra = get_ilong(0); -m68k_incpc(4); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_bcc(opcode,pc,extra); -}}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f310_0)(uae_u32 opcode) /* FSAVE.L (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel1829; } -{m68k_incpc(2); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_save(opcode); -}}endlabel1829: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f320_0)(uae_u32 opcode) /* FSAVE.L -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel1830; } -{m68k_incpc(2); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_save(opcode); -}}endlabel1830: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f328_0)(uae_u32 opcode) /* FSAVE.L (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel1831; } -{m68k_incpc(2); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_save(opcode); -}}endlabel1831: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f330_0)(uae_u32 opcode) /* FSAVE.L (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel1832; } -{m68k_incpc(2); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_save(opcode); -}}endlabel1832: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f338_0)(uae_u32 opcode) /* FSAVE.L (xxx).W */ -{ - cpuop_begin(); -{if (!regs.s) { Exception(8,0); goto endlabel1833; } -{m68k_incpc(2); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_save(opcode); -}}endlabel1833: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f339_0)(uae_u32 opcode) /* FSAVE.L (xxx).L */ -{ - cpuop_begin(); -{if (!regs.s) { Exception(8,0); goto endlabel1834; } -{m68k_incpc(2); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_save(opcode); -}}endlabel1834: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f350_0)(uae_u32 opcode) /* FRESTORE.L (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel1835; } -{m68k_incpc(2); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_restore(opcode); -}}endlabel1835: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f358_0)(uae_u32 opcode) /* FRESTORE.L (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel1836; } -{m68k_incpc(2); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_restore(opcode); -}}endlabel1836: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f368_0)(uae_u32 opcode) /* FRESTORE.L (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel1837; } -{m68k_incpc(2); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_restore(opcode); -}}endlabel1837: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f370_0)(uae_u32 opcode) /* FRESTORE.L (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel1838; } -{m68k_incpc(2); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_restore(opcode); -}}endlabel1838: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f378_0)(uae_u32 opcode) /* FRESTORE.L (xxx).W */ -{ - cpuop_begin(); -{if (!regs.s) { Exception(8,0); goto endlabel1839; } -{m68k_incpc(2); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_restore(opcode); -}}endlabel1839: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f379_0)(uae_u32 opcode) /* FRESTORE.L (xxx).L */ -{ - cpuop_begin(); -{if (!regs.s) { Exception(8,0); goto endlabel1840; } -{m68k_incpc(2); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_restore(opcode); -}}endlabel1840: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f37a_0)(uae_u32 opcode) /* FRESTORE.L (d16,PC) */ -{ - cpuop_begin(); -{if (!regs.s) { Exception(8,0); goto endlabel1841; } -{m68k_incpc(2); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_restore(opcode); -}}endlabel1841: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f37b_0)(uae_u32 opcode) /* FRESTORE.L (d8,PC,Xn) */ -{ - cpuop_begin(); -{if (!regs.s) { Exception(8,0); goto endlabel1842; } -{m68k_incpc(2); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - fpuop_restore(opcode); -}}endlabel1842: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f408_0)(uae_u32 opcode) /* CINVL.L #,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 14) & 3); -#else - uae_u32 srcreg = ((opcode >> 6) & 3); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{if (!regs.s) { Exception(8,0); goto endlabel1843; } -{ if (srcreg&0x2) - flush_icache(31); -}}m68k_incpc(2); -endlabel1843: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f410_0)(uae_u32 opcode) /* CINVP.L #,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 14) & 3); -#else - uae_u32 srcreg = ((opcode >> 6) & 3); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{if (!regs.s) { Exception(8,0); goto endlabel1844; } -{ if (srcreg&0x2) - flush_icache(32); -}}m68k_incpc(2); -endlabel1844: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f418_0)(uae_u32 opcode) /* CINVA.L # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 14) & 3); -#else - uae_u32 srcreg = ((opcode >> 6) & 3); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel1845; } -{ if (srcreg&0x2) - flush_icache(33); -}}m68k_incpc(2); -endlabel1845: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f419_0)(uae_u32 opcode) /* CINVA.L # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 14) & 3); -#else - uae_u32 srcreg = ((opcode >> 6) & 3); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel1846; } -{ if (srcreg&0x2) - flush_icache(33); -}}m68k_incpc(2); -endlabel1846: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f41a_0)(uae_u32 opcode) /* CINVA.L # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 14) & 3); -#else - uae_u32 srcreg = ((opcode >> 6) & 3); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel1847; } -{ if (srcreg&0x2) - flush_icache(33); -}}m68k_incpc(2); -endlabel1847: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f41b_0)(uae_u32 opcode) /* CINVA.L # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 14) & 3); -#else - uae_u32 srcreg = ((opcode >> 6) & 3); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel1848; } -{ if (srcreg&0x2) - flush_icache(33); -}}m68k_incpc(2); -endlabel1848: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f41c_0)(uae_u32 opcode) /* CINVA.L # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 14) & 3); -#else - uae_u32 srcreg = ((opcode >> 6) & 3); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel1849; } -{ if (srcreg&0x2) - flush_icache(33); -}}m68k_incpc(2); -endlabel1849: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f41d_0)(uae_u32 opcode) /* CINVA.L # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 14) & 3); -#else - uae_u32 srcreg = ((opcode >> 6) & 3); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel1850; } -{ if (srcreg&0x2) - flush_icache(33); -}}m68k_incpc(2); -endlabel1850: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f41e_0)(uae_u32 opcode) /* CINVA.L # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 14) & 3); -#else - uae_u32 srcreg = ((opcode >> 6) & 3); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel1851; } -{ if (srcreg&0x2) - flush_icache(33); -}}m68k_incpc(2); -endlabel1851: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f41f_0)(uae_u32 opcode) /* CINVA.L # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 14) & 3); -#else - uae_u32 srcreg = ((opcode >> 6) & 3); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel1852; } -{ if (srcreg&0x2) - flush_icache(33); -}}m68k_incpc(2); -endlabel1852: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f428_0)(uae_u32 opcode) /* CPUSHL.L #,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 14) & 3); -#else - uae_u32 srcreg = ((opcode >> 6) & 3); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{if (!regs.s) { Exception(8,0); goto endlabel1853; } -{ if (srcreg&0x2) - flush_icache(41); -}}m68k_incpc(2); -endlabel1853: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f430_0)(uae_u32 opcode) /* CPUSHP.L #,An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 14) & 3); -#else - uae_u32 srcreg = ((opcode >> 6) & 3); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{if (!regs.s) { Exception(8,0); goto endlabel1854; } -{ if (srcreg&0x2) - flush_icache(42); -}}m68k_incpc(2); -endlabel1854: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f438_0)(uae_u32 opcode) /* CPUSHA.L # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 14) & 3); -#else - uae_u32 srcreg = ((opcode >> 6) & 3); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel1855; } -{ if (srcreg&0x2) - flush_icache(43); -}}m68k_incpc(2); -endlabel1855: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f439_0)(uae_u32 opcode) /* CPUSHA.L # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 14) & 3); -#else - uae_u32 srcreg = ((opcode >> 6) & 3); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel1856; } -{ if (srcreg&0x2) - flush_icache(43); -}}m68k_incpc(2); -endlabel1856: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f43a_0)(uae_u32 opcode) /* CPUSHA.L # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 14) & 3); -#else - uae_u32 srcreg = ((opcode >> 6) & 3); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel1857; } -{ if (srcreg&0x2) - flush_icache(43); -}}m68k_incpc(2); -endlabel1857: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f43b_0)(uae_u32 opcode) /* CPUSHA.L # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 14) & 3); -#else - uae_u32 srcreg = ((opcode >> 6) & 3); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel1858; } -{ if (srcreg&0x2) - flush_icache(43); -}}m68k_incpc(2); -endlabel1858: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f43c_0)(uae_u32 opcode) /* CPUSHA.L # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 14) & 3); -#else - uae_u32 srcreg = ((opcode >> 6) & 3); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel1859; } -{ if (srcreg&0x2) - flush_icache(43); -}}m68k_incpc(2); -endlabel1859: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f43d_0)(uae_u32 opcode) /* CPUSHA.L # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 14) & 3); -#else - uae_u32 srcreg = ((opcode >> 6) & 3); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel1860; } -{ if (srcreg&0x2) - flush_icache(43); -}}m68k_incpc(2); -endlabel1860: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f43e_0)(uae_u32 opcode) /* CPUSHA.L # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 14) & 3); -#else - uae_u32 srcreg = ((opcode >> 6) & 3); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel1861; } -{ if (srcreg&0x2) - flush_icache(43); -}}m68k_incpc(2); -endlabel1861: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f43f_0)(uae_u32 opcode) /* CPUSHA.L # */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 14) & 3); -#else - uae_u32 srcreg = ((opcode >> 6) & 3); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel1862; } -{ if (srcreg&0x2) - flush_icache(43); -}}m68k_incpc(2); -endlabel1862: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f500_0)(uae_u32 opcode) /* MMUOP.L #,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = (uae_s32)(uae_s8)(((opcode >> 11) | (opcode << 5)) & 7); -#else - uae_u32 srcreg = (uae_s32)(uae_s8)((opcode >> 3) & 255); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 extra = srcreg; -m68k_incpc(2); -#ifdef HAVE_GET_WORD_UNSWAPPED - opcode = ((opcode << 8) & 0xFF00) | ((opcode >> 8) & 0xFF); -#endif - mmu_op(opcode,extra); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f600_0)(uae_u32 opcode) /* MOVE16.L (An)+,(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr memsa = m68k_areg(regs, srcreg); -{ uaecptr memda = get_ilong(2); - memsa &= ~15; - memda &= ~15; - put_long(memda, get_long(memsa)); - put_long(memda+4, get_long(memsa+4)); - put_long(memda+8, get_long(memsa+8)); - put_long(memda+12, get_long(memsa+12)); - m68k_areg(regs, srcreg) += 16; -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f608_0)(uae_u32 opcode) /* MOVE16.L (xxx).L,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uaecptr memsa = get_ilong(2); -{ uaecptr memda = m68k_areg(regs, dstreg); - memsa &= ~15; - memda &= ~15; - put_long(memda, get_long(memsa)); - put_long(memda+4, get_long(memsa+4)); - put_long(memda+8, get_long(memsa+8)); - put_long(memda+12, get_long(memsa+12)); - m68k_areg(regs, dstreg) += 16; -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f610_0)(uae_u32 opcode) /* MOVE16.L (An),(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr memsa = m68k_areg(regs, srcreg); -{ uaecptr memda = get_ilong(2); - memsa &= ~15; - memda &= ~15; - put_long(memda, get_long(memsa)); - put_long(memda+4, get_long(memsa+4)); - put_long(memda+8, get_long(memsa+8)); - put_long(memda+12, get_long(memsa+12)); -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f618_0)(uae_u32 opcode) /* MOVE16.L (xxx).L,(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uaecptr memsa = get_ilong(2); -{ uaecptr memda = m68k_areg(regs, dstreg); - memsa &= ~15; - memda &= ~15; - put_long(memda, get_long(memsa)); - put_long(memda+4, get_long(memsa+4)); - put_long(memda+8, get_long(memsa+8)); - put_long(memda+12, get_long(memsa+12)); -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_f620_0)(uae_u32 opcode) /* MOVE16.L (An)+,(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif - uae_u32 dstreg = 0; -{ uaecptr mems = m68k_areg(regs, srcreg) & ~15, memd; - dstreg = (get_iword(2) >> 12) & 7; - memd = m68k_areg(regs, dstreg) & ~15; - put_long(memd, get_long(mems)); - put_long(memd+4, get_long(mems+4)); - put_long(memd+8, get_long(mems+8)); - put_long(memd+12, get_long(mems+12)); - if (srcreg != dstreg) - m68k_areg(regs, srcreg) += 16; - m68k_areg(regs, dstreg) += 16; -}m68k_incpc(4); - cpuop_end(); -} - -#endif -#endif - - -#ifdef _MSC_VER -#pragma warning(disable:4102) /* unreferenced label */ -#endif - -#if !defined(PART_1) && !defined(PART_2) && !defined(PART_3) && !defined(PART_4) && !defined(PART_5) && !defined(PART_6) && !defined(PART_7) && !defined(PART_8) -#define PART_1 1 -#define PART_2 1 -#define PART_3 1 -#define PART_4 1 -#define PART_5 1 -#define PART_6 1 -#define PART_7 1 -#define PART_8 1 -#endif - -#ifdef PART_1 -#endif - -#ifdef PART_2 -#endif - -#ifdef PART_3 -#endif - -#ifdef PART_4 -void REGPARAM2 CPUFUNC(op_4800_1)(uae_u32 opcode) /* NBCD.B Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uae_u16 newv_lo = - (src & 0xF) - (GET_XFLG ? 1 : 0); - uae_u16 newv_hi = - (src & 0xF0); - uae_u16 newv; - int cflg; - if (newv_lo > 9) { newv_lo -= 6; } - newv = newv_hi + newv_lo; - cflg = (newv & 0x1F0) > 0x90; - if (cflg) newv -= 0x60; - SET_CFLG (cflg); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - SET_NFLG (((uae_s8)(newv)) < 0); - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xff) | ((newv) & 0xff); -}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4810_1)(uae_u32 opcode) /* NBCD.B (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); -{ uae_u16 newv_lo = - (src & 0xF) - (GET_XFLG ? 1 : 0); - uae_u16 newv_hi = - (src & 0xF0); - uae_u16 newv; - int cflg; - if (newv_lo > 9) { newv_lo -= 6; } - newv = newv_hi + newv_lo; - cflg = (newv & 0x1F0) > 0x90; - if (cflg) newv -= 0x60; - SET_CFLG (cflg); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - SET_NFLG (((uae_s8)(newv)) < 0); - put_byte(srca,newv); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4818_1)(uae_u32 opcode) /* NBCD.B (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ uae_u16 newv_lo = - (src & 0xF) - (GET_XFLG ? 1 : 0); - uae_u16 newv_hi = - (src & 0xF0); - uae_u16 newv; - int cflg; - if (newv_lo > 9) { newv_lo -= 6; } - newv = newv_hi + newv_lo; - cflg = (newv & 0x1F0) > 0x90; - if (cflg) newv -= 0x60; - SET_CFLG (cflg); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - SET_NFLG (((uae_s8)(newv)) < 0); - put_byte(srca,newv); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4820_1)(uae_u32 opcode) /* NBCD.B -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; -{ uae_s8 src = get_byte(srca); - m68k_areg (regs, srcreg) = srca; -{ uae_u16 newv_lo = - (src & 0xF) - (GET_XFLG ? 1 : 0); - uae_u16 newv_hi = - (src & 0xF0); - uae_u16 newv; - int cflg; - if (newv_lo > 9) { newv_lo -= 6; } - newv = newv_hi + newv_lo; - cflg = (newv & 0x1F0) > 0x90; - if (cflg) newv -= 0x60; - SET_CFLG (cflg); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - SET_NFLG (((uae_s8)(newv)) < 0); - put_byte(srca,newv); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4828_1)(uae_u32 opcode) /* NBCD.B (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uae_u16 newv_lo = - (src & 0xF) - (GET_XFLG ? 1 : 0); - uae_u16 newv_hi = - (src & 0xF0); - uae_u16 newv; - int cflg; - if (newv_lo > 9) { newv_lo -= 6; } - newv = newv_hi + newv_lo; - cflg = (newv & 0x1F0) > 0x90; - if (cflg) newv -= 0x60; - SET_CFLG (cflg); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - SET_NFLG (((uae_s8)(newv)) < 0); - put_byte(srca,newv); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4830_1)(uae_u32 opcode) /* NBCD.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{m68k_incpc(2); -{ uaecptr srca = get_disp_ea_020(m68k_areg(regs, srcreg), next_iword()); -{ uae_s8 src = get_byte(srca); -{ uae_u16 newv_lo = - (src & 0xF) - (GET_XFLG ? 1 : 0); - uae_u16 newv_hi = - (src & 0xF0); - uae_u16 newv; - int cflg; - if (newv_lo > 9) { newv_lo -= 6; } - newv = newv_hi + newv_lo; - cflg = (newv & 0x1F0) > 0x90; - if (cflg) newv -= 0x60; - SET_CFLG (cflg); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - SET_NFLG (((uae_s8)(newv)) < 0); - put_byte(srca,newv); -}}}}} cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4838_1)(uae_u32 opcode) /* NBCD.B (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uae_u16 newv_lo = - (src & 0xF) - (GET_XFLG ? 1 : 0); - uae_u16 newv_hi = - (src & 0xF0); - uae_u16 newv; - int cflg; - if (newv_lo > 9) { newv_lo -= 6; } - newv = newv_hi + newv_lo; - cflg = (newv & 0x1F0) > 0x90; - if (cflg) newv -= 0x60; - SET_CFLG (cflg); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - SET_NFLG (((uae_s8)(newv)) < 0); - put_byte(srca,newv); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4839_1)(uae_u32 opcode) /* NBCD.B (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); -{ uae_s8 src = get_byte(srca); -{ uae_u16 newv_lo = - (src & 0xF) - (GET_XFLG ? 1 : 0); - uae_u16 newv_hi = - (src & 0xF0); - uae_u16 newv; - int cflg; - if (newv_lo > 9) { newv_lo -= 6; } - newv = newv_hi + newv_lo; - cflg = (newv & 0x1F0) > 0x90; - if (cflg) newv -= 0x60; - SET_CFLG (cflg); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - SET_NFLG (((uae_s8)(newv)) < 0); - put_byte(srca,newv); -}}}}m68k_incpc(6); - cpuop_end(); -} -#endif - -#ifdef PART_5 -#endif - -#ifdef PART_6 -void REGPARAM2 CPUFUNC(op_8100_1)(uae_u32 opcode) /* SBCD.B Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{ uae_u16 newv_lo = (dst & 0xF) - (src & 0xF) - (GET_XFLG ? 1 : 0); - uae_u16 newv_hi = (dst & 0xF0) - (src & 0xF0); - uae_u16 newv, tmp_newv; - int bcd = 0; - newv = tmp_newv = newv_hi + newv_lo; - if (newv_lo & 0xF0) { newv -= 6; bcd = 6; }; - if ((((dst & 0xFF) - (src & 0xFF) - (GET_XFLG ? 1 : 0)) & 0x100) > 0xFF) { newv -= 0x60; } - SET_CFLG ((((dst & 0xFF) - (src & 0xFF) - bcd - (GET_XFLG ? 1 : 0)) & 0x300) > 0xFF); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - SET_NFLG (((uae_s8)(newv)) < 0); - SET_VFLG ((tmp_newv & 0x80) != 0 && (newv & 0x80) == 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8108_1)(uae_u32 opcode) /* SBCD.B -(An),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; -{ uae_s8 src = get_byte(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; -{ uae_s8 dst = get_byte(dsta); - m68k_areg (regs, dstreg) = dsta; -{ uae_u16 newv_lo = (dst & 0xF) - (src & 0xF) - (GET_XFLG ? 1 : 0); - uae_u16 newv_hi = (dst & 0xF0) - (src & 0xF0); - uae_u16 newv, tmp_newv; - int bcd = 0; - newv = tmp_newv = newv_hi + newv_lo; - if (newv_lo & 0xF0) { newv -= 6; bcd = 6; }; - if ((((dst & 0xFF) - (src & 0xFF) - (GET_XFLG ? 1 : 0)) & 0x100) > 0xFF) { newv -= 0x60; } - SET_CFLG ((((dst & 0xFF) - (src & 0xFF) - bcd - (GET_XFLG ? 1 : 0)) & 0x300) > 0xFF); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - SET_NFLG (((uae_s8)(newv)) < 0); - SET_VFLG ((tmp_newv & 0x80) != 0 && (newv & 0x80) == 0); - put_byte(dsta,newv); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -#endif - -#ifdef PART_7 -void REGPARAM2 CPUFUNC(op_c100_1)(uae_u32 opcode) /* ABCD.B Dn,Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{ uae_u16 newv_lo = (src & 0xF) + (dst & 0xF) + (GET_XFLG ? 1 : 0); - uae_u16 newv_hi = (src & 0xF0) + (dst & 0xF0); - uae_u16 newv, tmp_newv; - int cflg; - newv = tmp_newv = newv_hi + newv_lo; - if (newv_lo > 9) { newv += 6; } - cflg = (newv & 0x3F0) > 0x90; - if (cflg) newv += 0x60; - SET_CFLG (cflg); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - SET_NFLG (((uae_s8)(newv)) < 0); - SET_VFLG ((tmp_newv & 0x80) == 0 && (newv & 0x80) != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}m68k_incpc(2); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c108_1)(uae_u32 opcode) /* ABCD.B -(An),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; -{ uae_s8 src = get_byte(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; -{ uae_s8 dst = get_byte(dsta); - m68k_areg (regs, dstreg) = dsta; -{ uae_u16 newv_lo = (src & 0xF) + (dst & 0xF) + (GET_XFLG ? 1 : 0); - uae_u16 newv_hi = (src & 0xF0) + (dst & 0xF0); - uae_u16 newv, tmp_newv; - int cflg; - newv = tmp_newv = newv_hi + newv_lo; - if (newv_lo > 9) { newv += 6; } - cflg = (newv & 0x3F0) > 0x90; - if (cflg) newv += 0x60; - SET_CFLG (cflg); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - SET_NFLG (((uae_s8)(newv)) < 0); - SET_VFLG ((tmp_newv & 0x80) == 0 && (newv & 0x80) != 0); - put_byte(dsta,newv); -}}}}}}m68k_incpc(2); - cpuop_end(); -} -#endif - -#ifdef PART_8 -#endif - - -#ifdef _MSC_VER -#pragma warning(disable:4102) /* unreferenced label */ -#endif - -#if !defined(PART_1) && !defined(PART_2) && !defined(PART_3) && !defined(PART_4) && !defined(PART_5) && !defined(PART_6) && !defined(PART_7) && !defined(PART_8) -#define PART_1 1 -#define PART_2 1 -#define PART_3 1 -#define PART_4 1 -#define PART_5 1 -#define PART_6 1 -#define PART_7 1 -#define PART_8 1 -#endif - -#ifdef PART_1 -#endif - -#ifdef PART_2 -#endif - -#ifdef PART_3 -#endif - -#ifdef PART_4 -#endif - -#ifdef PART_5 -#endif - -#ifdef PART_6 -#endif - -#ifdef PART_7 -#endif - -#ifdef PART_8 -#endif - - -#ifdef _MSC_VER -#pragma warning(disable:4102) /* unreferenced label */ -#endif - -#if !defined(PART_1) && !defined(PART_2) && !defined(PART_3) && !defined(PART_4) && !defined(PART_5) && !defined(PART_6) && !defined(PART_7) && !defined(PART_8) -#define PART_1 1 -#define PART_2 1 -#define PART_3 1 -#define PART_4 1 -#define PART_5 1 -#define PART_6 1 -#define PART_7 1 -#define PART_8 1 -#endif - -#ifdef PART_1 -void REGPARAM2 CPUFUNC(op_30_3)(uae_u32 opcode) /* OR.B #.B,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); -{ uae_s8 dst = get_byte(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_70_3)(uae_u32 opcode) /* OR.W #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); -{ uae_s16 dst = get_word(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b0_3)(uae_u32 opcode) /* OR.L #.L,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(6)); -{ uae_s32 dst = get_long(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_130_3)(uae_u32 opcode) /* BTST.B Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_13b_3)(uae_u32 opcode) /* BTST.B Dn,(d8,PC,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif - uae_u32 dstreg = 3; -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr dsta = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_170_3)(uae_u32 opcode) /* BCHG.B Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - dst ^= (1 << src); - SET_ZFLG (((uae_u32)dst & (1 << src)) >> src); - put_byte(dsta,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_17b_3)(uae_u32 opcode) /* BCHG.B Dn,(d8,PC,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif - uae_u32 dstreg = 3; -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr dsta = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - dst ^= (1 << src); - SET_ZFLG (((uae_u32)dst & (1 << src)) >> src); - put_byte(dsta,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1b0_3)(uae_u32 opcode) /* BCLR.B Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst &= ~(1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1bb_3)(uae_u32 opcode) /* BCLR.B Dn,(d8,PC,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif - uae_u32 dstreg = 3; -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr dsta = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst &= ~(1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1f0_3)(uae_u32 opcode) /* BSET.B Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst |= (1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1fb_3)(uae_u32 opcode) /* BSET.B Dn,(d8,PC,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif - uae_u32 dstreg = 3; -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr dsta = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst |= (1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_230_3)(uae_u32 opcode) /* AND.B #.B,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); -{ uae_s8 dst = get_byte(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_270_3)(uae_u32 opcode) /* AND.W #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); -{ uae_s16 dst = get_word(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2b0_3)(uae_u32 opcode) /* AND.L #.L,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(6)); -{ uae_s32 dst = get_long(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_430_3)(uae_u32 opcode) /* SUB.B #.B,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_470_3)(uae_u32 opcode) /* SUB.W #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4b0_3)(uae_u32 opcode) /* SUB.L #.L,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(6)); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_630_3)(uae_u32 opcode) /* ADD.B #.B,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_670_3)(uae_u32 opcode) /* ADD.W #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_6b0_3)(uae_u32 opcode) /* ADD.L #.L,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(6)); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_830_3)(uae_u32 opcode) /* BTST.B #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_83b_3)(uae_u32 opcode) /* BTST.B #.W,(d8,PC,Xn) */ -{ - cpuop_begin(); - uae_u32 dstreg = 3; -{{ uae_s16 src = get_iword(2); -{ uaecptr tmppc = m68k_getpc() + 4; - uaecptr dsta = get_disp_ea_000(tmppc, get_iword(4)); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_870_3)(uae_u32 opcode) /* BCHG.B #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - dst ^= (1 << src); - SET_ZFLG (((uae_u32)dst & (1 << src)) >> src); - put_byte(dsta,dst); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_87b_3)(uae_u32 opcode) /* BCHG.B #.W,(d8,PC,Xn) */ -{ - cpuop_begin(); - uae_u32 dstreg = 3; -{{ uae_s16 src = get_iword(2); -{ uaecptr tmppc = m68k_getpc() + 4; - uaecptr dsta = get_disp_ea_000(tmppc, get_iword(4)); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - dst ^= (1 << src); - SET_ZFLG (((uae_u32)dst & (1 << src)) >> src); - put_byte(dsta,dst); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8b0_3)(uae_u32 opcode) /* BCLR.B #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst &= ~(1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8bb_3)(uae_u32 opcode) /* BCLR.B #.W,(d8,PC,Xn) */ -{ - cpuop_begin(); - uae_u32 dstreg = 3; -{{ uae_s16 src = get_iword(2); -{ uaecptr tmppc = m68k_getpc() + 4; - uaecptr dsta = get_disp_ea_000(tmppc, get_iword(4)); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst &= ~(1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8f0_3)(uae_u32 opcode) /* BSET.B #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst |= (1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8fb_3)(uae_u32 opcode) /* BSET.B #.W,(d8,PC,Xn) */ -{ - cpuop_begin(); - uae_u32 dstreg = 3; -{{ uae_s16 src = get_iword(2); -{ uaecptr tmppc = m68k_getpc() + 4; - uaecptr dsta = get_disp_ea_000(tmppc, get_iword(4)); -{ uae_s8 dst = get_byte(dsta); - src &= 7; - SET_ZFLG (1 ^ ((dst >> src) & 1)); - dst |= (1 << src); - put_byte(dsta,dst); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_a30_3)(uae_u32 opcode) /* EOR.B #.B,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); -{ uae_s8 dst = get_byte(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_a70_3)(uae_u32 opcode) /* EOR.W #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); -{ uae_s16 dst = get_word(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -#endif - -#ifdef PART_2 -void REGPARAM2 CPUFUNC(op_ab0_3)(uae_u32 opcode) /* EOR.L #.L,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(6)); -{ uae_s32 dst = get_long(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c30_3)(uae_u32 opcode) /* CMP.B #.B,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c3b_3)(uae_u32 opcode) /* CMP.B #.B,(d8,PC,Xn) */ -{ - cpuop_begin(); - uae_u32 dstreg = 3; -{{ uae_s8 src = get_ibyte(2); -{ uaecptr tmppc = m68k_getpc() + 4; - uaecptr dsta = get_disp_ea_000(tmppc, get_iword(4)); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c70_3)(uae_u32 opcode) /* CMP.W #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c7b_3)(uae_u32 opcode) /* CMP.W #.W,(d8,PC,Xn) */ -{ - cpuop_begin(); - uae_u32 dstreg = 3; -{{ uae_s16 src = get_iword(2); -{ uaecptr tmppc = m68k_getpc() + 4; - uaecptr dsta = get_disp_ea_000(tmppc, get_iword(4)); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_cb0_3)(uae_u32 opcode) /* CMP.L #.L,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(6)); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_cbb_3)(uae_u32 opcode) /* CMP.L #.L,(d8,PC,Xn) */ -{ - cpuop_begin(); - uae_u32 dstreg = 3; -{{ uae_s32 src = get_ilong(2); -{ uaecptr tmppc = m68k_getpc() + 6; - uaecptr dsta = get_disp_ea_000(tmppc, get_iword(6)); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1030_3)(uae_u32 opcode) /* MOVE.B (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s8 src = get_byte(srca); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_103b_3)(uae_u32 opcode) /* MOVE.B (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s8 src = get_byte(srca); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_10b0_3)(uae_u32 opcode) /* MOVE.B (d8,An,Xn),(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_10bb_3)(uae_u32 opcode) /* MOVE.B (d8,PC,Xn),(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_10f0_3)(uae_u32 opcode) /* MOVE.B (d8,An,Xn),(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_10fb_3)(uae_u32 opcode) /* MOVE.B (d8,PC,Xn),(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += areg_byteinc[dstreg]; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1130_3)(uae_u32 opcode) /* MOVE.B (d8,An,Xn),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_113b_3)(uae_u32 opcode) /* MOVE.B (d8,PC,Xn),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) - areg_byteinc[dstreg]; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1170_3)(uae_u32 opcode) /* MOVE.B (d8,An,Xn),(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_117b_3)(uae_u32 opcode) /* MOVE.B (d8,PC,Xn),(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1180_3)(uae_u32 opcode) /* MOVE.B Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1190_3)(uae_u32 opcode) /* MOVE.B (An),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_1198_3)(uae_u32 opcode) /* MOVE.B (An)+,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s8 src = get_byte(srca); - m68k_areg(regs, srcreg) += areg_byteinc[srcreg]; -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_11a0_3)(uae_u32 opcode) /* MOVE.B -(An),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - areg_byteinc[srcreg]; -{ uae_s8 src = get_byte(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_11a8_3)(uae_u32 opcode) /* MOVE.B (d16,An),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_11b0_3)(uae_u32 opcode) /* MOVE.B (d8,An,Xn),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_11b8_3)(uae_u32 opcode) /* MOVE.B (xxx).W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_11b9_3)(uae_u32 opcode) /* MOVE.B (xxx).L,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(6)); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_11ba_3)(uae_u32 opcode) /* MOVE.B (d16,PC),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_11bb_3)(uae_u32 opcode) /* MOVE.B (d8,PC,Xn),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_11bc_3)(uae_u32 opcode) /* MOVE.B #.B,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s8 src = get_ibyte(2); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_11f0_3)(uae_u32 opcode) /* MOVE.B (d8,An,Xn),(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_11fb_3)(uae_u32 opcode) /* MOVE.B (d8,PC,Xn),(xxx).W */ -{ - cpuop_begin(); -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_13f0_3)(uae_u32 opcode) /* MOVE.B (d8,An,Xn),(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = get_ilong(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_13fb_3)(uae_u32 opcode) /* MOVE.B (d8,PC,Xn),(xxx).L */ -{ - cpuop_begin(); -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s8 src = get_byte(srca); -{ uaecptr dsta = get_ilong(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2030_3)(uae_u32 opcode) /* MOVE.L (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s32 src = get_long(srca); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_203b_3)(uae_u32 opcode) /* MOVE.L (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s32 src = get_long(srca); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}m68k_incpc(4); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_2070_3)(uae_u32 opcode) /* MOVEA.L (d8,An,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uae_u32 val = src; - m68k_areg(regs, dstreg) = (val); -}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_207b_3)(uae_u32 opcode) /* MOVEA.L (d8,PC,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uae_u32 val = src; - m68k_areg(regs, dstreg) = (val); -}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_20b0_3)(uae_u32 opcode) /* MOVE.L (d8,An,Xn),(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_20bb_3)(uae_u32 opcode) /* MOVE.L (d8,PC,Xn),(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_20f0_3)(uae_u32 opcode) /* MOVE.L (d8,An,Xn),(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += 4; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_20fb_3)(uae_u32 opcode) /* MOVE.L (d8,PC,Xn),(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += 4; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2130_3)(uae_u32 opcode) /* MOVE.L (d8,An,Xn),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_213b_3)(uae_u32 opcode) /* MOVE.L (d8,PC,Xn),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 4; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -#endif - -#ifdef PART_3 -void REGPARAM2 CPUFUNC(op_2170_3)(uae_u32 opcode) /* MOVE.L (d8,An,Xn),(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_217b_3)(uae_u32 opcode) /* MOVE.L (d8,PC,Xn),(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2180_3)(uae_u32 opcode) /* MOVE.L Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2188_3)(uae_u32 opcode) /* MOVE.L An,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = m68k_areg(regs, srcreg); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2190_3)(uae_u32 opcode) /* MOVE.L (An),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_2198_3)(uae_u32 opcode) /* MOVE.L (An)+,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s32 src = get_long(srca); - m68k_areg(regs, srcreg) += 4; -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_21a0_3)(uae_u32 opcode) /* MOVE.L -(An),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 4; -{ uae_s32 src = get_long(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_21a8_3)(uae_u32 opcode) /* MOVE.L (d16,An),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_21b0_3)(uae_u32 opcode) /* MOVE.L (d8,An,Xn),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_21b8_3)(uae_u32 opcode) /* MOVE.L (xxx).W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_21b9_3)(uae_u32 opcode) /* MOVE.L (xxx).L,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(6)); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_21ba_3)(uae_u32 opcode) /* MOVE.L (d16,PC),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_21bb_3)(uae_u32 opcode) /* MOVE.L (d8,PC,Xn),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_21bc_3)(uae_u32 opcode) /* MOVE.L #.L,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s32 src = get_ilong(2); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(6)); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_21f0_3)(uae_u32 opcode) /* MOVE.L (d8,An,Xn),(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_21fb_3)(uae_u32 opcode) /* MOVE.L (d8,PC,Xn),(xxx).W */ -{ - cpuop_begin(); -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_23f0_3)(uae_u32 opcode) /* MOVE.L (d8,An,Xn),(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = get_ilong(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_23fb_3)(uae_u32 opcode) /* MOVE.L (d8,PC,Xn),(xxx).L */ -{ - cpuop_begin(); -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uaecptr dsta = get_ilong(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3030_3)(uae_u32 opcode) /* MOVE.W (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 src = get_word(srca); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_303b_3)(uae_u32 opcode) /* MOVE.W (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s16 src = get_word(srca); -{ CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}m68k_incpc(4); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_3070_3)(uae_u32 opcode) /* MOVEA.W (d8,An,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uae_u32 val = (uae_s32)(uae_s16)src; - m68k_areg(regs, dstreg) = (val); -}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_307b_3)(uae_u32 opcode) /* MOVEA.W (d8,PC,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uae_u32 val = (uae_s32)(uae_s16)src; - m68k_areg(regs, dstreg) = (val); -}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_30b0_3)(uae_u32 opcode) /* MOVE.W (d8,An,Xn),(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_30bb_3)(uae_u32 opcode) /* MOVE.W (d8,PC,Xn),(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_30f0_3)(uae_u32 opcode) /* MOVE.W (d8,An,Xn),(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += 2; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_30fb_3)(uae_u32 opcode) /* MOVE.W (d8,PC,Xn),(An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg); - m68k_areg(regs, dstreg) += 2; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3130_3)(uae_u32 opcode) /* MOVE.W (d8,An,Xn),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_313b_3)(uae_u32 opcode) /* MOVE.W (d8,PC,Xn),-(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) - 2; - m68k_areg (regs, dstreg) = dsta; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3170_3)(uae_u32 opcode) /* MOVE.W (d8,An,Xn),(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_317b_3)(uae_u32 opcode) /* MOVE.W (d8,PC,Xn),(d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = m68k_areg(regs, dstreg) + (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3180_3)(uae_u32 opcode) /* MOVE.W Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3188_3)(uae_u32 opcode) /* MOVE.W An,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = m68k_areg(regs, srcreg); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3190_3)(uae_u32 opcode) /* MOVE.W (An),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_3198_3)(uae_u32 opcode) /* MOVE.W (An)+,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); -{ uae_s16 src = get_word(srca); - m68k_areg(regs, srcreg) += 2; -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_31a0_3)(uae_u32 opcode) /* MOVE.W -(An),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; -{ uae_s16 src = get_word(srca); - m68k_areg (regs, srcreg) = srca; -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_31a8_3)(uae_u32 opcode) /* MOVE.W (d16,An),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_31b0_3)(uae_u32 opcode) /* MOVE.W (d8,An,Xn),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_31b8_3)(uae_u32 opcode) /* MOVE.W (xxx).W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_31b9_3)(uae_u32 opcode) /* MOVE.W (xxx).L,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_ilong(2); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(6)); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_31ba_3)(uae_u32 opcode) /* MOVE.W (d16,PC),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = m68k_getpc () + 2; - srca += (uae_s32)(uae_s16)get_iword(2); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_31bb_3)(uae_u32 opcode) /* MOVE.W (d8,PC,Xn),(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_31bc_3)(uae_u32 opcode) /* MOVE.W #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uae_s16 src = get_iword(2); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_31f0_3)(uae_u32 opcode) /* MOVE.W (d8,An,Xn),(xxx).W */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_31fb_3)(uae_u32 opcode) /* MOVE.W (d8,PC,Xn),(xxx).W */ -{ - cpuop_begin(); -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = (uae_s32)(uae_s16)get_iword(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(6); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_33f0_3)(uae_u32 opcode) /* MOVE.W (d8,An,Xn),(xxx).L */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = get_ilong(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_33fb_3)(uae_u32 opcode) /* MOVE.W (d8,PC,Xn),(xxx).L */ -{ - cpuop_begin(); -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uaecptr dsta = get_ilong(4); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(8); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4030_3)(uae_u32 opcode) /* NEGX.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s8 src = get_byte(srca); -{ uae_u32 newv = 0 - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(0)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - SET_NFLG (((uae_s8)(newv)) < 0); - put_byte(srca,newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4070_3)(uae_u32 opcode) /* NEGX.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uae_u32 newv = 0 - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(0)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s16)(newv)) == 0)); - SET_NFLG (((uae_s16)(newv)) < 0); - put_word(srca,newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_40b0_3)(uae_u32 opcode) /* NEGX.L (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uae_u32 newv = 0 - src - (GET_XFLG ? 1 : 0); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(0)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_VFLG ((flgs ^ flgo) & (flgo ^ flgn)); - SET_CFLG (flgs ^ ((flgs ^ flgn) & (flgo ^ flgn))); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s32)(newv)) == 0)); - SET_NFLG (((uae_s32)(newv)) < 0); - put_long(srca,newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_40f0_3)(uae_u32 opcode) /* MVSR2.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel2002; } -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); - MakeSR(); - put_word(srca,regs.sr); -}}}m68k_incpc(4); -endlabel2002: ; - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_4130_3)(uae_u32 opcode) /* CHK.L (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - if ((uae_s32)dst < 0) { SET_NFLG (1); Exception(6,oldpc); goto endlabel2003; } - else if (dst > src) { SET_NFLG (0); Exception(6,oldpc); goto endlabel2003; } -}}}}m68k_incpc(4); -endlabel2003: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_413b_3)(uae_u32 opcode) /* CHK.L (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - if ((uae_s32)dst < 0) { SET_NFLG (1); Exception(6,oldpc); goto endlabel2004; } - else if (dst > src) { SET_NFLG (0); Exception(6,oldpc); goto endlabel2004; } -}}}}m68k_incpc(4); -endlabel2004: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_41b0_3)(uae_u32 opcode) /* CHK.W (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - if ((uae_s32)dst < 0) { SET_NFLG (1); Exception(6,oldpc); goto endlabel2005; } - else if (dst > src) { SET_NFLG (0); Exception(6,oldpc); goto endlabel2005; } -}}}}m68k_incpc(4); -endlabel2005: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_41bb_3)(uae_u32 opcode) /* CHK.W (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - if ((uae_s32)dst < 0) { SET_NFLG (1); Exception(6,oldpc); goto endlabel2006; } - else if (dst > src) { SET_NFLG (0); Exception(6,oldpc); goto endlabel2006; } -}}}}m68k_incpc(4); -endlabel2006: ; - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_41f0_3)(uae_u32 opcode) /* LEA.L (d8,An,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ m68k_areg(regs, dstreg) = (srca); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_41fb_3)(uae_u32 opcode) /* LEA.L (d8,PC,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ m68k_areg(regs, dstreg) = (srca); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_4230_3)(uae_u32 opcode) /* CLR.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(0)) == 0); - SET_NFLG (((uae_s8)(0)) < 0); - put_byte(srca,0); -}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4270_3)(uae_u32 opcode) /* CLR.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(0)) == 0); - SET_NFLG (((uae_s16)(0)) < 0); - put_word(srca,0); -}}m68k_incpc(4); - cpuop_end(); -} -#endif - -#ifdef PART_4 -void REGPARAM2 CPUFUNC(op_42b0_3)(uae_u32 opcode) /* CLR.L (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(0)) == 0); - SET_NFLG (((uae_s32)(0)) < 0); - put_long(srca,0); -}}m68k_incpc(4); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_42f0_3)(uae_u32 opcode) /* MVSR2.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); - MakeSR(); - put_word(srca,regs.sr & 0xff); -}}m68k_incpc(4); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_4430_3)(uae_u32 opcode) /* NEG.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s8 src = get_byte(srca); -{{uae_u32 dst = ((uae_s8)(0)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(0)) < 0; - int flgn = ((uae_s8)(dst)) < 0; - SET_ZFLG (((uae_s8)(dst)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(0))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(srca,dst); -}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4470_3)(uae_u32 opcode) /* NEG.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 src = get_word(srca); -{{uae_u32 dst = ((uae_s16)(0)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(0)) < 0; - int flgn = ((uae_s16)(dst)) < 0; - SET_ZFLG (((uae_s16)(dst)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(0))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(srca,dst); -}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_44b0_3)(uae_u32 opcode) /* NEG.L (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s32 src = get_long(srca); -{{uae_u32 dst = ((uae_s32)(0)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(0)) < 0; - int flgn = ((uae_s32)(dst)) < 0; - SET_ZFLG (((uae_s32)(dst)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(0))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(srca,dst); -}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_44f0_3)(uae_u32 opcode) /* MV2SR.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 src = get_word(srca); - MakeSR(); - regs.sr &= 0xFF00; - regs.sr |= src & 0xFF; - MakeFromSR(); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_44fb_3)(uae_u32 opcode) /* MV2SR.B (d8,PC,Xn) */ -{ - cpuop_begin(); -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s16 src = get_word(srca); - MakeSR(); - regs.sr &= 0xFF00; - regs.sr |= src & 0xFF; - MakeFromSR(); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4630_3)(uae_u32 opcode) /* NOT.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s8 src = get_byte(srca); -{ uae_u32 dst = ~src; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(dst)) == 0); - SET_NFLG (((uae_s8)(dst)) < 0); - put_byte(srca,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4670_3)(uae_u32 opcode) /* NOT.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uae_u32 dst = ~src; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(dst)) == 0); - SET_NFLG (((uae_s16)(dst)) < 0); - put_word(srca,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_46b0_3)(uae_u32 opcode) /* NOT.L (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uae_u32 dst = ~src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(dst)) == 0); - SET_NFLG (((uae_s32)(dst)) < 0); - put_long(srca,dst); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_46f0_3)(uae_u32 opcode) /* MV2SR.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{if (!regs.s) { Exception(8,0); goto endlabel2021; } -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 src = get_word(srca); - regs.sr = src; - MakeFromSR(); -}}}}m68k_incpc(4); -endlabel2021: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_46fb_3)(uae_u32 opcode) /* MV2SR.W (d8,PC,Xn) */ -{ - cpuop_begin(); -{if (!regs.s) { Exception(8,0); goto endlabel2022; } -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s16 src = get_word(srca); - regs.sr = src; - MakeFromSR(); -}}}}m68k_incpc(4); -endlabel2022: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4830_3)(uae_u32 opcode) /* NBCD.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s8 src = get_byte(srca); -{ uae_u16 newv_lo = - (src & 0xF) - (GET_XFLG ? 1 : 0); - uae_u16 newv_hi = - (src & 0xF0); - uae_u16 newv; - int cflg; - if (newv_lo > 9) { newv_lo -= 6; } - newv = newv_hi + newv_lo; - cflg = (newv & 0x1F0) > 0x90; - if (cflg) newv -= 0x60; - SET_CFLG (cflg); - COPY_CARRY; - SET_ZFLG (GET_ZFLG & (((uae_s8)(newv)) == 0)); - SET_NFLG (((uae_s8)(newv)) < 0); - put_byte(srca,newv); -}}}}m68k_incpc(4); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4870_3)(uae_u32 opcode) /* PEA.L (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uaecptr dsta = m68k_areg(regs, 7) - 4; - m68k_areg (regs, 7) = dsta; - put_long(dsta,srca); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_487b_3)(uae_u32 opcode) /* PEA.L (d8,PC,Xn) */ -{ - cpuop_begin(); -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uaecptr dsta = m68k_areg(regs, 7) - 4; - m68k_areg (regs, 7) = dsta; - put_long(dsta,srca); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_48b0_3)(uae_u32 opcode) /* MVMLE.W #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{ uae_u16 mask = get_iword(2); -{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); -{ uae_u16 dmask = mask & 0xff, amask = (mask >> 8) & 0xff; - while (dmask) { put_word(srca, m68k_dreg(regs, movem_index1[dmask])); srca += 2; dmask = movem_next[dmask]; } - while (amask) { put_word(srca, m68k_areg(regs, movem_index1[amask])); srca += 2; amask = movem_next[amask]; } -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_48f0_3)(uae_u32 opcode) /* MVMLE.L #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{ uae_u16 mask = get_iword(2); -{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); -{ uae_u16 dmask = mask & 0xff, amask = (mask >> 8) & 0xff; - while (dmask) { put_long(srca, m68k_dreg(regs, movem_index1[dmask])); srca += 4; dmask = movem_next[dmask]; } - while (amask) { put_long(srca, m68k_areg(regs, movem_index1[amask])); srca += 4; amask = movem_next[amask]; } -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_4a30_3)(uae_u32 opcode) /* TST.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s8 src = get_byte(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a3b_3)(uae_u32 opcode) /* TST.B (d8,PC,Xn) */ -{ - cpuop_begin(); -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s8 src = get_byte(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a70_3)(uae_u32 opcode) /* TST.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 src = get_word(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4a7b_3)(uae_u32 opcode) /* TST.W (d8,PC,Xn) */ -{ - cpuop_begin(); -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s16 src = get_word(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4ab0_3)(uae_u32 opcode) /* TST.L (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s32 src = get_long(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4abb_3)(uae_u32 opcode) /* TST.L (d8,PC,Xn) */ -{ - cpuop_begin(); -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s32 src = get_long(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); -}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_4af0_3)(uae_u32 opcode) /* TAS.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s8 src = get_byte(srca); - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - src |= 0x80; - put_byte(srca,src); -}}}m68k_incpc(4); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4cb0_3)(uae_u32 opcode) /* MVMEL.W #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{ uae_u16 mask = get_iword(2); - unsigned int dmask = mask & 0xff, amask = (mask >> 8) & 0xff; -{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); -{ while (dmask) { m68k_dreg(regs, movem_index1[dmask]) = (uae_s32)(uae_s16)get_word(srca); srca += 2; dmask = movem_next[dmask]; } - while (amask) { m68k_areg(regs, movem_index1[amask]) = (uae_s32)(uae_s16)get_word(srca); srca += 2; amask = movem_next[amask]; } -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4cbb_3)(uae_u32 opcode) /* MVMEL.W #.W,(d8,PC,Xn) */ -{ - cpuop_begin(); - uae_u32 dstreg = 3; -{ uae_u16 mask = get_iword(2); - unsigned int dmask = mask & 0xff, amask = (mask >> 8) & 0xff; -{ uaecptr tmppc = m68k_getpc() + 4; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(4)); -{ while (dmask) { m68k_dreg(regs, movem_index1[dmask]) = (uae_s32)(uae_s16)get_word(srca); srca += 2; dmask = movem_next[dmask]; } - while (amask) { m68k_areg(regs, movem_index1[amask]) = (uae_s32)(uae_s16)get_word(srca); srca += 2; amask = movem_next[amask]; } -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4cf0_3)(uae_u32 opcode) /* MVMEL.L #.W,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{ uae_u16 mask = get_iword(2); - unsigned int dmask = mask & 0xff, amask = (mask >> 8) & 0xff; -{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(4)); -{ while (dmask) { m68k_dreg(regs, movem_index1[dmask]) = get_long(srca); srca += 4; dmask = movem_next[dmask]; } - while (amask) { m68k_areg(regs, movem_index1[amask]) = get_long(srca); srca += 4; amask = movem_next[amask]; } -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4cfb_3)(uae_u32 opcode) /* MVMEL.L #.W,(d8,PC,Xn) */ -{ - cpuop_begin(); - uae_u32 dstreg = 3; -{ uae_u16 mask = get_iword(2); - unsigned int dmask = mask & 0xff, amask = (mask >> 8) & 0xff; -{ uaecptr tmppc = m68k_getpc() + 4; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(4)); -{ while (dmask) { m68k_dreg(regs, movem_index1[dmask]) = get_long(srca); srca += 4; dmask = movem_next[dmask]; } - while (amask) { m68k_areg(regs, movem_index1[amask]) = get_long(srca); srca += 4; amask = movem_next[amask]; } -}}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4eb0_3)(uae_u32 opcode) /* JSR.L (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); - m68k_do_jsr(m68k_getpc() + 4, srca); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4ebb_3)(uae_u32 opcode) /* JSR.L (d8,PC,Xn) */ -{ - cpuop_begin(); -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); - m68k_do_jsr(m68k_getpc() + 4, srca); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4ef0_3)(uae_u32 opcode) /* JMP.L (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); - m68k_setpc(srca); -}} cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_4efb_3)(uae_u32 opcode) /* JMP.L (d8,PC,Xn) */ -{ - cpuop_begin(); -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); - m68k_setpc(srca); -}} cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_5030_3)(uae_u32 opcode) /* ADD.B #,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -#endif - -#ifdef PART_5 -void REGPARAM2 CPUFUNC(op_5070_3)(uae_u32 opcode) /* ADD.W #,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_50b0_3)(uae_u32 opcode) /* ADD.L #,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_50f0_3)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ int val = cctrue(0) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_5130_3)(uae_u32 opcode) /* SUB.B #,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_5170_3)(uae_u32 opcode) /* SUB.W #,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_51b0_3)(uae_u32 opcode) /* SUB.L #,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = imm8_table[((opcode >> 1) & 7)]; -#else - uae_u32 srcreg = imm8_table[((opcode >> 9) & 7)]; -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_u32 src = srcreg; -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_51f0_3)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ int val = cctrue(1) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_52f0_3)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ int val = cctrue(2) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_53f0_3)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ int val = cctrue(3) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_54f0_3)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ int val = cctrue(4) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_55f0_3)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ int val = cctrue(5) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_56f0_3)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ int val = cctrue(6) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_57f0_3)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ int val = cctrue(7) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_58f0_3)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ int val = cctrue(8) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_59f0_3)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ int val = cctrue(9) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5af0_3)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ int val = cctrue(10) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5bf0_3)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ int val = cctrue(11) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5cf0_3)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ int val = cctrue(12) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5df0_3)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ int val = cctrue(13) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5ef0_3)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ int val = cctrue(14) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_5ff0_3)(uae_u32 opcode) /* Scc.B (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ int val = cctrue(15) ? 0xff : 0; - put_byte(srca,val); -}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#endif - -#ifdef PART_6 -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_60ff_3)(uae_u32 opcode) /* Bcc.L #.L */ -{ - cpuop_begin(); -{ m68k_incpc(2); - if (!cctrue(0)) goto endlabel2065; - last_addr_for_exception_3 = m68k_getpc() + 2; - last_fault_for_exception_3 = m68k_getpc() + 1; - last_op_for_exception_3 = opcode; Exception(3,0); goto endlabel2065; -{ uae_s32 src = get_ilong(2); - if (!cctrue(0)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(6); -endlabel2065: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_62ff_3)(uae_u32 opcode) /* Bcc.L #.L */ -{ - cpuop_begin(); -{ m68k_incpc(2); - if (!cctrue(2)) goto endlabel2066; - last_addr_for_exception_3 = m68k_getpc() + 2; - last_fault_for_exception_3 = m68k_getpc() + 1; - last_op_for_exception_3 = opcode; Exception(3,0); goto endlabel2066; -{ uae_s32 src = get_ilong(2); - if (!cctrue(2)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(6); -endlabel2066: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_63ff_3)(uae_u32 opcode) /* Bcc.L #.L */ -{ - cpuop_begin(); -{ m68k_incpc(2); - if (!cctrue(3)) goto endlabel2067; - last_addr_for_exception_3 = m68k_getpc() + 2; - last_fault_for_exception_3 = m68k_getpc() + 1; - last_op_for_exception_3 = opcode; Exception(3,0); goto endlabel2067; -{ uae_s32 src = get_ilong(2); - if (!cctrue(3)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(6); -endlabel2067: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_64ff_3)(uae_u32 opcode) /* Bcc.L #.L */ -{ - cpuop_begin(); -{ m68k_incpc(2); - if (!cctrue(4)) goto endlabel2068; - last_addr_for_exception_3 = m68k_getpc() + 2; - last_fault_for_exception_3 = m68k_getpc() + 1; - last_op_for_exception_3 = opcode; Exception(3,0); goto endlabel2068; -{ uae_s32 src = get_ilong(2); - if (!cctrue(4)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(6); -endlabel2068: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_65ff_3)(uae_u32 opcode) /* Bcc.L #.L */ -{ - cpuop_begin(); -{ m68k_incpc(2); - if (!cctrue(5)) goto endlabel2069; - last_addr_for_exception_3 = m68k_getpc() + 2; - last_fault_for_exception_3 = m68k_getpc() + 1; - last_op_for_exception_3 = opcode; Exception(3,0); goto endlabel2069; -{ uae_s32 src = get_ilong(2); - if (!cctrue(5)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(6); -endlabel2069: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_66ff_3)(uae_u32 opcode) /* Bcc.L #.L */ -{ - cpuop_begin(); -{ m68k_incpc(2); - if (!cctrue(6)) goto endlabel2070; - last_addr_for_exception_3 = m68k_getpc() + 2; - last_fault_for_exception_3 = m68k_getpc() + 1; - last_op_for_exception_3 = opcode; Exception(3,0); goto endlabel2070; -{ uae_s32 src = get_ilong(2); - if (!cctrue(6)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(6); -endlabel2070: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_67ff_3)(uae_u32 opcode) /* Bcc.L #.L */ -{ - cpuop_begin(); -{ m68k_incpc(2); - if (!cctrue(7)) goto endlabel2071; - last_addr_for_exception_3 = m68k_getpc() + 2; - last_fault_for_exception_3 = m68k_getpc() + 1; - last_op_for_exception_3 = opcode; Exception(3,0); goto endlabel2071; -{ uae_s32 src = get_ilong(2); - if (!cctrue(7)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(6); -endlabel2071: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_68ff_3)(uae_u32 opcode) /* Bcc.L #.L */ -{ - cpuop_begin(); -{ m68k_incpc(2); - if (!cctrue(8)) goto endlabel2072; - last_addr_for_exception_3 = m68k_getpc() + 2; - last_fault_for_exception_3 = m68k_getpc() + 1; - last_op_for_exception_3 = opcode; Exception(3,0); goto endlabel2072; -{ uae_s32 src = get_ilong(2); - if (!cctrue(8)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(6); -endlabel2072: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_69ff_3)(uae_u32 opcode) /* Bcc.L #.L */ -{ - cpuop_begin(); -{ m68k_incpc(2); - if (!cctrue(9)) goto endlabel2073; - last_addr_for_exception_3 = m68k_getpc() + 2; - last_fault_for_exception_3 = m68k_getpc() + 1; - last_op_for_exception_3 = opcode; Exception(3,0); goto endlabel2073; -{ uae_s32 src = get_ilong(2); - if (!cctrue(9)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(6); -endlabel2073: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6aff_3)(uae_u32 opcode) /* Bcc.L #.L */ -{ - cpuop_begin(); -{ m68k_incpc(2); - if (!cctrue(10)) goto endlabel2074; - last_addr_for_exception_3 = m68k_getpc() + 2; - last_fault_for_exception_3 = m68k_getpc() + 1; - last_op_for_exception_3 = opcode; Exception(3,0); goto endlabel2074; -{ uae_s32 src = get_ilong(2); - if (!cctrue(10)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(6); -endlabel2074: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6bff_3)(uae_u32 opcode) /* Bcc.L #.L */ -{ - cpuop_begin(); -{ m68k_incpc(2); - if (!cctrue(11)) goto endlabel2075; - last_addr_for_exception_3 = m68k_getpc() + 2; - last_fault_for_exception_3 = m68k_getpc() + 1; - last_op_for_exception_3 = opcode; Exception(3,0); goto endlabel2075; -{ uae_s32 src = get_ilong(2); - if (!cctrue(11)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(6); -endlabel2075: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6cff_3)(uae_u32 opcode) /* Bcc.L #.L */ -{ - cpuop_begin(); -{ m68k_incpc(2); - if (!cctrue(12)) goto endlabel2076; - last_addr_for_exception_3 = m68k_getpc() + 2; - last_fault_for_exception_3 = m68k_getpc() + 1; - last_op_for_exception_3 = opcode; Exception(3,0); goto endlabel2076; -{ uae_s32 src = get_ilong(2); - if (!cctrue(12)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(6); -endlabel2076: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6dff_3)(uae_u32 opcode) /* Bcc.L #.L */ -{ - cpuop_begin(); -{ m68k_incpc(2); - if (!cctrue(13)) goto endlabel2077; - last_addr_for_exception_3 = m68k_getpc() + 2; - last_fault_for_exception_3 = m68k_getpc() + 1; - last_op_for_exception_3 = opcode; Exception(3,0); goto endlabel2077; -{ uae_s32 src = get_ilong(2); - if (!cctrue(13)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(6); -endlabel2077: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6eff_3)(uae_u32 opcode) /* Bcc.L #.L */ -{ - cpuop_begin(); -{ m68k_incpc(2); - if (!cctrue(14)) goto endlabel2078; - last_addr_for_exception_3 = m68k_getpc() + 2; - last_fault_for_exception_3 = m68k_getpc() + 1; - last_op_for_exception_3 = opcode; Exception(3,0); goto endlabel2078; -{ uae_s32 src = get_ilong(2); - if (!cctrue(14)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(6); -endlabel2078: ; - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_6fff_3)(uae_u32 opcode) /* Bcc.L #.L */ -{ - cpuop_begin(); -{ m68k_incpc(2); - if (!cctrue(15)) goto endlabel2079; - last_addr_for_exception_3 = m68k_getpc() + 2; - last_fault_for_exception_3 = m68k_getpc() + 1; - last_op_for_exception_3 = opcode; Exception(3,0); goto endlabel2079; -{ uae_s32 src = get_ilong(2); - if (!cctrue(15)) goto didnt_jump; - m68k_incpc ((uae_s32)src + 2); -return; -didnt_jump:; -}}m68k_incpc(6); -endlabel2079: ; - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_8030_3)(uae_u32 opcode) /* OR.B (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_803b_3)(uae_u32 opcode) /* OR.B (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8070_3)(uae_u32 opcode) /* OR.W (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_807b_3)(uae_u32 opcode) /* OR.W (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_80b0_3)(uae_u32 opcode) /* OR.L (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_80bb_3)(uae_u32 opcode) /* OR.L (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_80f0_3)(uae_u32 opcode) /* DIVU.W (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -m68k_incpc(4); - if (src == 0) { SET_VFLG (0); Exception (5, oldpc); goto endlabel2086; } else { - uae_u32 newv = (uae_u32)dst / (uae_u32)(uae_u16)src; - uae_u32 rem = (uae_u32)dst % (uae_u32)(uae_u16)src; - if (newv > 0xffff) { SET_VFLG (1); SET_NFLG (1); SET_CFLG (0); } else - { - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_NFLG (((uae_s16)(newv)) < 0); - newv = (newv & 0xffff) | ((uae_u32)rem << 16); - m68k_dreg(regs, dstreg) = (newv); - } - } -}}}}endlabel2086: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_80fb_3)(uae_u32 opcode) /* DIVU.W (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -m68k_incpc(4); - if (src == 0) { SET_VFLG (0); Exception (5, oldpc); goto endlabel2087; } else { - uae_u32 newv = (uae_u32)dst / (uae_u32)(uae_u16)src; - uae_u32 rem = (uae_u32)dst % (uae_u32)(uae_u16)src; - if (newv > 0xffff) { SET_VFLG (1); SET_NFLG (1); SET_CFLG (0); } else - { - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_NFLG (((uae_s16)(newv)) < 0); - newv = (newv & 0xffff) | ((uae_u32)rem << 16); - m68k_dreg(regs, dstreg) = (newv); - } - } -}}}}endlabel2087: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8130_3)(uae_u32 opcode) /* OR.B Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); -{ uae_s8 dst = get_byte(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_8170_3)(uae_u32 opcode) /* OR.W Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); -{ uae_s16 dst = get_word(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_81b0_3)(uae_u32 opcode) /* OR.L Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); -{ uae_s32 dst = get_long(dsta); - src |= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_81f0_3)(uae_u32 opcode) /* DIVS.W (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -m68k_incpc(4); - if (src == 0) { SET_VFLG (0); Exception(5,oldpc); goto endlabel2091; } else { - uae_s32 newv = (uae_s32)dst / (uae_s32)(uae_s16)src; - uae_u16 rem = (uae_s32)dst % (uae_s32)(uae_s16)src; - if ((newv & 0xffff8000) != 0 && (newv & 0xffff8000) != 0xffff8000) { SET_VFLG (1); SET_NFLG (1); SET_CFLG (0); } else - { - if (((uae_s16)rem < 0) != ((uae_s32)dst < 0)) rem = -rem; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_NFLG (((uae_s16)(newv)) < 0); - newv = (newv & 0xffff) | ((uae_u32)rem << 16); - m68k_dreg(regs, dstreg) = (newv); - } - } -}}}}endlabel2091: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_81fb_3)(uae_u32 opcode) /* DIVS.W (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{ uaecptr oldpc = m68k_getpc(); -{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -m68k_incpc(4); - if (src == 0) { SET_VFLG (0); Exception(5,oldpc); goto endlabel2092; } else { - uae_s32 newv = (uae_s32)dst / (uae_s32)(uae_s16)src; - uae_u16 rem = (uae_s32)dst % (uae_s32)(uae_s16)src; - if ((newv & 0xffff8000) != 0 && (newv & 0xffff8000) != 0xffff8000) { SET_VFLG (1); SET_NFLG (1); SET_CFLG (0); } else - { - if (((uae_s16)rem < 0) != ((uae_s32)dst < 0)) rem = -rem; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_NFLG (((uae_s16)(newv)) < 0); - newv = (newv & 0xffff) | ((uae_u32)rem << 16); - m68k_dreg(regs, dstreg) = (newv); - } - } -}}}}endlabel2092: ; - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9030_3)(uae_u32 opcode) /* SUB.B (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_903b_3)(uae_u32 opcode) /* SUB.B (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9070_3)(uae_u32 opcode) /* SUB.W (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_907b_3)(uae_u32 opcode) /* SUB.W (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_90b0_3)(uae_u32 opcode) /* SUB.L (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_90bb_3)(uae_u32 opcode) /* SUB.L (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_90f0_3)(uae_u32 opcode) /* SUBA.W (d8,An,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst - src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_90fb_3)(uae_u32 opcode) /* SUBA.W (d8,PC,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst - src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_9130_3)(uae_u32 opcode) /* SUB.B Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_9170_3)(uae_u32 opcode) /* SUB.W Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_91b0_3)(uae_u32 opcode) /* SUB.L Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgo) & (flgn ^ flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_91f0_3)(uae_u32 opcode) /* SUBA.L (d8,An,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst - src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_91fb_3)(uae_u32 opcode) /* SUBA.L (d8,PC,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst - src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_b030_3)(uae_u32 opcode) /* CMP.B (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b03b_3)(uae_u32 opcode) /* CMP.B (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) - ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u8)(src)) > ((uae_u8)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -#endif - -#ifdef PART_7 -void REGPARAM2 CPUFUNC(op_b070_3)(uae_u32 opcode) /* CMP.W (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b07b_3)(uae_u32 opcode) /* CMP.W (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) - ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u16)(src)) > ((uae_u16)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b0b0_3)(uae_u32 opcode) /* CMP.L (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b0bb_3)(uae_u32 opcode) /* CMP.L (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b0f0_3)(uae_u32 opcode) /* CMPA.W (d8,An,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b0fb_3)(uae_u32 opcode) /* CMPA.W (d8,PC,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b130_3)(uae_u32 opcode) /* EOR.B Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); -{ uae_s8 dst = get_byte(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b170_3)(uae_u32 opcode) /* EOR.W Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); -{ uae_s16 dst = get_word(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b1b0_3)(uae_u32 opcode) /* EOR.L Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); -{ uae_s32 dst = get_long(dsta); - src ^= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b1f0_3)(uae_u32 opcode) /* CMPA.L (d8,An,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_b1fb_3)(uae_u32 opcode) /* CMPA.L (d8,PC,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) - ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs != flgo) && (flgn != flgo)); - SET_CFLG (((uae_u32)(src)) > ((uae_u32)(dst))); - SET_NFLG (flgn != 0); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c030_3)(uae_u32 opcode) /* AND.B (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c03b_3)(uae_u32 opcode) /* AND.B (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((src) & 0xff); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c070_3)(uae_u32 opcode) /* AND.W (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c07b_3)(uae_u32 opcode) /* AND.W (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((src) & 0xffff); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c0b0_3)(uae_u32 opcode) /* AND.L (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c0bb_3)(uae_u32 opcode) /* AND.L (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - m68k_dreg(regs, dstreg) = (src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c0f0_3)(uae_u32 opcode) /* MULU.W (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = (uae_u32)(uae_u16)dst * (uae_u32)(uae_u16)src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_NFLG (((uae_s32)(newv)) < 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c0fb_3)(uae_u32 opcode) /* MULU.W (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = (uae_u32)(uae_u16)dst * (uae_u32)(uae_u16)src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_NFLG (((uae_s32)(newv)) < 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c130_3)(uae_u32 opcode) /* AND.B Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); -{ uae_s8 dst = get_byte(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s8)(src)) == 0); - SET_NFLG (((uae_s8)(src)) < 0); - put_byte(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c170_3)(uae_u32 opcode) /* AND.W Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); -{ uae_s16 dst = get_word(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(src)) == 0); - SET_NFLG (((uae_s16)(src)) < 0); - put_word(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c1b0_3)(uae_u32 opcode) /* AND.L Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); -{ uae_s32 dst = get_long(dsta); - src &= dst; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(src)) == 0); - SET_NFLG (((uae_s32)(src)) < 0); - put_long(dsta,src); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c1f0_3)(uae_u32 opcode) /* MULS.W (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = (uae_s32)(uae_s16)dst * (uae_s32)(uae_s16)src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_NFLG (((uae_s32)(newv)) < 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_c1fb_3)(uae_u32 opcode) /* MULS.W (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{ uae_u32 newv = (uae_s32)(uae_s16)dst * (uae_s32)(uae_s16)src; - CLEAR_CZNV; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_NFLG (((uae_s32)(newv)) < 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d030_3)(uae_u32 opcode) /* ADD.B (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d03b_3)(uae_u32 opcode) /* ADD.B (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s8 src = get_byte(srca); -{ uae_s8 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xff) | ((newv) & 0xff); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d070_3)(uae_u32 opcode) /* ADD.W (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d07b_3)(uae_u32 opcode) /* ADD.W (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uae_s16 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (m68k_dreg(regs, dstreg) & ~0xffff) | ((newv) & 0xffff); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d0b0_3)(uae_u32 opcode) /* ADD.L (d8,An,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d0bb_3)(uae_u32 opcode) /* ADD.L (d8,PC,Xn),Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_dreg(regs, dstreg); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - m68k_dreg(regs, dstreg) = (newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_d0f0_3)(uae_u32 opcode) /* ADDA.W (d8,An,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst + src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_d0fb_3)(uae_u32 opcode) /* ADDA.W (d8,PC,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s16 src = get_word(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst + src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_d130_3)(uae_u32 opcode) /* ADD.B Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s8 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); -{ uae_s8 dst = get_byte(dsta); -{{uae_u32 newv = ((uae_s8)(dst)) + ((uae_s8)(src)); -{ int flgs = ((uae_s8)(src)) < 0; - int flgo = ((uae_s8)(dst)) < 0; - int flgn = ((uae_s8)(newv)) < 0; - SET_ZFLG (((uae_s8)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u8)(~dst)) < ((uae_u8)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_byte(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d170_3)(uae_u32 opcode) /* ADD.W Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s16 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); -{ uae_s16 dst = get_word(dsta); -{{uae_u32 newv = ((uae_s16)(dst)) + ((uae_s16)(src)); -{ int flgs = ((uae_s16)(src)) < 0; - int flgo = ((uae_s16)(dst)) < 0; - int flgn = ((uae_s16)(newv)) < 0; - SET_ZFLG (((uae_s16)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u16)(~dst)) < ((uae_u16)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_word(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_d1b0_3)(uae_u32 opcode) /* ADD.L Dn,(d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 1) & 7); -#else - uae_u32 srcreg = ((opcode >> 9) & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 8) & 7; -#else - uae_u32 dstreg = opcode & 7; -#endif -{{ uae_s32 src = m68k_dreg(regs, srcreg); -{ uaecptr dsta = get_disp_ea_000(m68k_areg(regs, dstreg), get_iword(2)); -{ uae_s32 dst = get_long(dsta); -{{uae_u32 newv = ((uae_s32)(dst)) + ((uae_s32)(src)); -{ int flgs = ((uae_s32)(src)) < 0; - int flgo = ((uae_s32)(dst)) < 0; - int flgn = ((uae_s32)(newv)) < 0; - SET_ZFLG (((uae_s32)(newv)) == 0); - SET_VFLG ((flgs ^ flgn) & (flgo ^ flgn)); - SET_CFLG (((uae_u32)(~dst)) < ((uae_u32)(src))); - COPY_CARRY; - SET_NFLG (flgn != 0); - put_long(dsta,newv); -}}}}}}}m68k_incpc(4); - cpuop_end(); -} -#endif - -#ifdef PART_8 -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_d1f0_3)(uae_u32 opcode) /* ADDA.L (d8,An,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst + src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_d1fb_3)(uae_u32 opcode) /* ADDA.L (d8,PC,Xn),An */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 dstreg = (opcode >> 1) & 7; -#else - uae_u32 dstreg = (opcode >> 9) & 7; -#endif -{{ uaecptr tmppc = m68k_getpc() + 2; - uaecptr srca = get_disp_ea_000(tmppc, get_iword(2)); -{ uae_s32 src = get_long(srca); -{ uae_s32 dst = m68k_areg(regs, dstreg); -{ uae_u32 newv = dst + src; - m68k_areg(regs, dstreg) = (newv); -}}}}}m68k_incpc(4); - cpuop_end(); -} - -#endif -void REGPARAM2 CPUFUNC(op_e0f0_3)(uae_u32 opcode) /* ASRW.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 data = get_word(dataa); -{ uae_u32 val = (uae_u16)data; - uae_u32 sign = 0x8000 & val; - uae_u32 cflg = val & 1; - val = (val >> 1) | sign; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - SET_CFLG (cflg); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e1f0_3)(uae_u32 opcode) /* ASLW.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 data = get_word(dataa); -{ uae_u32 val = (uae_u16)data; - uae_u32 sign = 0x8000 & val; - uae_u32 sign2; - val <<= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); - sign2 = 0x8000 & val; - SET_CFLG (sign != 0); - COPY_CARRY; - SET_VFLG (GET_VFLG | (sign2 != sign)); - put_word(dataa,val); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e2f0_3)(uae_u32 opcode) /* LSRW.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 data = get_word(dataa); -{ uae_u32 val = (uae_u16)data; - uae_u32 carry = val & 1; - val >>= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e3f0_3)(uae_u32 opcode) /* LSLW.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 data = get_word(dataa); -{ uae_u16 val = data; - uae_u32 carry = val & 0x8000; - val <<= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry >> 15); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e4f0_3)(uae_u32 opcode) /* ROXRW.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 data = get_word(dataa); -{ uae_u16 val = data; - uae_u32 carry = val & 1; - val >>= 1; - if (GET_XFLG) val |= 0x8000; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e5f0_3)(uae_u32 opcode) /* ROXLW.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 data = get_word(dataa); -{ uae_u16 val = data; - uae_u32 carry = val & 0x8000; - val <<= 1; - if (GET_XFLG) val |= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry >> 15); - COPY_CARRY; - put_word(dataa,val); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e6f0_3)(uae_u32 opcode) /* RORW.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 data = get_word(dataa); -{ uae_u16 val = data; - uae_u32 carry = val & 1; - val >>= 1; - if (carry) val |= 0x8000; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry); - put_word(dataa,val); -}}}}m68k_incpc(4); - cpuop_end(); -} -void REGPARAM2 CPUFUNC(op_e7f0_3)(uae_u32 opcode) /* ROLW.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr dataa = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); -{ uae_s16 data = get_word(dataa); -{ uae_u16 val = data; - uae_u32 carry = val & 0x8000; - val <<= 1; - if (carry) val |= 1; - CLEAR_CZNV; - SET_ZFLG (((uae_s16)(val)) == 0); - SET_NFLG (((uae_s16)(val)) < 0); -SET_CFLG (carry >> 15); - put_word(dataa,val); -}}}}m68k_incpc(4); - cpuop_end(); -} -#endif - - -#ifdef _MSC_VER -#pragma warning(disable:4102) /* unreferenced label */ -#endif - -#if !defined(PART_1) && !defined(PART_2) && !defined(PART_3) && !defined(PART_4) && !defined(PART_5) && !defined(PART_6) && !defined(PART_7) && !defined(PART_8) -#define PART_1 1 -#define PART_2 1 -#define PART_3 1 -#define PART_4 1 -#define PART_5 1 -#define PART_6 1 -#define PART_7 1 -#define PART_8 1 -#endif - -#ifdef PART_1 -#endif - -#ifdef PART_2 -#endif - -#ifdef PART_3 -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_40c0_4)(uae_u32 opcode) /* MVSR2.W Dn */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ MakeSR(); - m68k_dreg(regs, srcreg) = (m68k_dreg(regs, srcreg) & ~0xffff) | ((regs.sr) & 0xffff); -}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_40d0_4)(uae_u32 opcode) /* MVSR2.W (An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); - MakeSR(); - put_word(srca,regs.sr); -}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_40d8_4)(uae_u32 opcode) /* MVSR2.W (An)+ */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg); - m68k_areg(regs, srcreg) += 2; - MakeSR(); - put_word(srca,regs.sr); -}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_40e0_4)(uae_u32 opcode) /* MVSR2.W -(An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) - 2; - m68k_areg (regs, srcreg) = srca; - MakeSR(); - put_word(srca,regs.sr); -}}m68k_incpc(2); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_40e8_4)(uae_u32 opcode) /* MVSR2.W (d16,An) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = m68k_areg(regs, srcreg) + (uae_s32)(uae_s16)get_iword(2); - MakeSR(); - put_word(srca,regs.sr); -}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_40f0_4)(uae_u32 opcode) /* MVSR2.W (d8,An,Xn) */ -{ - cpuop_begin(); -#ifdef HAVE_GET_WORD_UNSWAPPED - uae_u32 srcreg = ((opcode >> 8) & 7); -#else - uae_u32 srcreg = (opcode & 7); -#endif -{{ uaecptr srca = get_disp_ea_000(m68k_areg(regs, srcreg), get_iword(2)); - MakeSR(); - put_word(srca,regs.sr); -}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_40f8_4)(uae_u32 opcode) /* MVSR2.W (xxx).W */ -{ - cpuop_begin(); -{{ uaecptr srca = (uae_s32)(uae_s16)get_iword(2); - MakeSR(); - put_word(srca,regs.sr); -}}m68k_incpc(4); - cpuop_end(); -} - -#endif -#ifndef NOFLAGS -void REGPARAM2 CPUFUNC(op_40f9_4)(uae_u32 opcode) /* MVSR2.W (xxx).L */ -{ - cpuop_begin(); -{{ uaecptr srca = get_ilong(2); - MakeSR(); - put_word(srca,regs.sr); -}}m68k_incpc(6); - cpuop_end(); -} - -#endif -#endif - -#ifdef PART_4 -void REGPARAM2 CPUFUNC(op_4e73_4)(uae_u32 opcode) /* RTE.L */ -{ - cpuop_begin(); -{if (!regs.s) { Exception(8,0); goto endlabel2161; } -{{ uaecptr sra = m68k_areg(regs, 7); -{ uae_s16 sr = get_word(sra); - m68k_areg(regs, 7) += 2; -{ uaecptr pca = m68k_areg(regs, 7); -{ uae_s32 pc = get_long(pca); - m68k_areg(regs, 7) += 4; - regs.sr = sr; m68k_setpc_rte(pc); - MakeFromSR(); -}}}}}}endlabel2161: ; - cpuop_end(); -} -#endif - -#ifdef PART_5 -#endif - -#ifdef PART_6 -#endif - -#ifdef PART_7 -#endif - -#ifdef PART_8 -#endif - diff --git a/BasiliskII/src/uae_cpu/cpuemu_nf.cpp b/BasiliskII/src/uae_cpu/cpuemu_nf.cpp deleted file mode 100644 index 72e965cf..00000000 --- a/BasiliskII/src/uae_cpu/cpuemu_nf.cpp +++ /dev/null @@ -1,2 +0,0 @@ -#define NOFLAGS -#include "cpuemu.cpp" diff --git a/BasiliskII/src/uae_cpu/cpustbl.cpp b/BasiliskII/src/uae_cpu/cpustbl.cpp deleted file mode 100644 index 87fc85bf..00000000 --- a/BasiliskII/src/uae_cpu/cpustbl.cpp +++ /dev/null @@ -1,8720 +0,0 @@ -#include "sysdeps.h" -#include "m68k.h" -#include "memory.h" -#include "readcpu.h" -#include "newcpu.h" -#include "compiler/compemu.h" -#include "fpu/fpu.h" -#include "cputbl.h" -#define SET_CFLG_ALWAYS(x) SET_CFLG(x) -#define SET_NFLG_ALWAYS(x) SET_NFLG(x) -#define CPUFUNC_FF(x) x##_ff -#define CPUFUNC_NF(x) x##_nf -#define CPUFUNC(x) CPUFUNC_FF(x) -#ifdef NOFLAGS -# include "noflags.h" -#endif -struct cputbl CPUFUNC(op_smalltbl_0)[] = { -{ CPUFUNC(op_0_0), 0, 0 }, /* OR.B #.B,Dn */ -{ CPUFUNC(op_10_0), 0, 16 }, /* OR.B #.B,(An) */ -{ CPUFUNC(op_18_0), 0, 24 }, /* OR.B #.B,(An)+ */ -{ CPUFUNC(op_20_0), 0, 32 }, /* OR.B #.B,-(An) */ -{ CPUFUNC(op_28_0), 0, 40 }, /* OR.B #.B,(d16,An) */ -{ CPUFUNC(op_30_0), 0, 48 }, /* OR.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_38_0), 0, 56 }, /* OR.B #.B,(xxx).W */ -{ CPUFUNC(op_39_0), 0, 57 }, /* OR.B #.B,(xxx).L */ -{ CPUFUNC(op_3c_0), 0, 60 }, /* ORSR.B #.W */ -{ CPUFUNC(op_40_0), 0, 64 }, /* OR.W #.W,Dn */ -{ CPUFUNC(op_50_0), 0, 80 }, /* OR.W #.W,(An) */ -{ CPUFUNC(op_58_0), 0, 88 }, /* OR.W #.W,(An)+ */ -{ CPUFUNC(op_60_0), 0, 96 }, /* OR.W #.W,-(An) */ -{ CPUFUNC(op_68_0), 0, 104 }, /* OR.W #.W,(d16,An) */ -{ CPUFUNC(op_70_0), 0, 112 }, /* OR.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_78_0), 0, 120 }, /* OR.W #.W,(xxx).W */ -{ CPUFUNC(op_79_0), 0, 121 }, /* OR.W #.W,(xxx).L */ -{ CPUFUNC(op_7c_0), 0, 124 }, /* ORSR.W #.W */ -{ CPUFUNC(op_80_0), 0, 128 }, /* OR.L #.L,Dn */ -{ CPUFUNC(op_90_0), 0, 144 }, /* OR.L #.L,(An) */ -{ CPUFUNC(op_98_0), 0, 152 }, /* OR.L #.L,(An)+ */ -{ CPUFUNC(op_a0_0), 0, 160 }, /* OR.L #.L,-(An) */ -{ CPUFUNC(op_a8_0), 0, 168 }, /* OR.L #.L,(d16,An) */ -{ CPUFUNC(op_b0_0), 0, 176 }, /* OR.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_b8_0), 0, 184 }, /* OR.L #.L,(xxx).W */ -{ CPUFUNC(op_b9_0), 0, 185 }, /* OR.L #.L,(xxx).L */ -{ CPUFUNC(op_d0_0), 0, 208 }, /* CHK2.B #.W,(An) */ -{ CPUFUNC(op_e8_0), 0, 232 }, /* CHK2.B #.W,(d16,An) */ -{ CPUFUNC(op_f0_0), 0, 240 }, /* CHK2.B #.W,(d8,An,Xn) */ -{ CPUFUNC(op_f8_0), 0, 248 }, /* CHK2.B #.W,(xxx).W */ -{ CPUFUNC(op_f9_0), 0, 249 }, /* CHK2.B #.W,(xxx).L */ -{ CPUFUNC(op_fa_0), 0, 250 }, /* CHK2.B #.W,(d16,PC) */ -{ CPUFUNC(op_fb_0), 0, 251 }, /* CHK2.B #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_100_0), 0, 256 }, /* BTST.L Dn,Dn */ -{ CPUFUNC_FF(op_108_0), 0, 264 }, /* MVPMR.W (d16,An),Dn */ -{ CPUFUNC(op_110_0), 0, 272 }, /* BTST.B Dn,(An) */ -{ CPUFUNC(op_118_0), 0, 280 }, /* BTST.B Dn,(An)+ */ -{ CPUFUNC(op_120_0), 0, 288 }, /* BTST.B Dn,-(An) */ -{ CPUFUNC(op_128_0), 0, 296 }, /* BTST.B Dn,(d16,An) */ -{ CPUFUNC(op_130_0), 0, 304 }, /* BTST.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_138_0), 0, 312 }, /* BTST.B Dn,(xxx).W */ -{ CPUFUNC(op_139_0), 0, 313 }, /* BTST.B Dn,(xxx).L */ -{ CPUFUNC(op_13a_0), 0, 314 }, /* BTST.B Dn,(d16,PC) */ -{ CPUFUNC(op_13b_0), 0, 315 }, /* BTST.B Dn,(d8,PC,Xn) */ -{ CPUFUNC(op_13c_0), 0, 316 }, /* BTST.B Dn,#.B */ -{ CPUFUNC(op_140_0), 0, 320 }, /* BCHG.L Dn,Dn */ -{ CPUFUNC_FF(op_148_0), 0, 328 }, /* MVPMR.L (d16,An),Dn */ -{ CPUFUNC(op_150_0), 0, 336 }, /* BCHG.B Dn,(An) */ -{ CPUFUNC(op_158_0), 0, 344 }, /* BCHG.B Dn,(An)+ */ -{ CPUFUNC(op_160_0), 0, 352 }, /* BCHG.B Dn,-(An) */ -{ CPUFUNC(op_168_0), 0, 360 }, /* BCHG.B Dn,(d16,An) */ -{ CPUFUNC(op_170_0), 0, 368 }, /* BCHG.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_178_0), 0, 376 }, /* BCHG.B Dn,(xxx).W */ -{ CPUFUNC(op_179_0), 0, 377 }, /* BCHG.B Dn,(xxx).L */ -{ CPUFUNC(op_17a_0), 0, 378 }, /* BCHG.B Dn,(d16,PC) */ -{ CPUFUNC(op_17b_0), 0, 379 }, /* BCHG.B Dn,(d8,PC,Xn) */ -{ CPUFUNC(op_180_0), 0, 384 }, /* BCLR.L Dn,Dn */ -{ CPUFUNC_FF(op_188_0), 0, 392 }, /* MVPRM.W Dn,(d16,An) */ -{ CPUFUNC(op_190_0), 0, 400 }, /* BCLR.B Dn,(An) */ -{ CPUFUNC(op_198_0), 0, 408 }, /* BCLR.B Dn,(An)+ */ -{ CPUFUNC(op_1a0_0), 0, 416 }, /* BCLR.B Dn,-(An) */ -{ CPUFUNC(op_1a8_0), 0, 424 }, /* BCLR.B Dn,(d16,An) */ -{ CPUFUNC(op_1b0_0), 0, 432 }, /* BCLR.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_1b8_0), 0, 440 }, /* BCLR.B Dn,(xxx).W */ -{ CPUFUNC(op_1b9_0), 0, 441 }, /* BCLR.B Dn,(xxx).L */ -{ CPUFUNC(op_1ba_0), 0, 442 }, /* BCLR.B Dn,(d16,PC) */ -{ CPUFUNC(op_1bb_0), 0, 443 }, /* BCLR.B Dn,(d8,PC,Xn) */ -{ CPUFUNC(op_1c0_0), 0, 448 }, /* BSET.L Dn,Dn */ -{ CPUFUNC_FF(op_1c8_0), 0, 456 }, /* MVPRM.L Dn,(d16,An) */ -{ CPUFUNC(op_1d0_0), 0, 464 }, /* BSET.B Dn,(An) */ -{ CPUFUNC(op_1d8_0), 0, 472 }, /* BSET.B Dn,(An)+ */ -{ CPUFUNC(op_1e0_0), 0, 480 }, /* BSET.B Dn,-(An) */ -{ CPUFUNC(op_1e8_0), 0, 488 }, /* BSET.B Dn,(d16,An) */ -{ CPUFUNC(op_1f0_0), 0, 496 }, /* BSET.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_1f8_0), 0, 504 }, /* BSET.B Dn,(xxx).W */ -{ CPUFUNC(op_1f9_0), 0, 505 }, /* BSET.B Dn,(xxx).L */ -{ CPUFUNC(op_1fa_0), 0, 506 }, /* BSET.B Dn,(d16,PC) */ -{ CPUFUNC(op_1fb_0), 0, 507 }, /* BSET.B Dn,(d8,PC,Xn) */ -{ CPUFUNC(op_200_0), 0, 512 }, /* AND.B #.B,Dn */ -{ CPUFUNC(op_210_0), 0, 528 }, /* AND.B #.B,(An) */ -{ CPUFUNC(op_218_0), 0, 536 }, /* AND.B #.B,(An)+ */ -{ CPUFUNC(op_220_0), 0, 544 }, /* AND.B #.B,-(An) */ -{ CPUFUNC(op_228_0), 0, 552 }, /* AND.B #.B,(d16,An) */ -{ CPUFUNC(op_230_0), 0, 560 }, /* AND.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_238_0), 0, 568 }, /* AND.B #.B,(xxx).W */ -{ CPUFUNC(op_239_0), 0, 569 }, /* AND.B #.B,(xxx).L */ -{ CPUFUNC(op_23c_0), 0, 572 }, /* ANDSR.B #.W */ -{ CPUFUNC(op_240_0), 0, 576 }, /* AND.W #.W,Dn */ -{ CPUFUNC(op_250_0), 0, 592 }, /* AND.W #.W,(An) */ -{ CPUFUNC(op_258_0), 0, 600 }, /* AND.W #.W,(An)+ */ -{ CPUFUNC(op_260_0), 0, 608 }, /* AND.W #.W,-(An) */ -{ CPUFUNC(op_268_0), 0, 616 }, /* AND.W #.W,(d16,An) */ -{ CPUFUNC(op_270_0), 0, 624 }, /* AND.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_278_0), 0, 632 }, /* AND.W #.W,(xxx).W */ -{ CPUFUNC(op_279_0), 0, 633 }, /* AND.W #.W,(xxx).L */ -{ CPUFUNC(op_27c_0), 0, 636 }, /* ANDSR.W #.W */ -{ CPUFUNC(op_280_0), 0, 640 }, /* AND.L #.L,Dn */ -{ CPUFUNC(op_290_0), 0, 656 }, /* AND.L #.L,(An) */ -{ CPUFUNC(op_298_0), 0, 664 }, /* AND.L #.L,(An)+ */ -{ CPUFUNC(op_2a0_0), 0, 672 }, /* AND.L #.L,-(An) */ -{ CPUFUNC(op_2a8_0), 0, 680 }, /* AND.L #.L,(d16,An) */ -{ CPUFUNC(op_2b0_0), 0, 688 }, /* AND.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_2b8_0), 0, 696 }, /* AND.L #.L,(xxx).W */ -{ CPUFUNC(op_2b9_0), 0, 697 }, /* AND.L #.L,(xxx).L */ -{ CPUFUNC(op_2d0_0), 0, 720 }, /* CHK2.W #.W,(An) */ -{ CPUFUNC(op_2e8_0), 0, 744 }, /* CHK2.W #.W,(d16,An) */ -{ CPUFUNC(op_2f0_0), 0, 752 }, /* CHK2.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_2f8_0), 0, 760 }, /* CHK2.W #.W,(xxx).W */ -{ CPUFUNC(op_2f9_0), 0, 761 }, /* CHK2.W #.W,(xxx).L */ -{ CPUFUNC(op_2fa_0), 0, 762 }, /* CHK2.W #.W,(d16,PC) */ -{ CPUFUNC(op_2fb_0), 0, 763 }, /* CHK2.W #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_400_0), 0, 1024 }, /* SUB.B #.B,Dn */ -{ CPUFUNC(op_410_0), 0, 1040 }, /* SUB.B #.B,(An) */ -{ CPUFUNC(op_418_0), 0, 1048 }, /* SUB.B #.B,(An)+ */ -{ CPUFUNC(op_420_0), 0, 1056 }, /* SUB.B #.B,-(An) */ -{ CPUFUNC(op_428_0), 0, 1064 }, /* SUB.B #.B,(d16,An) */ -{ CPUFUNC(op_430_0), 0, 1072 }, /* SUB.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_438_0), 0, 1080 }, /* SUB.B #.B,(xxx).W */ -{ CPUFUNC(op_439_0), 0, 1081 }, /* SUB.B #.B,(xxx).L */ -{ CPUFUNC(op_440_0), 0, 1088 }, /* SUB.W #.W,Dn */ -{ CPUFUNC(op_450_0), 0, 1104 }, /* SUB.W #.W,(An) */ -{ CPUFUNC(op_458_0), 0, 1112 }, /* SUB.W #.W,(An)+ */ -{ CPUFUNC(op_460_0), 0, 1120 }, /* SUB.W #.W,-(An) */ -{ CPUFUNC(op_468_0), 0, 1128 }, /* SUB.W #.W,(d16,An) */ -{ CPUFUNC(op_470_0), 0, 1136 }, /* SUB.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_478_0), 0, 1144 }, /* SUB.W #.W,(xxx).W */ -{ CPUFUNC(op_479_0), 0, 1145 }, /* SUB.W #.W,(xxx).L */ -{ CPUFUNC(op_480_0), 0, 1152 }, /* SUB.L #.L,Dn */ -{ CPUFUNC(op_490_0), 0, 1168 }, /* SUB.L #.L,(An) */ -{ CPUFUNC(op_498_0), 0, 1176 }, /* SUB.L #.L,(An)+ */ -{ CPUFUNC(op_4a0_0), 0, 1184 }, /* SUB.L #.L,-(An) */ -{ CPUFUNC(op_4a8_0), 0, 1192 }, /* SUB.L #.L,(d16,An) */ -{ CPUFUNC(op_4b0_0), 0, 1200 }, /* SUB.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_4b8_0), 0, 1208 }, /* SUB.L #.L,(xxx).W */ -{ CPUFUNC(op_4b9_0), 0, 1209 }, /* SUB.L #.L,(xxx).L */ -{ CPUFUNC(op_4d0_0), 0, 1232 }, /* CHK2.L #.W,(An) */ -{ CPUFUNC(op_4e8_0), 0, 1256 }, /* CHK2.L #.W,(d16,An) */ -{ CPUFUNC(op_4f0_0), 0, 1264 }, /* CHK2.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_4f8_0), 0, 1272 }, /* CHK2.L #.W,(xxx).W */ -{ CPUFUNC(op_4f9_0), 0, 1273 }, /* CHK2.L #.W,(xxx).L */ -{ CPUFUNC(op_4fa_0), 0, 1274 }, /* CHK2.L #.W,(d16,PC) */ -{ CPUFUNC(op_4fb_0), 0, 1275 }, /* CHK2.L #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_600_0), 0, 1536 }, /* ADD.B #.B,Dn */ -{ CPUFUNC(op_610_0), 0, 1552 }, /* ADD.B #.B,(An) */ -{ CPUFUNC(op_618_0), 0, 1560 }, /* ADD.B #.B,(An)+ */ -{ CPUFUNC(op_620_0), 0, 1568 }, /* ADD.B #.B,-(An) */ -{ CPUFUNC(op_628_0), 0, 1576 }, /* ADD.B #.B,(d16,An) */ -{ CPUFUNC(op_630_0), 0, 1584 }, /* ADD.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_638_0), 0, 1592 }, /* ADD.B #.B,(xxx).W */ -{ CPUFUNC(op_639_0), 0, 1593 }, /* ADD.B #.B,(xxx).L */ -{ CPUFUNC(op_640_0), 0, 1600 }, /* ADD.W #.W,Dn */ -{ CPUFUNC(op_650_0), 0, 1616 }, /* ADD.W #.W,(An) */ -{ CPUFUNC(op_658_0), 0, 1624 }, /* ADD.W #.W,(An)+ */ -{ CPUFUNC(op_660_0), 0, 1632 }, /* ADD.W #.W,-(An) */ -{ CPUFUNC(op_668_0), 0, 1640 }, /* ADD.W #.W,(d16,An) */ -{ CPUFUNC(op_670_0), 0, 1648 }, /* ADD.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_678_0), 0, 1656 }, /* ADD.W #.W,(xxx).W */ -{ CPUFUNC(op_679_0), 0, 1657 }, /* ADD.W #.W,(xxx).L */ -{ CPUFUNC(op_680_0), 0, 1664 }, /* ADD.L #.L,Dn */ -{ CPUFUNC(op_690_0), 0, 1680 }, /* ADD.L #.L,(An) */ -{ CPUFUNC(op_698_0), 0, 1688 }, /* ADD.L #.L,(An)+ */ -{ CPUFUNC(op_6a0_0), 0, 1696 }, /* ADD.L #.L,-(An) */ -{ CPUFUNC(op_6a8_0), 0, 1704 }, /* ADD.L #.L,(d16,An) */ -{ CPUFUNC(op_6b0_0), 0, 1712 }, /* ADD.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_6b8_0), 0, 1720 }, /* ADD.L #.L,(xxx).W */ -{ CPUFUNC(op_6b9_0), 0, 1721 }, /* ADD.L #.L,(xxx).L */ -{ CPUFUNC(op_6c0_0), 0, 1728 }, /* RTM.L Dn */ -{ CPUFUNC(op_6c8_0), 0, 1736 }, /* RTM.L An */ -{ CPUFUNC_FF(op_6d0_0), 0, 1744 }, /* CALLM.L (An) */ -{ CPUFUNC_FF(op_6e8_0), 0, 1768 }, /* CALLM.L (d16,An) */ -{ CPUFUNC_FF(op_6f0_0), 0, 1776 }, /* CALLM.L (d8,An,Xn) */ -{ CPUFUNC_FF(op_6f8_0), 0, 1784 }, /* CALLM.L (xxx).W */ -{ CPUFUNC_FF(op_6f9_0), 0, 1785 }, /* CALLM.L (xxx).L */ -{ CPUFUNC_FF(op_6fa_0), 0, 1786 }, /* CALLM.L (d16,PC) */ -{ CPUFUNC_FF(op_6fb_0), 0, 1787 }, /* CALLM.L (d8,PC,Xn) */ -{ CPUFUNC(op_800_0), 0, 2048 }, /* BTST.L #.W,Dn */ -{ CPUFUNC(op_810_0), 0, 2064 }, /* BTST.B #.W,(An) */ -{ CPUFUNC(op_818_0), 0, 2072 }, /* BTST.B #.W,(An)+ */ -{ CPUFUNC(op_820_0), 0, 2080 }, /* BTST.B #.W,-(An) */ -{ CPUFUNC(op_828_0), 0, 2088 }, /* BTST.B #.W,(d16,An) */ -{ CPUFUNC(op_830_0), 0, 2096 }, /* BTST.B #.W,(d8,An,Xn) */ -{ CPUFUNC(op_838_0), 0, 2104 }, /* BTST.B #.W,(xxx).W */ -{ CPUFUNC(op_839_0), 0, 2105 }, /* BTST.B #.W,(xxx).L */ -{ CPUFUNC(op_83a_0), 0, 2106 }, /* BTST.B #.W,(d16,PC) */ -{ CPUFUNC(op_83b_0), 0, 2107 }, /* BTST.B #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_83c_0), 0, 2108 }, /* BTST.B #.W,#.B */ -{ CPUFUNC(op_840_0), 0, 2112 }, /* BCHG.L #.W,Dn */ -{ CPUFUNC(op_850_0), 0, 2128 }, /* BCHG.B #.W,(An) */ -{ CPUFUNC(op_858_0), 0, 2136 }, /* BCHG.B #.W,(An)+ */ -{ CPUFUNC(op_860_0), 0, 2144 }, /* BCHG.B #.W,-(An) */ -{ CPUFUNC(op_868_0), 0, 2152 }, /* BCHG.B #.W,(d16,An) */ -{ CPUFUNC(op_870_0), 0, 2160 }, /* BCHG.B #.W,(d8,An,Xn) */ -{ CPUFUNC(op_878_0), 0, 2168 }, /* BCHG.B #.W,(xxx).W */ -{ CPUFUNC(op_879_0), 0, 2169 }, /* BCHG.B #.W,(xxx).L */ -{ CPUFUNC(op_87a_0), 0, 2170 }, /* BCHG.B #.W,(d16,PC) */ -{ CPUFUNC(op_87b_0), 0, 2171 }, /* BCHG.B #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_880_0), 0, 2176 }, /* BCLR.L #.W,Dn */ -{ CPUFUNC(op_890_0), 0, 2192 }, /* BCLR.B #.W,(An) */ -{ CPUFUNC(op_898_0), 0, 2200 }, /* BCLR.B #.W,(An)+ */ -{ CPUFUNC(op_8a0_0), 0, 2208 }, /* BCLR.B #.W,-(An) */ -{ CPUFUNC(op_8a8_0), 0, 2216 }, /* BCLR.B #.W,(d16,An) */ -{ CPUFUNC(op_8b0_0), 0, 2224 }, /* BCLR.B #.W,(d8,An,Xn) */ -{ CPUFUNC(op_8b8_0), 0, 2232 }, /* BCLR.B #.W,(xxx).W */ -{ CPUFUNC(op_8b9_0), 0, 2233 }, /* BCLR.B #.W,(xxx).L */ -{ CPUFUNC(op_8ba_0), 0, 2234 }, /* BCLR.B #.W,(d16,PC) */ -{ CPUFUNC(op_8bb_0), 0, 2235 }, /* BCLR.B #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_8c0_0), 0, 2240 }, /* BSET.L #.W,Dn */ -{ CPUFUNC(op_8d0_0), 0, 2256 }, /* BSET.B #.W,(An) */ -{ CPUFUNC(op_8d8_0), 0, 2264 }, /* BSET.B #.W,(An)+ */ -{ CPUFUNC(op_8e0_0), 0, 2272 }, /* BSET.B #.W,-(An) */ -{ CPUFUNC(op_8e8_0), 0, 2280 }, /* BSET.B #.W,(d16,An) */ -{ CPUFUNC(op_8f0_0), 0, 2288 }, /* BSET.B #.W,(d8,An,Xn) */ -{ CPUFUNC(op_8f8_0), 0, 2296 }, /* BSET.B #.W,(xxx).W */ -{ CPUFUNC(op_8f9_0), 0, 2297 }, /* BSET.B #.W,(xxx).L */ -{ CPUFUNC(op_8fa_0), 0, 2298 }, /* BSET.B #.W,(d16,PC) */ -{ CPUFUNC(op_8fb_0), 0, 2299 }, /* BSET.B #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_a00_0), 0, 2560 }, /* EOR.B #.B,Dn */ -{ CPUFUNC(op_a10_0), 0, 2576 }, /* EOR.B #.B,(An) */ -{ CPUFUNC(op_a18_0), 0, 2584 }, /* EOR.B #.B,(An)+ */ -{ CPUFUNC(op_a20_0), 0, 2592 }, /* EOR.B #.B,-(An) */ -{ CPUFUNC(op_a28_0), 0, 2600 }, /* EOR.B #.B,(d16,An) */ -{ CPUFUNC(op_a30_0), 0, 2608 }, /* EOR.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_a38_0), 0, 2616 }, /* EOR.B #.B,(xxx).W */ -{ CPUFUNC(op_a39_0), 0, 2617 }, /* EOR.B #.B,(xxx).L */ -{ CPUFUNC(op_a3c_0), 0, 2620 }, /* EORSR.B #.W */ -{ CPUFUNC(op_a40_0), 0, 2624 }, /* EOR.W #.W,Dn */ -{ CPUFUNC(op_a50_0), 0, 2640 }, /* EOR.W #.W,(An) */ -{ CPUFUNC(op_a58_0), 0, 2648 }, /* EOR.W #.W,(An)+ */ -{ CPUFUNC(op_a60_0), 0, 2656 }, /* EOR.W #.W,-(An) */ -{ CPUFUNC(op_a68_0), 0, 2664 }, /* EOR.W #.W,(d16,An) */ -{ CPUFUNC(op_a70_0), 0, 2672 }, /* EOR.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_a78_0), 0, 2680 }, /* EOR.W #.W,(xxx).W */ -{ CPUFUNC(op_a79_0), 0, 2681 }, /* EOR.W #.W,(xxx).L */ -{ CPUFUNC(op_a7c_0), 0, 2684 }, /* EORSR.W #.W */ -{ CPUFUNC(op_a80_0), 0, 2688 }, /* EOR.L #.L,Dn */ -{ CPUFUNC(op_a90_0), 0, 2704 }, /* EOR.L #.L,(An) */ -{ CPUFUNC(op_a98_0), 0, 2712 }, /* EOR.L #.L,(An)+ */ -{ CPUFUNC(op_aa0_0), 0, 2720 }, /* EOR.L #.L,-(An) */ -{ CPUFUNC(op_aa8_0), 0, 2728 }, /* EOR.L #.L,(d16,An) */ -{ CPUFUNC(op_ab0_0), 0, 2736 }, /* EOR.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_ab8_0), 0, 2744 }, /* EOR.L #.L,(xxx).W */ -{ CPUFUNC(op_ab9_0), 0, 2745 }, /* EOR.L #.L,(xxx).L */ -{ CPUFUNC(op_ad0_0), 0, 2768 }, /* CAS.B #.W,(An) */ -{ CPUFUNC(op_ad8_0), 0, 2776 }, /* CAS.B #.W,(An)+ */ -{ CPUFUNC(op_ae0_0), 0, 2784 }, /* CAS.B #.W,-(An) */ -{ CPUFUNC(op_ae8_0), 0, 2792 }, /* CAS.B #.W,(d16,An) */ -{ CPUFUNC(op_af0_0), 0, 2800 }, /* CAS.B #.W,(d8,An,Xn) */ -{ CPUFUNC(op_af8_0), 0, 2808 }, /* CAS.B #.W,(xxx).W */ -{ CPUFUNC(op_af9_0), 0, 2809 }, /* CAS.B #.W,(xxx).L */ -{ CPUFUNC(op_c00_0), 0, 3072 }, /* CMP.B #.B,Dn */ -{ CPUFUNC(op_c10_0), 0, 3088 }, /* CMP.B #.B,(An) */ -{ CPUFUNC(op_c18_0), 0, 3096 }, /* CMP.B #.B,(An)+ */ -{ CPUFUNC(op_c20_0), 0, 3104 }, /* CMP.B #.B,-(An) */ -{ CPUFUNC(op_c28_0), 0, 3112 }, /* CMP.B #.B,(d16,An) */ -{ CPUFUNC(op_c30_0), 0, 3120 }, /* CMP.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_c38_0), 0, 3128 }, /* CMP.B #.B,(xxx).W */ -{ CPUFUNC(op_c39_0), 0, 3129 }, /* CMP.B #.B,(xxx).L */ -{ CPUFUNC(op_c3a_0), 0, 3130 }, /* CMP.B #.B,(d16,PC) */ -{ CPUFUNC(op_c3b_0), 0, 3131 }, /* CMP.B #.B,(d8,PC,Xn) */ -{ CPUFUNC(op_c40_0), 0, 3136 }, /* CMP.W #.W,Dn */ -{ CPUFUNC(op_c50_0), 0, 3152 }, /* CMP.W #.W,(An) */ -{ CPUFUNC(op_c58_0), 0, 3160 }, /* CMP.W #.W,(An)+ */ -{ CPUFUNC(op_c60_0), 0, 3168 }, /* CMP.W #.W,-(An) */ -{ CPUFUNC(op_c68_0), 0, 3176 }, /* CMP.W #.W,(d16,An) */ -{ CPUFUNC(op_c70_0), 0, 3184 }, /* CMP.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_c78_0), 0, 3192 }, /* CMP.W #.W,(xxx).W */ -{ CPUFUNC(op_c79_0), 0, 3193 }, /* CMP.W #.W,(xxx).L */ -{ CPUFUNC(op_c7a_0), 0, 3194 }, /* CMP.W #.W,(d16,PC) */ -{ CPUFUNC(op_c7b_0), 0, 3195 }, /* CMP.W #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_c80_0), 0, 3200 }, /* CMP.L #.L,Dn */ -{ CPUFUNC(op_c90_0), 0, 3216 }, /* CMP.L #.L,(An) */ -{ CPUFUNC(op_c98_0), 0, 3224 }, /* CMP.L #.L,(An)+ */ -{ CPUFUNC(op_ca0_0), 0, 3232 }, /* CMP.L #.L,-(An) */ -{ CPUFUNC(op_ca8_0), 0, 3240 }, /* CMP.L #.L,(d16,An) */ -{ CPUFUNC(op_cb0_0), 0, 3248 }, /* CMP.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_cb8_0), 0, 3256 }, /* CMP.L #.L,(xxx).W */ -{ CPUFUNC(op_cb9_0), 0, 3257 }, /* CMP.L #.L,(xxx).L */ -{ CPUFUNC(op_cba_0), 0, 3258 }, /* CMP.L #.L,(d16,PC) */ -{ CPUFUNC(op_cbb_0), 0, 3259 }, /* CMP.L #.L,(d8,PC,Xn) */ -{ CPUFUNC(op_cd0_0), 0, 3280 }, /* CAS.W #.W,(An) */ -{ CPUFUNC(op_cd8_0), 0, 3288 }, /* CAS.W #.W,(An)+ */ -{ CPUFUNC(op_ce0_0), 0, 3296 }, /* CAS.W #.W,-(An) */ -{ CPUFUNC(op_ce8_0), 0, 3304 }, /* CAS.W #.W,(d16,An) */ -{ CPUFUNC(op_cf0_0), 0, 3312 }, /* CAS.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_cf8_0), 0, 3320 }, /* CAS.W #.W,(xxx).W */ -{ CPUFUNC(op_cf9_0), 0, 3321 }, /* CAS.W #.W,(xxx).L */ -{ CPUFUNC(op_cfc_0), 0, 3324 }, /* CAS2.W #.L */ -{ CPUFUNC_FF(op_e10_0), 0, 3600 }, /* MOVES.B #.W,(An) */ -{ CPUFUNC_FF(op_e18_0), 0, 3608 }, /* MOVES.B #.W,(An)+ */ -{ CPUFUNC_FF(op_e20_0), 0, 3616 }, /* MOVES.B #.W,-(An) */ -{ CPUFUNC_FF(op_e28_0), 0, 3624 }, /* MOVES.B #.W,(d16,An) */ -{ CPUFUNC_FF(op_e30_0), 0, 3632 }, /* MOVES.B #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_e38_0), 0, 3640 }, /* MOVES.B #.W,(xxx).W */ -{ CPUFUNC_FF(op_e39_0), 0, 3641 }, /* MOVES.B #.W,(xxx).L */ -{ CPUFUNC_FF(op_e50_0), 0, 3664 }, /* MOVES.W #.W,(An) */ -{ CPUFUNC_FF(op_e58_0), 0, 3672 }, /* MOVES.W #.W,(An)+ */ -{ CPUFUNC_FF(op_e60_0), 0, 3680 }, /* MOVES.W #.W,-(An) */ -{ CPUFUNC_FF(op_e68_0), 0, 3688 }, /* MOVES.W #.W,(d16,An) */ -{ CPUFUNC_FF(op_e70_0), 0, 3696 }, /* MOVES.W #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_e78_0), 0, 3704 }, /* MOVES.W #.W,(xxx).W */ -{ CPUFUNC_FF(op_e79_0), 0, 3705 }, /* MOVES.W #.W,(xxx).L */ -{ CPUFUNC_FF(op_e90_0), 0, 3728 }, /* MOVES.L #.W,(An) */ -{ CPUFUNC_FF(op_e98_0), 0, 3736 }, /* MOVES.L #.W,(An)+ */ -{ CPUFUNC_FF(op_ea0_0), 0, 3744 }, /* MOVES.L #.W,-(An) */ -{ CPUFUNC_FF(op_ea8_0), 0, 3752 }, /* MOVES.L #.W,(d16,An) */ -{ CPUFUNC_FF(op_eb0_0), 0, 3760 }, /* MOVES.L #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_eb8_0), 0, 3768 }, /* MOVES.L #.W,(xxx).W */ -{ CPUFUNC_FF(op_eb9_0), 0, 3769 }, /* MOVES.L #.W,(xxx).L */ -{ CPUFUNC(op_ed0_0), 0, 3792 }, /* CAS.L #.W,(An) */ -{ CPUFUNC(op_ed8_0), 0, 3800 }, /* CAS.L #.W,(An)+ */ -{ CPUFUNC(op_ee0_0), 0, 3808 }, /* CAS.L #.W,-(An) */ -{ CPUFUNC(op_ee8_0), 0, 3816 }, /* CAS.L #.W,(d16,An) */ -{ CPUFUNC(op_ef0_0), 0, 3824 }, /* CAS.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_ef8_0), 0, 3832 }, /* CAS.L #.W,(xxx).W */ -{ CPUFUNC(op_ef9_0), 0, 3833 }, /* CAS.L #.W,(xxx).L */ -{ CPUFUNC(op_efc_0), 0, 3836 }, /* CAS2.L #.L */ -{ CPUFUNC(op_1000_0), 0, 4096 }, /* MOVE.B Dn,Dn */ -{ CPUFUNC(op_1010_0), 0, 4112 }, /* MOVE.B (An),Dn */ -{ CPUFUNC(op_1018_0), 0, 4120 }, /* MOVE.B (An)+,Dn */ -{ CPUFUNC(op_1020_0), 0, 4128 }, /* MOVE.B -(An),Dn */ -{ CPUFUNC(op_1028_0), 0, 4136 }, /* MOVE.B (d16,An),Dn */ -{ CPUFUNC(op_1030_0), 0, 4144 }, /* MOVE.B (d8,An,Xn),Dn */ -{ CPUFUNC(op_1038_0), 0, 4152 }, /* MOVE.B (xxx).W,Dn */ -{ CPUFUNC(op_1039_0), 0, 4153 }, /* MOVE.B (xxx).L,Dn */ -{ CPUFUNC(op_103a_0), 0, 4154 }, /* MOVE.B (d16,PC),Dn */ -{ CPUFUNC(op_103b_0), 0, 4155 }, /* MOVE.B (d8,PC,Xn),Dn */ -{ CPUFUNC(op_103c_0), 0, 4156 }, /* MOVE.B #.B,Dn */ -{ CPUFUNC(op_1080_0), 0, 4224 }, /* MOVE.B Dn,(An) */ -{ CPUFUNC(op_1090_0), 0, 4240 }, /* MOVE.B (An),(An) */ -{ CPUFUNC(op_1098_0), 0, 4248 }, /* MOVE.B (An)+,(An) */ -{ CPUFUNC(op_10a0_0), 0, 4256 }, /* MOVE.B -(An),(An) */ -{ CPUFUNC(op_10a8_0), 0, 4264 }, /* MOVE.B (d16,An),(An) */ -{ CPUFUNC(op_10b0_0), 0, 4272 }, /* MOVE.B (d8,An,Xn),(An) */ -{ CPUFUNC(op_10b8_0), 0, 4280 }, /* MOVE.B (xxx).W,(An) */ -{ CPUFUNC(op_10b9_0), 0, 4281 }, /* MOVE.B (xxx).L,(An) */ -{ CPUFUNC(op_10ba_0), 0, 4282 }, /* MOVE.B (d16,PC),(An) */ -{ CPUFUNC(op_10bb_0), 0, 4283 }, /* MOVE.B (d8,PC,Xn),(An) */ -{ CPUFUNC(op_10bc_0), 0, 4284 }, /* MOVE.B #.B,(An) */ -{ CPUFUNC(op_10c0_0), 0, 4288 }, /* MOVE.B Dn,(An)+ */ -{ CPUFUNC(op_10d0_0), 0, 4304 }, /* MOVE.B (An),(An)+ */ -{ CPUFUNC(op_10d8_0), 0, 4312 }, /* MOVE.B (An)+,(An)+ */ -{ CPUFUNC(op_10e0_0), 0, 4320 }, /* MOVE.B -(An),(An)+ */ -{ CPUFUNC(op_10e8_0), 0, 4328 }, /* MOVE.B (d16,An),(An)+ */ -{ CPUFUNC(op_10f0_0), 0, 4336 }, /* MOVE.B (d8,An,Xn),(An)+ */ -{ CPUFUNC(op_10f8_0), 0, 4344 }, /* MOVE.B (xxx).W,(An)+ */ -{ CPUFUNC(op_10f9_0), 0, 4345 }, /* MOVE.B (xxx).L,(An)+ */ -{ CPUFUNC(op_10fa_0), 0, 4346 }, /* MOVE.B (d16,PC),(An)+ */ -{ CPUFUNC(op_10fb_0), 0, 4347 }, /* MOVE.B (d8,PC,Xn),(An)+ */ -{ CPUFUNC(op_10fc_0), 0, 4348 }, /* MOVE.B #.B,(An)+ */ -{ CPUFUNC(op_1100_0), 0, 4352 }, /* MOVE.B Dn,-(An) */ -{ CPUFUNC(op_1110_0), 0, 4368 }, /* MOVE.B (An),-(An) */ -{ CPUFUNC(op_1118_0), 0, 4376 }, /* MOVE.B (An)+,-(An) */ -{ CPUFUNC(op_1120_0), 0, 4384 }, /* MOVE.B -(An),-(An) */ -{ CPUFUNC(op_1128_0), 0, 4392 }, /* MOVE.B (d16,An),-(An) */ -{ CPUFUNC(op_1130_0), 0, 4400 }, /* MOVE.B (d8,An,Xn),-(An) */ -{ CPUFUNC(op_1138_0), 0, 4408 }, /* MOVE.B (xxx).W,-(An) */ -{ CPUFUNC(op_1139_0), 0, 4409 }, /* MOVE.B (xxx).L,-(An) */ -{ CPUFUNC(op_113a_0), 0, 4410 }, /* MOVE.B (d16,PC),-(An) */ -{ CPUFUNC(op_113b_0), 0, 4411 }, /* MOVE.B (d8,PC,Xn),-(An) */ -{ CPUFUNC(op_113c_0), 0, 4412 }, /* MOVE.B #.B,-(An) */ -{ CPUFUNC(op_1140_0), 0, 4416 }, /* MOVE.B Dn,(d16,An) */ -{ CPUFUNC(op_1150_0), 0, 4432 }, /* MOVE.B (An),(d16,An) */ -{ CPUFUNC(op_1158_0), 0, 4440 }, /* MOVE.B (An)+,(d16,An) */ -{ CPUFUNC(op_1160_0), 0, 4448 }, /* MOVE.B -(An),(d16,An) */ -{ CPUFUNC(op_1168_0), 0, 4456 }, /* MOVE.B (d16,An),(d16,An) */ -{ CPUFUNC(op_1170_0), 0, 4464 }, /* MOVE.B (d8,An,Xn),(d16,An) */ -{ CPUFUNC(op_1178_0), 0, 4472 }, /* MOVE.B (xxx).W,(d16,An) */ -{ CPUFUNC(op_1179_0), 0, 4473 }, /* MOVE.B (xxx).L,(d16,An) */ -{ CPUFUNC(op_117a_0), 0, 4474 }, /* MOVE.B (d16,PC),(d16,An) */ -{ CPUFUNC(op_117b_0), 0, 4475 }, /* MOVE.B (d8,PC,Xn),(d16,An) */ -{ CPUFUNC(op_117c_0), 0, 4476 }, /* MOVE.B #.B,(d16,An) */ -{ CPUFUNC(op_1180_0), 0, 4480 }, /* MOVE.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_1190_0), 0, 4496 }, /* MOVE.B (An),(d8,An,Xn) */ -{ CPUFUNC(op_1198_0), 0, 4504 }, /* MOVE.B (An)+,(d8,An,Xn) */ -{ CPUFUNC(op_11a0_0), 0, 4512 }, /* MOVE.B -(An),(d8,An,Xn) */ -{ CPUFUNC(op_11a8_0), 0, 4520 }, /* MOVE.B (d16,An),(d8,An,Xn) */ -{ CPUFUNC(op_11b0_0), 0, 4528 }, /* MOVE.B (d8,An,Xn),(d8,An,Xn) */ -{ CPUFUNC(op_11b8_0), 0, 4536 }, /* MOVE.B (xxx).W,(d8,An,Xn) */ -{ CPUFUNC(op_11b9_0), 0, 4537 }, /* MOVE.B (xxx).L,(d8,An,Xn) */ -{ CPUFUNC(op_11ba_0), 0, 4538 }, /* MOVE.B (d16,PC),(d8,An,Xn) */ -{ CPUFUNC(op_11bb_0), 0, 4539 }, /* MOVE.B (d8,PC,Xn),(d8,An,Xn) */ -{ CPUFUNC(op_11bc_0), 0, 4540 }, /* MOVE.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_11c0_0), 0, 4544 }, /* MOVE.B Dn,(xxx).W */ -{ CPUFUNC(op_11d0_0), 0, 4560 }, /* MOVE.B (An),(xxx).W */ -{ CPUFUNC(op_11d8_0), 0, 4568 }, /* MOVE.B (An)+,(xxx).W */ -{ CPUFUNC(op_11e0_0), 0, 4576 }, /* MOVE.B -(An),(xxx).W */ -{ CPUFUNC(op_11e8_0), 0, 4584 }, /* MOVE.B (d16,An),(xxx).W */ -{ CPUFUNC(op_11f0_0), 0, 4592 }, /* MOVE.B (d8,An,Xn),(xxx).W */ -{ CPUFUNC(op_11f8_0), 0, 4600 }, /* MOVE.B (xxx).W,(xxx).W */ -{ CPUFUNC(op_11f9_0), 0, 4601 }, /* MOVE.B (xxx).L,(xxx).W */ -{ CPUFUNC(op_11fa_0), 0, 4602 }, /* MOVE.B (d16,PC),(xxx).W */ -{ CPUFUNC(op_11fb_0), 0, 4603 }, /* MOVE.B (d8,PC,Xn),(xxx).W */ -{ CPUFUNC(op_11fc_0), 0, 4604 }, /* MOVE.B #.B,(xxx).W */ -{ CPUFUNC(op_13c0_0), 0, 5056 }, /* MOVE.B Dn,(xxx).L */ -{ CPUFUNC(op_13d0_0), 0, 5072 }, /* MOVE.B (An),(xxx).L */ -{ CPUFUNC(op_13d8_0), 0, 5080 }, /* MOVE.B (An)+,(xxx).L */ -{ CPUFUNC(op_13e0_0), 0, 5088 }, /* MOVE.B -(An),(xxx).L */ -{ CPUFUNC(op_13e8_0), 0, 5096 }, /* MOVE.B (d16,An),(xxx).L */ -{ CPUFUNC(op_13f0_0), 0, 5104 }, /* MOVE.B (d8,An,Xn),(xxx).L */ -{ CPUFUNC(op_13f8_0), 0, 5112 }, /* MOVE.B (xxx).W,(xxx).L */ -{ CPUFUNC(op_13f9_0), 0, 5113 }, /* MOVE.B (xxx).L,(xxx).L */ -{ CPUFUNC(op_13fa_0), 0, 5114 }, /* MOVE.B (d16,PC),(xxx).L */ -{ CPUFUNC(op_13fb_0), 0, 5115 }, /* MOVE.B (d8,PC,Xn),(xxx).L */ -{ CPUFUNC(op_13fc_0), 0, 5116 }, /* MOVE.B #.B,(xxx).L */ -{ CPUFUNC(op_2000_0), 0, 8192 }, /* MOVE.L Dn,Dn */ -{ CPUFUNC(op_2008_0), 0, 8200 }, /* MOVE.L An,Dn */ -{ CPUFUNC(op_2010_0), 0, 8208 }, /* MOVE.L (An),Dn */ -{ CPUFUNC(op_2018_0), 0, 8216 }, /* MOVE.L (An)+,Dn */ -{ CPUFUNC(op_2020_0), 0, 8224 }, /* MOVE.L -(An),Dn */ -{ CPUFUNC(op_2028_0), 0, 8232 }, /* MOVE.L (d16,An),Dn */ -{ CPUFUNC(op_2030_0), 0, 8240 }, /* MOVE.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_2038_0), 0, 8248 }, /* MOVE.L (xxx).W,Dn */ -{ CPUFUNC(op_2039_0), 0, 8249 }, /* MOVE.L (xxx).L,Dn */ -{ CPUFUNC(op_203a_0), 0, 8250 }, /* MOVE.L (d16,PC),Dn */ -{ CPUFUNC(op_203b_0), 0, 8251 }, /* MOVE.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_203c_0), 0, 8252 }, /* MOVE.L #.L,Dn */ -{ CPUFUNC_FF(op_2040_0), 0, 8256 }, /* MOVEA.L Dn,An */ -{ CPUFUNC_FF(op_2048_0), 0, 8264 }, /* MOVEA.L An,An */ -{ CPUFUNC_FF(op_2050_0), 0, 8272 }, /* MOVEA.L (An),An */ -{ CPUFUNC_FF(op_2058_0), 0, 8280 }, /* MOVEA.L (An)+,An */ -{ CPUFUNC_FF(op_2060_0), 0, 8288 }, /* MOVEA.L -(An),An */ -{ CPUFUNC_FF(op_2068_0), 0, 8296 }, /* MOVEA.L (d16,An),An */ -{ CPUFUNC_FF(op_2070_0), 0, 8304 }, /* MOVEA.L (d8,An,Xn),An */ -{ CPUFUNC_FF(op_2078_0), 0, 8312 }, /* MOVEA.L (xxx).W,An */ -{ CPUFUNC_FF(op_2079_0), 0, 8313 }, /* MOVEA.L (xxx).L,An */ -{ CPUFUNC_FF(op_207a_0), 0, 8314 }, /* MOVEA.L (d16,PC),An */ -{ CPUFUNC_FF(op_207b_0), 0, 8315 }, /* MOVEA.L (d8,PC,Xn),An */ -{ CPUFUNC_FF(op_207c_0), 0, 8316 }, /* MOVEA.L #.L,An */ -{ CPUFUNC(op_2080_0), 0, 8320 }, /* MOVE.L Dn,(An) */ -{ CPUFUNC(op_2088_0), 0, 8328 }, /* MOVE.L An,(An) */ -{ CPUFUNC(op_2090_0), 0, 8336 }, /* MOVE.L (An),(An) */ -{ CPUFUNC(op_2098_0), 0, 8344 }, /* MOVE.L (An)+,(An) */ -{ CPUFUNC(op_20a0_0), 0, 8352 }, /* MOVE.L -(An),(An) */ -{ CPUFUNC(op_20a8_0), 0, 8360 }, /* MOVE.L (d16,An),(An) */ -{ CPUFUNC(op_20b0_0), 0, 8368 }, /* MOVE.L (d8,An,Xn),(An) */ -{ CPUFUNC(op_20b8_0), 0, 8376 }, /* MOVE.L (xxx).W,(An) */ -{ CPUFUNC(op_20b9_0), 0, 8377 }, /* MOVE.L (xxx).L,(An) */ -{ CPUFUNC(op_20ba_0), 0, 8378 }, /* MOVE.L (d16,PC),(An) */ -{ CPUFUNC(op_20bb_0), 0, 8379 }, /* MOVE.L (d8,PC,Xn),(An) */ -{ CPUFUNC(op_20bc_0), 0, 8380 }, /* MOVE.L #.L,(An) */ -{ CPUFUNC(op_20c0_0), 0, 8384 }, /* MOVE.L Dn,(An)+ */ -{ CPUFUNC(op_20c8_0), 0, 8392 }, /* MOVE.L An,(An)+ */ -{ CPUFUNC(op_20d0_0), 0, 8400 }, /* MOVE.L (An),(An)+ */ -{ CPUFUNC(op_20d8_0), 0, 8408 }, /* MOVE.L (An)+,(An)+ */ -{ CPUFUNC(op_20e0_0), 0, 8416 }, /* MOVE.L -(An),(An)+ */ -{ CPUFUNC(op_20e8_0), 0, 8424 }, /* MOVE.L (d16,An),(An)+ */ -{ CPUFUNC(op_20f0_0), 0, 8432 }, /* MOVE.L (d8,An,Xn),(An)+ */ -{ CPUFUNC(op_20f8_0), 0, 8440 }, /* MOVE.L (xxx).W,(An)+ */ -{ CPUFUNC(op_20f9_0), 0, 8441 }, /* MOVE.L (xxx).L,(An)+ */ -{ CPUFUNC(op_20fa_0), 0, 8442 }, /* MOVE.L (d16,PC),(An)+ */ -{ CPUFUNC(op_20fb_0), 0, 8443 }, /* MOVE.L (d8,PC,Xn),(An)+ */ -{ CPUFUNC(op_20fc_0), 0, 8444 }, /* MOVE.L #.L,(An)+ */ -{ CPUFUNC(op_2100_0), 0, 8448 }, /* MOVE.L Dn,-(An) */ -{ CPUFUNC(op_2108_0), 0, 8456 }, /* MOVE.L An,-(An) */ -{ CPUFUNC(op_2110_0), 0, 8464 }, /* MOVE.L (An),-(An) */ -{ CPUFUNC(op_2118_0), 0, 8472 }, /* MOVE.L (An)+,-(An) */ -{ CPUFUNC(op_2120_0), 0, 8480 }, /* MOVE.L -(An),-(An) */ -{ CPUFUNC(op_2128_0), 0, 8488 }, /* MOVE.L (d16,An),-(An) */ -{ CPUFUNC(op_2130_0), 0, 8496 }, /* MOVE.L (d8,An,Xn),-(An) */ -{ CPUFUNC(op_2138_0), 0, 8504 }, /* MOVE.L (xxx).W,-(An) */ -{ CPUFUNC(op_2139_0), 0, 8505 }, /* MOVE.L (xxx).L,-(An) */ -{ CPUFUNC(op_213a_0), 0, 8506 }, /* MOVE.L (d16,PC),-(An) */ -{ CPUFUNC(op_213b_0), 0, 8507 }, /* MOVE.L (d8,PC,Xn),-(An) */ -{ CPUFUNC(op_213c_0), 0, 8508 }, /* MOVE.L #.L,-(An) */ -{ CPUFUNC(op_2140_0), 0, 8512 }, /* MOVE.L Dn,(d16,An) */ -{ CPUFUNC(op_2148_0), 0, 8520 }, /* MOVE.L An,(d16,An) */ -{ CPUFUNC(op_2150_0), 0, 8528 }, /* MOVE.L (An),(d16,An) */ -{ CPUFUNC(op_2158_0), 0, 8536 }, /* MOVE.L (An)+,(d16,An) */ -{ CPUFUNC(op_2160_0), 0, 8544 }, /* MOVE.L -(An),(d16,An) */ -{ CPUFUNC(op_2168_0), 0, 8552 }, /* MOVE.L (d16,An),(d16,An) */ -{ CPUFUNC(op_2170_0), 0, 8560 }, /* MOVE.L (d8,An,Xn),(d16,An) */ -{ CPUFUNC(op_2178_0), 0, 8568 }, /* MOVE.L (xxx).W,(d16,An) */ -{ CPUFUNC(op_2179_0), 0, 8569 }, /* MOVE.L (xxx).L,(d16,An) */ -{ CPUFUNC(op_217a_0), 0, 8570 }, /* MOVE.L (d16,PC),(d16,An) */ -{ CPUFUNC(op_217b_0), 0, 8571 }, /* MOVE.L (d8,PC,Xn),(d16,An) */ -{ CPUFUNC(op_217c_0), 0, 8572 }, /* MOVE.L #.L,(d16,An) */ -{ CPUFUNC(op_2180_0), 0, 8576 }, /* MOVE.L Dn,(d8,An,Xn) */ -{ CPUFUNC(op_2188_0), 0, 8584 }, /* MOVE.L An,(d8,An,Xn) */ -{ CPUFUNC(op_2190_0), 0, 8592 }, /* MOVE.L (An),(d8,An,Xn) */ -{ CPUFUNC(op_2198_0), 0, 8600 }, /* MOVE.L (An)+,(d8,An,Xn) */ -{ CPUFUNC(op_21a0_0), 0, 8608 }, /* MOVE.L -(An),(d8,An,Xn) */ -{ CPUFUNC(op_21a8_0), 0, 8616 }, /* MOVE.L (d16,An),(d8,An,Xn) */ -{ CPUFUNC(op_21b0_0), 0, 8624 }, /* MOVE.L (d8,An,Xn),(d8,An,Xn) */ -{ CPUFUNC(op_21b8_0), 0, 8632 }, /* MOVE.L (xxx).W,(d8,An,Xn) */ -{ CPUFUNC(op_21b9_0), 0, 8633 }, /* MOVE.L (xxx).L,(d8,An,Xn) */ -{ CPUFUNC(op_21ba_0), 0, 8634 }, /* MOVE.L (d16,PC),(d8,An,Xn) */ -{ CPUFUNC(op_21bb_0), 0, 8635 }, /* MOVE.L (d8,PC,Xn),(d8,An,Xn) */ -{ CPUFUNC(op_21bc_0), 0, 8636 }, /* MOVE.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_21c0_0), 0, 8640 }, /* MOVE.L Dn,(xxx).W */ -{ CPUFUNC(op_21c8_0), 0, 8648 }, /* MOVE.L An,(xxx).W */ -{ CPUFUNC(op_21d0_0), 0, 8656 }, /* MOVE.L (An),(xxx).W */ -{ CPUFUNC(op_21d8_0), 0, 8664 }, /* MOVE.L (An)+,(xxx).W */ -{ CPUFUNC(op_21e0_0), 0, 8672 }, /* MOVE.L -(An),(xxx).W */ -{ CPUFUNC(op_21e8_0), 0, 8680 }, /* MOVE.L (d16,An),(xxx).W */ -{ CPUFUNC(op_21f0_0), 0, 8688 }, /* MOVE.L (d8,An,Xn),(xxx).W */ -{ CPUFUNC(op_21f8_0), 0, 8696 }, /* MOVE.L (xxx).W,(xxx).W */ -{ CPUFUNC(op_21f9_0), 0, 8697 }, /* MOVE.L (xxx).L,(xxx).W */ -{ CPUFUNC(op_21fa_0), 0, 8698 }, /* MOVE.L (d16,PC),(xxx).W */ -{ CPUFUNC(op_21fb_0), 0, 8699 }, /* MOVE.L (d8,PC,Xn),(xxx).W */ -{ CPUFUNC(op_21fc_0), 0, 8700 }, /* MOVE.L #.L,(xxx).W */ -{ CPUFUNC(op_23c0_0), 0, 9152 }, /* MOVE.L Dn,(xxx).L */ -{ CPUFUNC(op_23c8_0), 0, 9160 }, /* MOVE.L An,(xxx).L */ -{ CPUFUNC(op_23d0_0), 0, 9168 }, /* MOVE.L (An),(xxx).L */ -{ CPUFUNC(op_23d8_0), 0, 9176 }, /* MOVE.L (An)+,(xxx).L */ -{ CPUFUNC(op_23e0_0), 0, 9184 }, /* MOVE.L -(An),(xxx).L */ -{ CPUFUNC(op_23e8_0), 0, 9192 }, /* MOVE.L (d16,An),(xxx).L */ -{ CPUFUNC(op_23f0_0), 0, 9200 }, /* MOVE.L (d8,An,Xn),(xxx).L */ -{ CPUFUNC(op_23f8_0), 0, 9208 }, /* MOVE.L (xxx).W,(xxx).L */ -{ CPUFUNC(op_23f9_0), 0, 9209 }, /* MOVE.L (xxx).L,(xxx).L */ -{ CPUFUNC(op_23fa_0), 0, 9210 }, /* MOVE.L (d16,PC),(xxx).L */ -{ CPUFUNC(op_23fb_0), 0, 9211 }, /* MOVE.L (d8,PC,Xn),(xxx).L */ -{ CPUFUNC(op_23fc_0), 0, 9212 }, /* MOVE.L #.L,(xxx).L */ -{ CPUFUNC(op_3000_0), 0, 12288 }, /* MOVE.W Dn,Dn */ -{ CPUFUNC(op_3008_0), 0, 12296 }, /* MOVE.W An,Dn */ -{ CPUFUNC(op_3010_0), 0, 12304 }, /* MOVE.W (An),Dn */ -{ CPUFUNC(op_3018_0), 0, 12312 }, /* MOVE.W (An)+,Dn */ -{ CPUFUNC(op_3020_0), 0, 12320 }, /* MOVE.W -(An),Dn */ -{ CPUFUNC(op_3028_0), 0, 12328 }, /* MOVE.W (d16,An),Dn */ -{ CPUFUNC(op_3030_0), 0, 12336 }, /* MOVE.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_3038_0), 0, 12344 }, /* MOVE.W (xxx).W,Dn */ -{ CPUFUNC(op_3039_0), 0, 12345 }, /* MOVE.W (xxx).L,Dn */ -{ CPUFUNC(op_303a_0), 0, 12346 }, /* MOVE.W (d16,PC),Dn */ -{ CPUFUNC(op_303b_0), 0, 12347 }, /* MOVE.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_303c_0), 0, 12348 }, /* MOVE.W #.W,Dn */ -{ CPUFUNC_FF(op_3040_0), 0, 12352 }, /* MOVEA.W Dn,An */ -{ CPUFUNC_FF(op_3048_0), 0, 12360 }, /* MOVEA.W An,An */ -{ CPUFUNC_FF(op_3050_0), 0, 12368 }, /* MOVEA.W (An),An */ -{ CPUFUNC_FF(op_3058_0), 0, 12376 }, /* MOVEA.W (An)+,An */ -{ CPUFUNC_FF(op_3060_0), 0, 12384 }, /* MOVEA.W -(An),An */ -{ CPUFUNC_FF(op_3068_0), 0, 12392 }, /* MOVEA.W (d16,An),An */ -{ CPUFUNC_FF(op_3070_0), 0, 12400 }, /* MOVEA.W (d8,An,Xn),An */ -{ CPUFUNC_FF(op_3078_0), 0, 12408 }, /* MOVEA.W (xxx).W,An */ -{ CPUFUNC_FF(op_3079_0), 0, 12409 }, /* MOVEA.W (xxx).L,An */ -{ CPUFUNC_FF(op_307a_0), 0, 12410 }, /* MOVEA.W (d16,PC),An */ -{ CPUFUNC_FF(op_307b_0), 0, 12411 }, /* MOVEA.W (d8,PC,Xn),An */ -{ CPUFUNC_FF(op_307c_0), 0, 12412 }, /* MOVEA.W #.W,An */ -{ CPUFUNC(op_3080_0), 0, 12416 }, /* MOVE.W Dn,(An) */ -{ CPUFUNC(op_3088_0), 0, 12424 }, /* MOVE.W An,(An) */ -{ CPUFUNC(op_3090_0), 0, 12432 }, /* MOVE.W (An),(An) */ -{ CPUFUNC(op_3098_0), 0, 12440 }, /* MOVE.W (An)+,(An) */ -{ CPUFUNC(op_30a0_0), 0, 12448 }, /* MOVE.W -(An),(An) */ -{ CPUFUNC(op_30a8_0), 0, 12456 }, /* MOVE.W (d16,An),(An) */ -{ CPUFUNC(op_30b0_0), 0, 12464 }, /* MOVE.W (d8,An,Xn),(An) */ -{ CPUFUNC(op_30b8_0), 0, 12472 }, /* MOVE.W (xxx).W,(An) */ -{ CPUFUNC(op_30b9_0), 0, 12473 }, /* MOVE.W (xxx).L,(An) */ -{ CPUFUNC(op_30ba_0), 0, 12474 }, /* MOVE.W (d16,PC),(An) */ -{ CPUFUNC(op_30bb_0), 0, 12475 }, /* MOVE.W (d8,PC,Xn),(An) */ -{ CPUFUNC(op_30bc_0), 0, 12476 }, /* MOVE.W #.W,(An) */ -{ CPUFUNC(op_30c0_0), 0, 12480 }, /* MOVE.W Dn,(An)+ */ -{ CPUFUNC(op_30c8_0), 0, 12488 }, /* MOVE.W An,(An)+ */ -{ CPUFUNC(op_30d0_0), 0, 12496 }, /* MOVE.W (An),(An)+ */ -{ CPUFUNC(op_30d8_0), 0, 12504 }, /* MOVE.W (An)+,(An)+ */ -{ CPUFUNC(op_30e0_0), 0, 12512 }, /* MOVE.W -(An),(An)+ */ -{ CPUFUNC(op_30e8_0), 0, 12520 }, /* MOVE.W (d16,An),(An)+ */ -{ CPUFUNC(op_30f0_0), 0, 12528 }, /* MOVE.W (d8,An,Xn),(An)+ */ -{ CPUFUNC(op_30f8_0), 0, 12536 }, /* MOVE.W (xxx).W,(An)+ */ -{ CPUFUNC(op_30f9_0), 0, 12537 }, /* MOVE.W (xxx).L,(An)+ */ -{ CPUFUNC(op_30fa_0), 0, 12538 }, /* MOVE.W (d16,PC),(An)+ */ -{ CPUFUNC(op_30fb_0), 0, 12539 }, /* MOVE.W (d8,PC,Xn),(An)+ */ -{ CPUFUNC(op_30fc_0), 0, 12540 }, /* MOVE.W #.W,(An)+ */ -{ CPUFUNC(op_3100_0), 0, 12544 }, /* MOVE.W Dn,-(An) */ -{ CPUFUNC(op_3108_0), 0, 12552 }, /* MOVE.W An,-(An) */ -{ CPUFUNC(op_3110_0), 0, 12560 }, /* MOVE.W (An),-(An) */ -{ CPUFUNC(op_3118_0), 0, 12568 }, /* MOVE.W (An)+,-(An) */ -{ CPUFUNC(op_3120_0), 0, 12576 }, /* MOVE.W -(An),-(An) */ -{ CPUFUNC(op_3128_0), 0, 12584 }, /* MOVE.W (d16,An),-(An) */ -{ CPUFUNC(op_3130_0), 0, 12592 }, /* MOVE.W (d8,An,Xn),-(An) */ -{ CPUFUNC(op_3138_0), 0, 12600 }, /* MOVE.W (xxx).W,-(An) */ -{ CPUFUNC(op_3139_0), 0, 12601 }, /* MOVE.W (xxx).L,-(An) */ -{ CPUFUNC(op_313a_0), 0, 12602 }, /* MOVE.W (d16,PC),-(An) */ -{ CPUFUNC(op_313b_0), 0, 12603 }, /* MOVE.W (d8,PC,Xn),-(An) */ -{ CPUFUNC(op_313c_0), 0, 12604 }, /* MOVE.W #.W,-(An) */ -{ CPUFUNC(op_3140_0), 0, 12608 }, /* MOVE.W Dn,(d16,An) */ -{ CPUFUNC(op_3148_0), 0, 12616 }, /* MOVE.W An,(d16,An) */ -{ CPUFUNC(op_3150_0), 0, 12624 }, /* MOVE.W (An),(d16,An) */ -{ CPUFUNC(op_3158_0), 0, 12632 }, /* MOVE.W (An)+,(d16,An) */ -{ CPUFUNC(op_3160_0), 0, 12640 }, /* MOVE.W -(An),(d16,An) */ -{ CPUFUNC(op_3168_0), 0, 12648 }, /* MOVE.W (d16,An),(d16,An) */ -{ CPUFUNC(op_3170_0), 0, 12656 }, /* MOVE.W (d8,An,Xn),(d16,An) */ -{ CPUFUNC(op_3178_0), 0, 12664 }, /* MOVE.W (xxx).W,(d16,An) */ -{ CPUFUNC(op_3179_0), 0, 12665 }, /* MOVE.W (xxx).L,(d16,An) */ -{ CPUFUNC(op_317a_0), 0, 12666 }, /* MOVE.W (d16,PC),(d16,An) */ -{ CPUFUNC(op_317b_0), 0, 12667 }, /* MOVE.W (d8,PC,Xn),(d16,An) */ -{ CPUFUNC(op_317c_0), 0, 12668 }, /* MOVE.W #.W,(d16,An) */ -{ CPUFUNC(op_3180_0), 0, 12672 }, /* MOVE.W Dn,(d8,An,Xn) */ -{ CPUFUNC(op_3188_0), 0, 12680 }, /* MOVE.W An,(d8,An,Xn) */ -{ CPUFUNC(op_3190_0), 0, 12688 }, /* MOVE.W (An),(d8,An,Xn) */ -{ CPUFUNC(op_3198_0), 0, 12696 }, /* MOVE.W (An)+,(d8,An,Xn) */ -{ CPUFUNC(op_31a0_0), 0, 12704 }, /* MOVE.W -(An),(d8,An,Xn) */ -{ CPUFUNC(op_31a8_0), 0, 12712 }, /* MOVE.W (d16,An),(d8,An,Xn) */ -{ CPUFUNC(op_31b0_0), 0, 12720 }, /* MOVE.W (d8,An,Xn),(d8,An,Xn) */ -{ CPUFUNC(op_31b8_0), 0, 12728 }, /* MOVE.W (xxx).W,(d8,An,Xn) */ -{ CPUFUNC(op_31b9_0), 0, 12729 }, /* MOVE.W (xxx).L,(d8,An,Xn) */ -{ CPUFUNC(op_31ba_0), 0, 12730 }, /* MOVE.W (d16,PC),(d8,An,Xn) */ -{ CPUFUNC(op_31bb_0), 0, 12731 }, /* MOVE.W (d8,PC,Xn),(d8,An,Xn) */ -{ CPUFUNC(op_31bc_0), 0, 12732 }, /* MOVE.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_31c0_0), 0, 12736 }, /* MOVE.W Dn,(xxx).W */ -{ CPUFUNC(op_31c8_0), 0, 12744 }, /* MOVE.W An,(xxx).W */ -{ CPUFUNC(op_31d0_0), 0, 12752 }, /* MOVE.W (An),(xxx).W */ -{ CPUFUNC(op_31d8_0), 0, 12760 }, /* MOVE.W (An)+,(xxx).W */ -{ CPUFUNC(op_31e0_0), 0, 12768 }, /* MOVE.W -(An),(xxx).W */ -{ CPUFUNC(op_31e8_0), 0, 12776 }, /* MOVE.W (d16,An),(xxx).W */ -{ CPUFUNC(op_31f0_0), 0, 12784 }, /* MOVE.W (d8,An,Xn),(xxx).W */ -{ CPUFUNC(op_31f8_0), 0, 12792 }, /* MOVE.W (xxx).W,(xxx).W */ -{ CPUFUNC(op_31f9_0), 0, 12793 }, /* MOVE.W (xxx).L,(xxx).W */ -{ CPUFUNC(op_31fa_0), 0, 12794 }, /* MOVE.W (d16,PC),(xxx).W */ -{ CPUFUNC(op_31fb_0), 0, 12795 }, /* MOVE.W (d8,PC,Xn),(xxx).W */ -{ CPUFUNC(op_31fc_0), 0, 12796 }, /* MOVE.W #.W,(xxx).W */ -{ CPUFUNC(op_33c0_0), 0, 13248 }, /* MOVE.W Dn,(xxx).L */ -{ CPUFUNC(op_33c8_0), 0, 13256 }, /* MOVE.W An,(xxx).L */ -{ CPUFUNC(op_33d0_0), 0, 13264 }, /* MOVE.W (An),(xxx).L */ -{ CPUFUNC(op_33d8_0), 0, 13272 }, /* MOVE.W (An)+,(xxx).L */ -{ CPUFUNC(op_33e0_0), 0, 13280 }, /* MOVE.W -(An),(xxx).L */ -{ CPUFUNC(op_33e8_0), 0, 13288 }, /* MOVE.W (d16,An),(xxx).L */ -{ CPUFUNC(op_33f0_0), 0, 13296 }, /* MOVE.W (d8,An,Xn),(xxx).L */ -{ CPUFUNC(op_33f8_0), 0, 13304 }, /* MOVE.W (xxx).W,(xxx).L */ -{ CPUFUNC(op_33f9_0), 0, 13305 }, /* MOVE.W (xxx).L,(xxx).L */ -{ CPUFUNC(op_33fa_0), 0, 13306 }, /* MOVE.W (d16,PC),(xxx).L */ -{ CPUFUNC(op_33fb_0), 0, 13307 }, /* MOVE.W (d8,PC,Xn),(xxx).L */ -{ CPUFUNC(op_33fc_0), 0, 13308 }, /* MOVE.W #.W,(xxx).L */ -{ CPUFUNC(op_4000_0), 0, 16384 }, /* NEGX.B Dn */ -{ CPUFUNC(op_4010_0), 0, 16400 }, /* NEGX.B (An) */ -{ CPUFUNC(op_4018_0), 0, 16408 }, /* NEGX.B (An)+ */ -{ CPUFUNC(op_4020_0), 0, 16416 }, /* NEGX.B -(An) */ -{ CPUFUNC(op_4028_0), 0, 16424 }, /* NEGX.B (d16,An) */ -{ CPUFUNC(op_4030_0), 0, 16432 }, /* NEGX.B (d8,An,Xn) */ -{ CPUFUNC(op_4038_0), 0, 16440 }, /* NEGX.B (xxx).W */ -{ CPUFUNC(op_4039_0), 0, 16441 }, /* NEGX.B (xxx).L */ -{ CPUFUNC(op_4040_0), 0, 16448 }, /* NEGX.W Dn */ -{ CPUFUNC(op_4050_0), 0, 16464 }, /* NEGX.W (An) */ -{ CPUFUNC(op_4058_0), 0, 16472 }, /* NEGX.W (An)+ */ -{ CPUFUNC(op_4060_0), 0, 16480 }, /* NEGX.W -(An) */ -{ CPUFUNC(op_4068_0), 0, 16488 }, /* NEGX.W (d16,An) */ -{ CPUFUNC(op_4070_0), 0, 16496 }, /* NEGX.W (d8,An,Xn) */ -{ CPUFUNC(op_4078_0), 0, 16504 }, /* NEGX.W (xxx).W */ -{ CPUFUNC(op_4079_0), 0, 16505 }, /* NEGX.W (xxx).L */ -{ CPUFUNC(op_4080_0), 0, 16512 }, /* NEGX.L Dn */ -{ CPUFUNC(op_4090_0), 0, 16528 }, /* NEGX.L (An) */ -{ CPUFUNC(op_4098_0), 0, 16536 }, /* NEGX.L (An)+ */ -{ CPUFUNC(op_40a0_0), 0, 16544 }, /* NEGX.L -(An) */ -{ CPUFUNC(op_40a8_0), 0, 16552 }, /* NEGX.L (d16,An) */ -{ CPUFUNC(op_40b0_0), 0, 16560 }, /* NEGX.L (d8,An,Xn) */ -{ CPUFUNC(op_40b8_0), 0, 16568 }, /* NEGX.L (xxx).W */ -{ CPUFUNC(op_40b9_0), 0, 16569 }, /* NEGX.L (xxx).L */ -{ CPUFUNC_FF(op_40c0_0), 0, 16576 }, /* MVSR2.W Dn */ -{ CPUFUNC_FF(op_40d0_0), 0, 16592 }, /* MVSR2.W (An) */ -{ CPUFUNC_FF(op_40d8_0), 0, 16600 }, /* MVSR2.W (An)+ */ -{ CPUFUNC_FF(op_40e0_0), 0, 16608 }, /* MVSR2.W -(An) */ -{ CPUFUNC_FF(op_40e8_0), 0, 16616 }, /* MVSR2.W (d16,An) */ -{ CPUFUNC_FF(op_40f0_0), 0, 16624 }, /* MVSR2.W (d8,An,Xn) */ -{ CPUFUNC_FF(op_40f8_0), 0, 16632 }, /* MVSR2.W (xxx).W */ -{ CPUFUNC_FF(op_40f9_0), 0, 16633 }, /* MVSR2.W (xxx).L */ -{ CPUFUNC(op_4100_0), 0, 16640 }, /* CHK.L Dn,Dn */ -{ CPUFUNC(op_4110_0), 0, 16656 }, /* CHK.L (An),Dn */ -{ CPUFUNC(op_4118_0), 0, 16664 }, /* CHK.L (An)+,Dn */ -{ CPUFUNC(op_4120_0), 0, 16672 }, /* CHK.L -(An),Dn */ -{ CPUFUNC(op_4128_0), 0, 16680 }, /* CHK.L (d16,An),Dn */ -{ CPUFUNC(op_4130_0), 0, 16688 }, /* CHK.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_4138_0), 0, 16696 }, /* CHK.L (xxx).W,Dn */ -{ CPUFUNC(op_4139_0), 0, 16697 }, /* CHK.L (xxx).L,Dn */ -{ CPUFUNC(op_413a_0), 0, 16698 }, /* CHK.L (d16,PC),Dn */ -{ CPUFUNC(op_413b_0), 0, 16699 }, /* CHK.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_413c_0), 0, 16700 }, /* CHK.L #.L,Dn */ -{ CPUFUNC(op_4180_0), 0, 16768 }, /* CHK.W Dn,Dn */ -{ CPUFUNC(op_4190_0), 0, 16784 }, /* CHK.W (An),Dn */ -{ CPUFUNC(op_4198_0), 0, 16792 }, /* CHK.W (An)+,Dn */ -{ CPUFUNC(op_41a0_0), 0, 16800 }, /* CHK.W -(An),Dn */ -{ CPUFUNC(op_41a8_0), 0, 16808 }, /* CHK.W (d16,An),Dn */ -{ CPUFUNC(op_41b0_0), 0, 16816 }, /* CHK.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_41b8_0), 0, 16824 }, /* CHK.W (xxx).W,Dn */ -{ CPUFUNC(op_41b9_0), 0, 16825 }, /* CHK.W (xxx).L,Dn */ -{ CPUFUNC(op_41ba_0), 0, 16826 }, /* CHK.W (d16,PC),Dn */ -{ CPUFUNC(op_41bb_0), 0, 16827 }, /* CHK.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_41bc_0), 0, 16828 }, /* CHK.W #.W,Dn */ -{ CPUFUNC_FF(op_41d0_0), 0, 16848 }, /* LEA.L (An),An */ -{ CPUFUNC_FF(op_41e8_0), 0, 16872 }, /* LEA.L (d16,An),An */ -{ CPUFUNC_FF(op_41f0_0), 0, 16880 }, /* LEA.L (d8,An,Xn),An */ -{ CPUFUNC_FF(op_41f8_0), 0, 16888 }, /* LEA.L (xxx).W,An */ -{ CPUFUNC_FF(op_41f9_0), 0, 16889 }, /* LEA.L (xxx).L,An */ -{ CPUFUNC_FF(op_41fa_0), 0, 16890 }, /* LEA.L (d16,PC),An */ -{ CPUFUNC_FF(op_41fb_0), 0, 16891 }, /* LEA.L (d8,PC,Xn),An */ -{ CPUFUNC(op_4200_0), 0, 16896 }, /* CLR.B Dn */ -{ CPUFUNC(op_4210_0), 0, 16912 }, /* CLR.B (An) */ -{ CPUFUNC(op_4218_0), 0, 16920 }, /* CLR.B (An)+ */ -{ CPUFUNC(op_4220_0), 0, 16928 }, /* CLR.B -(An) */ -{ CPUFUNC(op_4228_0), 0, 16936 }, /* CLR.B (d16,An) */ -{ CPUFUNC(op_4230_0), 0, 16944 }, /* CLR.B (d8,An,Xn) */ -{ CPUFUNC(op_4238_0), 0, 16952 }, /* CLR.B (xxx).W */ -{ CPUFUNC(op_4239_0), 0, 16953 }, /* CLR.B (xxx).L */ -{ CPUFUNC(op_4240_0), 0, 16960 }, /* CLR.W Dn */ -{ CPUFUNC(op_4250_0), 0, 16976 }, /* CLR.W (An) */ -{ CPUFUNC(op_4258_0), 0, 16984 }, /* CLR.W (An)+ */ -{ CPUFUNC(op_4260_0), 0, 16992 }, /* CLR.W -(An) */ -{ CPUFUNC(op_4268_0), 0, 17000 }, /* CLR.W (d16,An) */ -{ CPUFUNC(op_4270_0), 0, 17008 }, /* CLR.W (d8,An,Xn) */ -{ CPUFUNC(op_4278_0), 0, 17016 }, /* CLR.W (xxx).W */ -{ CPUFUNC(op_4279_0), 0, 17017 }, /* CLR.W (xxx).L */ -{ CPUFUNC(op_4280_0), 0, 17024 }, /* CLR.L Dn */ -{ CPUFUNC(op_4290_0), 0, 17040 }, /* CLR.L (An) */ -{ CPUFUNC(op_4298_0), 0, 17048 }, /* CLR.L (An)+ */ -{ CPUFUNC(op_42a0_0), 0, 17056 }, /* CLR.L -(An) */ -{ CPUFUNC(op_42a8_0), 0, 17064 }, /* CLR.L (d16,An) */ -{ CPUFUNC(op_42b0_0), 0, 17072 }, /* CLR.L (d8,An,Xn) */ -{ CPUFUNC(op_42b8_0), 0, 17080 }, /* CLR.L (xxx).W */ -{ CPUFUNC(op_42b9_0), 0, 17081 }, /* CLR.L (xxx).L */ -{ CPUFUNC_FF(op_42c0_0), 0, 17088 }, /* MVSR2.B Dn */ -{ CPUFUNC_FF(op_42d0_0), 0, 17104 }, /* MVSR2.B (An) */ -{ CPUFUNC_FF(op_42d8_0), 0, 17112 }, /* MVSR2.B (An)+ */ -{ CPUFUNC_FF(op_42e0_0), 0, 17120 }, /* MVSR2.B -(An) */ -{ CPUFUNC_FF(op_42e8_0), 0, 17128 }, /* MVSR2.B (d16,An) */ -{ CPUFUNC_FF(op_42f0_0), 0, 17136 }, /* MVSR2.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_42f8_0), 0, 17144 }, /* MVSR2.B (xxx).W */ -{ CPUFUNC_FF(op_42f9_0), 0, 17145 }, /* MVSR2.B (xxx).L */ -{ CPUFUNC(op_4400_0), 0, 17408 }, /* NEG.B Dn */ -{ CPUFUNC(op_4410_0), 0, 17424 }, /* NEG.B (An) */ -{ CPUFUNC(op_4418_0), 0, 17432 }, /* NEG.B (An)+ */ -{ CPUFUNC(op_4420_0), 0, 17440 }, /* NEG.B -(An) */ -{ CPUFUNC(op_4428_0), 0, 17448 }, /* NEG.B (d16,An) */ -{ CPUFUNC(op_4430_0), 0, 17456 }, /* NEG.B (d8,An,Xn) */ -{ CPUFUNC(op_4438_0), 0, 17464 }, /* NEG.B (xxx).W */ -{ CPUFUNC(op_4439_0), 0, 17465 }, /* NEG.B (xxx).L */ -{ CPUFUNC(op_4440_0), 0, 17472 }, /* NEG.W Dn */ -{ CPUFUNC(op_4450_0), 0, 17488 }, /* NEG.W (An) */ -{ CPUFUNC(op_4458_0), 0, 17496 }, /* NEG.W (An)+ */ -{ CPUFUNC(op_4460_0), 0, 17504 }, /* NEG.W -(An) */ -{ CPUFUNC(op_4468_0), 0, 17512 }, /* NEG.W (d16,An) */ -{ CPUFUNC(op_4470_0), 0, 17520 }, /* NEG.W (d8,An,Xn) */ -{ CPUFUNC(op_4478_0), 0, 17528 }, /* NEG.W (xxx).W */ -{ CPUFUNC(op_4479_0), 0, 17529 }, /* NEG.W (xxx).L */ -{ CPUFUNC(op_4480_0), 0, 17536 }, /* NEG.L Dn */ -{ CPUFUNC(op_4490_0), 0, 17552 }, /* NEG.L (An) */ -{ CPUFUNC(op_4498_0), 0, 17560 }, /* NEG.L (An)+ */ -{ CPUFUNC(op_44a0_0), 0, 17568 }, /* NEG.L -(An) */ -{ CPUFUNC(op_44a8_0), 0, 17576 }, /* NEG.L (d16,An) */ -{ CPUFUNC(op_44b0_0), 0, 17584 }, /* NEG.L (d8,An,Xn) */ -{ CPUFUNC(op_44b8_0), 0, 17592 }, /* NEG.L (xxx).W */ -{ CPUFUNC(op_44b9_0), 0, 17593 }, /* NEG.L (xxx).L */ -{ CPUFUNC(op_44c0_0), 0, 17600 }, /* MV2SR.B Dn */ -{ CPUFUNC(op_44d0_0), 0, 17616 }, /* MV2SR.B (An) */ -{ CPUFUNC(op_44d8_0), 0, 17624 }, /* MV2SR.B (An)+ */ -{ CPUFUNC(op_44e0_0), 0, 17632 }, /* MV2SR.B -(An) */ -{ CPUFUNC(op_44e8_0), 0, 17640 }, /* MV2SR.B (d16,An) */ -{ CPUFUNC(op_44f0_0), 0, 17648 }, /* MV2SR.B (d8,An,Xn) */ -{ CPUFUNC(op_44f8_0), 0, 17656 }, /* MV2SR.B (xxx).W */ -{ CPUFUNC(op_44f9_0), 0, 17657 }, /* MV2SR.B (xxx).L */ -{ CPUFUNC(op_44fa_0), 0, 17658 }, /* MV2SR.B (d16,PC) */ -{ CPUFUNC(op_44fb_0), 0, 17659 }, /* MV2SR.B (d8,PC,Xn) */ -{ CPUFUNC(op_44fc_0), 0, 17660 }, /* MV2SR.B #.B */ -{ CPUFUNC(op_4600_0), 0, 17920 }, /* NOT.B Dn */ -{ CPUFUNC(op_4610_0), 0, 17936 }, /* NOT.B (An) */ -{ CPUFUNC(op_4618_0), 0, 17944 }, /* NOT.B (An)+ */ -{ CPUFUNC(op_4620_0), 0, 17952 }, /* NOT.B -(An) */ -{ CPUFUNC(op_4628_0), 0, 17960 }, /* NOT.B (d16,An) */ -{ CPUFUNC(op_4630_0), 0, 17968 }, /* NOT.B (d8,An,Xn) */ -{ CPUFUNC(op_4638_0), 0, 17976 }, /* NOT.B (xxx).W */ -{ CPUFUNC(op_4639_0), 0, 17977 }, /* NOT.B (xxx).L */ -{ CPUFUNC(op_4640_0), 0, 17984 }, /* NOT.W Dn */ -{ CPUFUNC(op_4650_0), 0, 18000 }, /* NOT.W (An) */ -{ CPUFUNC(op_4658_0), 0, 18008 }, /* NOT.W (An)+ */ -{ CPUFUNC(op_4660_0), 0, 18016 }, /* NOT.W -(An) */ -{ CPUFUNC(op_4668_0), 0, 18024 }, /* NOT.W (d16,An) */ -{ CPUFUNC(op_4670_0), 0, 18032 }, /* NOT.W (d8,An,Xn) */ -{ CPUFUNC(op_4678_0), 0, 18040 }, /* NOT.W (xxx).W */ -{ CPUFUNC(op_4679_0), 0, 18041 }, /* NOT.W (xxx).L */ -{ CPUFUNC(op_4680_0), 0, 18048 }, /* NOT.L Dn */ -{ CPUFUNC(op_4690_0), 0, 18064 }, /* NOT.L (An) */ -{ CPUFUNC(op_4698_0), 0, 18072 }, /* NOT.L (An)+ */ -{ CPUFUNC(op_46a0_0), 0, 18080 }, /* NOT.L -(An) */ -{ CPUFUNC(op_46a8_0), 0, 18088 }, /* NOT.L (d16,An) */ -{ CPUFUNC(op_46b0_0), 0, 18096 }, /* NOT.L (d8,An,Xn) */ -{ CPUFUNC(op_46b8_0), 0, 18104 }, /* NOT.L (xxx).W */ -{ CPUFUNC(op_46b9_0), 0, 18105 }, /* NOT.L (xxx).L */ -{ CPUFUNC(op_46c0_0), 0, 18112 }, /* MV2SR.W Dn */ -{ CPUFUNC(op_46d0_0), 0, 18128 }, /* MV2SR.W (An) */ -{ CPUFUNC(op_46d8_0), 0, 18136 }, /* MV2SR.W (An)+ */ -{ CPUFUNC(op_46e0_0), 0, 18144 }, /* MV2SR.W -(An) */ -{ CPUFUNC(op_46e8_0), 0, 18152 }, /* MV2SR.W (d16,An) */ -{ CPUFUNC(op_46f0_0), 0, 18160 }, /* MV2SR.W (d8,An,Xn) */ -{ CPUFUNC(op_46f8_0), 0, 18168 }, /* MV2SR.W (xxx).W */ -{ CPUFUNC(op_46f9_0), 0, 18169 }, /* MV2SR.W (xxx).L */ -{ CPUFUNC(op_46fa_0), 0, 18170 }, /* MV2SR.W (d16,PC) */ -{ CPUFUNC(op_46fb_0), 0, 18171 }, /* MV2SR.W (d8,PC,Xn) */ -{ CPUFUNC(op_46fc_0), 0, 18172 }, /* MV2SR.W #.W */ -{ CPUFUNC(op_4800_0), 0, 18432 }, /* NBCD.B Dn */ -{ CPUFUNC_FF(op_4808_0), 0, 18440 }, /* LINK.L An,#.L */ -{ CPUFUNC(op_4810_0), 0, 18448 }, /* NBCD.B (An) */ -{ CPUFUNC(op_4818_0), 0, 18456 }, /* NBCD.B (An)+ */ -{ CPUFUNC(op_4820_0), 0, 18464 }, /* NBCD.B -(An) */ -{ CPUFUNC(op_4828_0), 0, 18472 }, /* NBCD.B (d16,An) */ -{ CPUFUNC(op_4830_0), 0, 18480 }, /* NBCD.B (d8,An,Xn) */ -{ CPUFUNC(op_4838_0), 0, 18488 }, /* NBCD.B (xxx).W */ -{ CPUFUNC(op_4839_0), 0, 18489 }, /* NBCD.B (xxx).L */ -{ CPUFUNC(op_4840_0), 0, 18496 }, /* SWAP.W Dn */ -{ CPUFUNC_FF(op_4848_0), 0, 18504 }, /* BKPT.L # */ -{ CPUFUNC_FF(op_4850_0), 0, 18512 }, /* PEA.L (An) */ -{ CPUFUNC_FF(op_4868_0), 0, 18536 }, /* PEA.L (d16,An) */ -{ CPUFUNC_FF(op_4870_0), 0, 18544 }, /* PEA.L (d8,An,Xn) */ -{ CPUFUNC_FF(op_4878_0), 0, 18552 }, /* PEA.L (xxx).W */ -{ CPUFUNC_FF(op_4879_0), 0, 18553 }, /* PEA.L (xxx).L */ -{ CPUFUNC_FF(op_487a_0), 0, 18554 }, /* PEA.L (d16,PC) */ -{ CPUFUNC_FF(op_487b_0), 0, 18555 }, /* PEA.L (d8,PC,Xn) */ -{ CPUFUNC(op_4880_0), 0, 18560 }, /* EXT.W Dn */ -{ CPUFUNC_FF(op_4890_0), 0, 18576 }, /* MVMLE.W #.W,(An) */ -{ CPUFUNC_FF(op_48a0_0), 0, 18592 }, /* MVMLE.W #.W,-(An) */ -{ CPUFUNC_FF(op_48a8_0), 0, 18600 }, /* MVMLE.W #.W,(d16,An) */ -{ CPUFUNC_FF(op_48b0_0), 0, 18608 }, /* MVMLE.W #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_48b8_0), 0, 18616 }, /* MVMLE.W #.W,(xxx).W */ -{ CPUFUNC_FF(op_48b9_0), 0, 18617 }, /* MVMLE.W #.W,(xxx).L */ -{ CPUFUNC(op_48c0_0), 0, 18624 }, /* EXT.L Dn */ -{ CPUFUNC_FF(op_48d0_0), 0, 18640 }, /* MVMLE.L #.W,(An) */ -{ CPUFUNC_FF(op_48e0_0), 0, 18656 }, /* MVMLE.L #.W,-(An) */ -{ CPUFUNC_FF(op_48e8_0), 0, 18664 }, /* MVMLE.L #.W,(d16,An) */ -{ CPUFUNC_FF(op_48f0_0), 0, 18672 }, /* MVMLE.L #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_48f8_0), 0, 18680 }, /* MVMLE.L #.W,(xxx).W */ -{ CPUFUNC_FF(op_48f9_0), 0, 18681 }, /* MVMLE.L #.W,(xxx).L */ -{ CPUFUNC(op_49c0_0), 0, 18880 }, /* EXT.B Dn */ -{ CPUFUNC(op_4a00_0), 0, 18944 }, /* TST.B Dn */ -{ CPUFUNC(op_4a10_0), 0, 18960 }, /* TST.B (An) */ -{ CPUFUNC(op_4a18_0), 0, 18968 }, /* TST.B (An)+ */ -{ CPUFUNC(op_4a20_0), 0, 18976 }, /* TST.B -(An) */ -{ CPUFUNC(op_4a28_0), 0, 18984 }, /* TST.B (d16,An) */ -{ CPUFUNC(op_4a30_0), 0, 18992 }, /* TST.B (d8,An,Xn) */ -{ CPUFUNC(op_4a38_0), 0, 19000 }, /* TST.B (xxx).W */ -{ CPUFUNC(op_4a39_0), 0, 19001 }, /* TST.B (xxx).L */ -{ CPUFUNC(op_4a3a_0), 0, 19002 }, /* TST.B (d16,PC) */ -{ CPUFUNC(op_4a3b_0), 0, 19003 }, /* TST.B (d8,PC,Xn) */ -{ CPUFUNC(op_4a3c_0), 0, 19004 }, /* TST.B #.B */ -{ CPUFUNC(op_4a40_0), 0, 19008 }, /* TST.W Dn */ -{ CPUFUNC(op_4a48_0), 0, 19016 }, /* TST.W An */ -{ CPUFUNC(op_4a50_0), 0, 19024 }, /* TST.W (An) */ -{ CPUFUNC(op_4a58_0), 0, 19032 }, /* TST.W (An)+ */ -{ CPUFUNC(op_4a60_0), 0, 19040 }, /* TST.W -(An) */ -{ CPUFUNC(op_4a68_0), 0, 19048 }, /* TST.W (d16,An) */ -{ CPUFUNC(op_4a70_0), 0, 19056 }, /* TST.W (d8,An,Xn) */ -{ CPUFUNC(op_4a78_0), 0, 19064 }, /* TST.W (xxx).W */ -{ CPUFUNC(op_4a79_0), 0, 19065 }, /* TST.W (xxx).L */ -{ CPUFUNC(op_4a7a_0), 0, 19066 }, /* TST.W (d16,PC) */ -{ CPUFUNC(op_4a7b_0), 0, 19067 }, /* TST.W (d8,PC,Xn) */ -{ CPUFUNC(op_4a7c_0), 0, 19068 }, /* TST.W #.W */ -{ CPUFUNC(op_4a80_0), 0, 19072 }, /* TST.L Dn */ -{ CPUFUNC(op_4a88_0), 0, 19080 }, /* TST.L An */ -{ CPUFUNC(op_4a90_0), 0, 19088 }, /* TST.L (An) */ -{ CPUFUNC(op_4a98_0), 0, 19096 }, /* TST.L (An)+ */ -{ CPUFUNC(op_4aa0_0), 0, 19104 }, /* TST.L -(An) */ -{ CPUFUNC(op_4aa8_0), 0, 19112 }, /* TST.L (d16,An) */ -{ CPUFUNC(op_4ab0_0), 0, 19120 }, /* TST.L (d8,An,Xn) */ -{ CPUFUNC(op_4ab8_0), 0, 19128 }, /* TST.L (xxx).W */ -{ CPUFUNC(op_4ab9_0), 0, 19129 }, /* TST.L (xxx).L */ -{ CPUFUNC(op_4aba_0), 0, 19130 }, /* TST.L (d16,PC) */ -{ CPUFUNC(op_4abb_0), 0, 19131 }, /* TST.L (d8,PC,Xn) */ -{ CPUFUNC(op_4abc_0), 0, 19132 }, /* TST.L #.L */ -{ CPUFUNC(op_4ac0_0), 0, 19136 }, /* TAS.B Dn */ -{ CPUFUNC(op_4ad0_0), 0, 19152 }, /* TAS.B (An) */ -{ CPUFUNC(op_4ad8_0), 0, 19160 }, /* TAS.B (An)+ */ -{ CPUFUNC(op_4ae0_0), 0, 19168 }, /* TAS.B -(An) */ -{ CPUFUNC(op_4ae8_0), 0, 19176 }, /* TAS.B (d16,An) */ -{ CPUFUNC(op_4af0_0), 0, 19184 }, /* TAS.B (d8,An,Xn) */ -{ CPUFUNC(op_4af8_0), 0, 19192 }, /* TAS.B (xxx).W */ -{ CPUFUNC(op_4af9_0), 0, 19193 }, /* TAS.B (xxx).L */ -{ CPUFUNC(op_4c00_0), 0, 19456 }, /* MULL.L #.W,Dn */ -{ CPUFUNC(op_4c10_0), 0, 19472 }, /* MULL.L #.W,(An) */ -{ CPUFUNC(op_4c18_0), 0, 19480 }, /* MULL.L #.W,(An)+ */ -{ CPUFUNC(op_4c20_0), 0, 19488 }, /* MULL.L #.W,-(An) */ -{ CPUFUNC(op_4c28_0), 0, 19496 }, /* MULL.L #.W,(d16,An) */ -{ CPUFUNC(op_4c30_0), 0, 19504 }, /* MULL.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_4c38_0), 0, 19512 }, /* MULL.L #.W,(xxx).W */ -{ CPUFUNC(op_4c39_0), 0, 19513 }, /* MULL.L #.W,(xxx).L */ -{ CPUFUNC(op_4c3a_0), 0, 19514 }, /* MULL.L #.W,(d16,PC) */ -{ CPUFUNC(op_4c3b_0), 0, 19515 }, /* MULL.L #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_4c3c_0), 0, 19516 }, /* MULL.L #.W,#.L */ -{ CPUFUNC(op_4c40_0), 0, 19520 }, /* DIVL.L #.W,Dn */ -{ CPUFUNC(op_4c50_0), 0, 19536 }, /* DIVL.L #.W,(An) */ -{ CPUFUNC(op_4c58_0), 0, 19544 }, /* DIVL.L #.W,(An)+ */ -{ CPUFUNC(op_4c60_0), 0, 19552 }, /* DIVL.L #.W,-(An) */ -{ CPUFUNC(op_4c68_0), 0, 19560 }, /* DIVL.L #.W,(d16,An) */ -{ CPUFUNC(op_4c70_0), 0, 19568 }, /* DIVL.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_4c78_0), 0, 19576 }, /* DIVL.L #.W,(xxx).W */ -{ CPUFUNC(op_4c79_0), 0, 19577 }, /* DIVL.L #.W,(xxx).L */ -{ CPUFUNC(op_4c7a_0), 0, 19578 }, /* DIVL.L #.W,(d16,PC) */ -{ CPUFUNC(op_4c7b_0), 0, 19579 }, /* DIVL.L #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_4c7c_0), 0, 19580 }, /* DIVL.L #.W,#.L */ -{ CPUFUNC_FF(op_4c90_0), 0, 19600 }, /* MVMEL.W #.W,(An) */ -{ CPUFUNC_FF(op_4c98_0), 0, 19608 }, /* MVMEL.W #.W,(An)+ */ -{ CPUFUNC_FF(op_4ca8_0), 0, 19624 }, /* MVMEL.W #.W,(d16,An) */ -{ CPUFUNC_FF(op_4cb0_0), 0, 19632 }, /* MVMEL.W #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_4cb8_0), 0, 19640 }, /* MVMEL.W #.W,(xxx).W */ -{ CPUFUNC_FF(op_4cb9_0), 0, 19641 }, /* MVMEL.W #.W,(xxx).L */ -{ CPUFUNC_FF(op_4cba_0), 0, 19642 }, /* MVMEL.W #.W,(d16,PC) */ -{ CPUFUNC_FF(op_4cbb_0), 0, 19643 }, /* MVMEL.W #.W,(d8,PC,Xn) */ -{ CPUFUNC_FF(op_4cd0_0), 0, 19664 }, /* MVMEL.L #.W,(An) */ -{ CPUFUNC_FF(op_4cd8_0), 0, 19672 }, /* MVMEL.L #.W,(An)+ */ -{ CPUFUNC_FF(op_4ce8_0), 0, 19688 }, /* MVMEL.L #.W,(d16,An) */ -{ CPUFUNC_FF(op_4cf0_0), 0, 19696 }, /* MVMEL.L #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_4cf8_0), 0, 19704 }, /* MVMEL.L #.W,(xxx).W */ -{ CPUFUNC_FF(op_4cf9_0), 0, 19705 }, /* MVMEL.L #.W,(xxx).L */ -{ CPUFUNC_FF(op_4cfa_0), 0, 19706 }, /* MVMEL.L #.W,(d16,PC) */ -{ CPUFUNC_FF(op_4cfb_0), 0, 19707 }, /* MVMEL.L #.W,(d8,PC,Xn) */ -{ CPUFUNC_FF(op_4e40_0), 0, 20032 }, /* TRAP.L # */ -{ CPUFUNC_FF(op_4e50_0), 0, 20048 }, /* LINK.W An,#.W */ -{ CPUFUNC_FF(op_4e58_0), 0, 20056 }, /* UNLK.L An */ -{ CPUFUNC_FF(op_4e60_0), 0, 20064 }, /* MVR2USP.L An */ -{ CPUFUNC_FF(op_4e68_0), 0, 20072 }, /* MVUSP2R.L An */ -{ CPUFUNC_FF(op_4e70_0), 0, 20080 }, /* RESET.L */ -{ CPUFUNC_FF(op_4e71_0), 0, 20081 }, /* NOP.L */ -{ CPUFUNC(op_4e72_0), 0, 20082 }, /* STOP.L #.W */ -{ CPUFUNC(op_4e73_0), 0, 20083 }, /* RTE.L */ -{ CPUFUNC_FF(op_4e74_0), 0, 20084 }, /* RTD.L #.W */ -{ CPUFUNC_FF(op_4e75_0), 0, 20085 }, /* RTS.L */ -{ CPUFUNC_FF(op_4e76_0), 0, 20086 }, /* TRAPV.L */ -{ CPUFUNC(op_4e77_0), 0, 20087 }, /* RTR.L */ -{ CPUFUNC_FF(op_4e7a_0), 0, 20090 }, /* MOVEC2.L #.W */ -{ CPUFUNC_FF(op_4e7b_0), 0, 20091 }, /* MOVE2C.L #.W */ -{ CPUFUNC_FF(op_4e90_0), 0, 20112 }, /* JSR.L (An) */ -{ CPUFUNC_FF(op_4ea8_0), 0, 20136 }, /* JSR.L (d16,An) */ -{ CPUFUNC_FF(op_4eb0_0), 0, 20144 }, /* JSR.L (d8,An,Xn) */ -{ CPUFUNC_FF(op_4eb8_0), 0, 20152 }, /* JSR.L (xxx).W */ -{ CPUFUNC_FF(op_4eb9_0), 0, 20153 }, /* JSR.L (xxx).L */ -{ CPUFUNC_FF(op_4eba_0), 0, 20154 }, /* JSR.L (d16,PC) */ -{ CPUFUNC_FF(op_4ebb_0), 0, 20155 }, /* JSR.L (d8,PC,Xn) */ -{ CPUFUNC_FF(op_4ed0_0), 0, 20176 }, /* JMP.L (An) */ -{ CPUFUNC_FF(op_4ee8_0), 0, 20200 }, /* JMP.L (d16,An) */ -{ CPUFUNC_FF(op_4ef0_0), 0, 20208 }, /* JMP.L (d8,An,Xn) */ -{ CPUFUNC_FF(op_4ef8_0), 0, 20216 }, /* JMP.L (xxx).W */ -{ CPUFUNC_FF(op_4ef9_0), 0, 20217 }, /* JMP.L (xxx).L */ -{ CPUFUNC_FF(op_4efa_0), 0, 20218 }, /* JMP.L (d16,PC) */ -{ CPUFUNC_FF(op_4efb_0), 0, 20219 }, /* JMP.L (d8,PC,Xn) */ -{ CPUFUNC(op_5000_0), 0, 20480 }, /* ADD.B #,Dn */ -{ CPUFUNC(op_5010_0), 0, 20496 }, /* ADD.B #,(An) */ -{ CPUFUNC(op_5018_0), 0, 20504 }, /* ADD.B #,(An)+ */ -{ CPUFUNC(op_5020_0), 0, 20512 }, /* ADD.B #,-(An) */ -{ CPUFUNC(op_5028_0), 0, 20520 }, /* ADD.B #,(d16,An) */ -{ CPUFUNC(op_5030_0), 0, 20528 }, /* ADD.B #,(d8,An,Xn) */ -{ CPUFUNC(op_5038_0), 0, 20536 }, /* ADD.B #,(xxx).W */ -{ CPUFUNC(op_5039_0), 0, 20537 }, /* ADD.B #,(xxx).L */ -{ CPUFUNC(op_5040_0), 0, 20544 }, /* ADD.W #,Dn */ -{ CPUFUNC_FF(op_5048_0), 0, 20552 }, /* ADDA.W #,An */ -{ CPUFUNC(op_5050_0), 0, 20560 }, /* ADD.W #,(An) */ -{ CPUFUNC(op_5058_0), 0, 20568 }, /* ADD.W #,(An)+ */ -{ CPUFUNC(op_5060_0), 0, 20576 }, /* ADD.W #,-(An) */ -{ CPUFUNC(op_5068_0), 0, 20584 }, /* ADD.W #,(d16,An) */ -{ CPUFUNC(op_5070_0), 0, 20592 }, /* ADD.W #,(d8,An,Xn) */ -{ CPUFUNC(op_5078_0), 0, 20600 }, /* ADD.W #,(xxx).W */ -{ CPUFUNC(op_5079_0), 0, 20601 }, /* ADD.W #,(xxx).L */ -{ CPUFUNC(op_5080_0), 0, 20608 }, /* ADD.L #,Dn */ -{ CPUFUNC_FF(op_5088_0), 0, 20616 }, /* ADDA.L #,An */ -{ CPUFUNC(op_5090_0), 0, 20624 }, /* ADD.L #,(An) */ -{ CPUFUNC(op_5098_0), 0, 20632 }, /* ADD.L #,(An)+ */ -{ CPUFUNC(op_50a0_0), 0, 20640 }, /* ADD.L #,-(An) */ -{ CPUFUNC(op_50a8_0), 0, 20648 }, /* ADD.L #,(d16,An) */ -{ CPUFUNC(op_50b0_0), 0, 20656 }, /* ADD.L #,(d8,An,Xn) */ -{ CPUFUNC(op_50b8_0), 0, 20664 }, /* ADD.L #,(xxx).W */ -{ CPUFUNC(op_50b9_0), 0, 20665 }, /* ADD.L #,(xxx).L */ -{ CPUFUNC_FF(op_50c0_0), 0, 20672 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_50c8_0), 0, 20680 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_50d0_0), 0, 20688 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_50d8_0), 0, 20696 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_50e0_0), 0, 20704 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_50e8_0), 0, 20712 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_50f0_0), 0, 20720 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_50f8_0), 0, 20728 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_50f9_0), 0, 20729 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_50fa_0), 0, 20730 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_50fb_0), 0, 20731 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_50fc_0), 0, 20732 }, /* TRAPcc.L */ -{ CPUFUNC(op_5100_0), 0, 20736 }, /* SUB.B #,Dn */ -{ CPUFUNC(op_5110_0), 0, 20752 }, /* SUB.B #,(An) */ -{ CPUFUNC(op_5118_0), 0, 20760 }, /* SUB.B #,(An)+ */ -{ CPUFUNC(op_5120_0), 0, 20768 }, /* SUB.B #,-(An) */ -{ CPUFUNC(op_5128_0), 0, 20776 }, /* SUB.B #,(d16,An) */ -{ CPUFUNC(op_5130_0), 0, 20784 }, /* SUB.B #,(d8,An,Xn) */ -{ CPUFUNC(op_5138_0), 0, 20792 }, /* SUB.B #,(xxx).W */ -{ CPUFUNC(op_5139_0), 0, 20793 }, /* SUB.B #,(xxx).L */ -{ CPUFUNC(op_5140_0), 0, 20800 }, /* SUB.W #,Dn */ -{ CPUFUNC_FF(op_5148_0), 0, 20808 }, /* SUBA.W #,An */ -{ CPUFUNC(op_5150_0), 0, 20816 }, /* SUB.W #,(An) */ -{ CPUFUNC(op_5158_0), 0, 20824 }, /* SUB.W #,(An)+ */ -{ CPUFUNC(op_5160_0), 0, 20832 }, /* SUB.W #,-(An) */ -{ CPUFUNC(op_5168_0), 0, 20840 }, /* SUB.W #,(d16,An) */ -{ CPUFUNC(op_5170_0), 0, 20848 }, /* SUB.W #,(d8,An,Xn) */ -{ CPUFUNC(op_5178_0), 0, 20856 }, /* SUB.W #,(xxx).W */ -{ CPUFUNC(op_5179_0), 0, 20857 }, /* SUB.W #,(xxx).L */ -{ CPUFUNC(op_5180_0), 0, 20864 }, /* SUB.L #,Dn */ -{ CPUFUNC_FF(op_5188_0), 0, 20872 }, /* SUBA.L #,An */ -{ CPUFUNC(op_5190_0), 0, 20880 }, /* SUB.L #,(An) */ -{ CPUFUNC(op_5198_0), 0, 20888 }, /* SUB.L #,(An)+ */ -{ CPUFUNC(op_51a0_0), 0, 20896 }, /* SUB.L #,-(An) */ -{ CPUFUNC(op_51a8_0), 0, 20904 }, /* SUB.L #,(d16,An) */ -{ CPUFUNC(op_51b0_0), 0, 20912 }, /* SUB.L #,(d8,An,Xn) */ -{ CPUFUNC(op_51b8_0), 0, 20920 }, /* SUB.L #,(xxx).W */ -{ CPUFUNC(op_51b9_0), 0, 20921 }, /* SUB.L #,(xxx).L */ -{ CPUFUNC_FF(op_51c0_0), 0, 20928 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_51c8_0), 0, 20936 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_51d0_0), 0, 20944 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_51d8_0), 0, 20952 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_51e0_0), 0, 20960 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_51e8_0), 0, 20968 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_51f0_0), 0, 20976 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_51f8_0), 0, 20984 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_51f9_0), 0, 20985 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_51fa_0), 0, 20986 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_51fb_0), 0, 20987 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_51fc_0), 0, 20988 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_52c0_0), 0, 21184 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_52c8_0), 0, 21192 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_52d0_0), 0, 21200 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_52d8_0), 0, 21208 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_52e0_0), 0, 21216 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_52e8_0), 0, 21224 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_52f0_0), 0, 21232 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_52f8_0), 0, 21240 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_52f9_0), 0, 21241 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_52fa_0), 0, 21242 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_52fb_0), 0, 21243 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_52fc_0), 0, 21244 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_53c0_0), 0, 21440 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_53c8_0), 0, 21448 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_53d0_0), 0, 21456 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_53d8_0), 0, 21464 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_53e0_0), 0, 21472 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_53e8_0), 0, 21480 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_53f0_0), 0, 21488 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_53f8_0), 0, 21496 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_53f9_0), 0, 21497 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_53fa_0), 0, 21498 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_53fb_0), 0, 21499 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_53fc_0), 0, 21500 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_54c0_0), 0, 21696 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_54c8_0), 0, 21704 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_54d0_0), 0, 21712 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_54d8_0), 0, 21720 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_54e0_0), 0, 21728 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_54e8_0), 0, 21736 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_54f0_0), 0, 21744 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_54f8_0), 0, 21752 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_54f9_0), 0, 21753 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_54fa_0), 0, 21754 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_54fb_0), 0, 21755 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_54fc_0), 0, 21756 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_55c0_0), 0, 21952 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_55c8_0), 0, 21960 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_55d0_0), 0, 21968 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_55d8_0), 0, 21976 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_55e0_0), 0, 21984 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_55e8_0), 0, 21992 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_55f0_0), 0, 22000 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_55f8_0), 0, 22008 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_55f9_0), 0, 22009 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_55fa_0), 0, 22010 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_55fb_0), 0, 22011 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_55fc_0), 0, 22012 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_56c0_0), 0, 22208 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_56c8_0), 0, 22216 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_56d0_0), 0, 22224 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_56d8_0), 0, 22232 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_56e0_0), 0, 22240 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_56e8_0), 0, 22248 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_56f0_0), 0, 22256 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_56f8_0), 0, 22264 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_56f9_0), 0, 22265 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_56fa_0), 0, 22266 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_56fb_0), 0, 22267 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_56fc_0), 0, 22268 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_57c0_0), 0, 22464 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_57c8_0), 0, 22472 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_57d0_0), 0, 22480 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_57d8_0), 0, 22488 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_57e0_0), 0, 22496 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_57e8_0), 0, 22504 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_57f0_0), 0, 22512 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_57f8_0), 0, 22520 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_57f9_0), 0, 22521 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_57fa_0), 0, 22522 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_57fb_0), 0, 22523 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_57fc_0), 0, 22524 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_58c0_0), 0, 22720 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_58c8_0), 0, 22728 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_58d0_0), 0, 22736 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_58d8_0), 0, 22744 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_58e0_0), 0, 22752 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_58e8_0), 0, 22760 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_58f0_0), 0, 22768 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_58f8_0), 0, 22776 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_58f9_0), 0, 22777 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_58fa_0), 0, 22778 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_58fb_0), 0, 22779 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_58fc_0), 0, 22780 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_59c0_0), 0, 22976 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_59c8_0), 0, 22984 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_59d0_0), 0, 22992 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_59d8_0), 0, 23000 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_59e0_0), 0, 23008 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_59e8_0), 0, 23016 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_59f0_0), 0, 23024 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_59f8_0), 0, 23032 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_59f9_0), 0, 23033 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_59fa_0), 0, 23034 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_59fb_0), 0, 23035 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_59fc_0), 0, 23036 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_5ac0_0), 0, 23232 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_5ac8_0), 0, 23240 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_5ad0_0), 0, 23248 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_5ad8_0), 0, 23256 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_5ae0_0), 0, 23264 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_5ae8_0), 0, 23272 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_5af0_0), 0, 23280 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_5af8_0), 0, 23288 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_5af9_0), 0, 23289 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_5afa_0), 0, 23290 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_5afb_0), 0, 23291 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_5afc_0), 0, 23292 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_5bc0_0), 0, 23488 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_5bc8_0), 0, 23496 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_5bd0_0), 0, 23504 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_5bd8_0), 0, 23512 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_5be0_0), 0, 23520 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_5be8_0), 0, 23528 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_5bf0_0), 0, 23536 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_5bf8_0), 0, 23544 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_5bf9_0), 0, 23545 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_5bfa_0), 0, 23546 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_5bfb_0), 0, 23547 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_5bfc_0), 0, 23548 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_5cc0_0), 0, 23744 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_5cc8_0), 0, 23752 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_5cd0_0), 0, 23760 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_5cd8_0), 0, 23768 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_5ce0_0), 0, 23776 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_5ce8_0), 0, 23784 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_5cf0_0), 0, 23792 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_5cf8_0), 0, 23800 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_5cf9_0), 0, 23801 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_5cfa_0), 0, 23802 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_5cfb_0), 0, 23803 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_5cfc_0), 0, 23804 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_5dc0_0), 0, 24000 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_5dc8_0), 0, 24008 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_5dd0_0), 0, 24016 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_5dd8_0), 0, 24024 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_5de0_0), 0, 24032 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_5de8_0), 0, 24040 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_5df0_0), 0, 24048 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_5df8_0), 0, 24056 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_5df9_0), 0, 24057 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_5dfa_0), 0, 24058 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_5dfb_0), 0, 24059 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_5dfc_0), 0, 24060 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_5ec0_0), 0, 24256 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_5ec8_0), 0, 24264 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_5ed0_0), 0, 24272 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_5ed8_0), 0, 24280 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_5ee0_0), 0, 24288 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_5ee8_0), 0, 24296 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_5ef0_0), 0, 24304 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_5ef8_0), 0, 24312 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_5ef9_0), 0, 24313 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_5efa_0), 0, 24314 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_5efb_0), 0, 24315 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_5efc_0), 0, 24316 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_5fc0_0), 0, 24512 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_5fc8_0), 0, 24520 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_5fd0_0), 0, 24528 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_5fd8_0), 0, 24536 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_5fe0_0), 0, 24544 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_5fe8_0), 0, 24552 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_5ff0_0), 0, 24560 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_5ff8_0), 0, 24568 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_5ff9_0), 0, 24569 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_5ffa_0), 0, 24570 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_5ffb_0), 0, 24571 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_5ffc_0), 0, 24572 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_6000_0), 0, 24576 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6001_0), 0, 24577 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_60ff_0), 0, 24831 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6100_0), 0, 24832 }, /* BSR.W #.W */ -{ CPUFUNC_FF(op_6101_0), 0, 24833 }, /* BSR.B # */ -{ CPUFUNC_FF(op_61ff_0), 0, 25087 }, /* BSR.L #.L */ -{ CPUFUNC_FF(op_6200_0), 0, 25088 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6201_0), 0, 25089 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_62ff_0), 0, 25343 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6300_0), 0, 25344 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6301_0), 0, 25345 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_63ff_0), 0, 25599 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6400_0), 0, 25600 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6401_0), 0, 25601 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_64ff_0), 0, 25855 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6500_0), 0, 25856 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6501_0), 0, 25857 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_65ff_0), 0, 26111 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6600_0), 0, 26112 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6601_0), 0, 26113 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_66ff_0), 0, 26367 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6700_0), 0, 26368 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6701_0), 0, 26369 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_67ff_0), 0, 26623 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6800_0), 0, 26624 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6801_0), 0, 26625 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_68ff_0), 0, 26879 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6900_0), 0, 26880 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6901_0), 0, 26881 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_69ff_0), 0, 27135 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6a00_0), 0, 27136 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6a01_0), 0, 27137 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_6aff_0), 0, 27391 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6b00_0), 0, 27392 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6b01_0), 0, 27393 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_6bff_0), 0, 27647 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6c00_0), 0, 27648 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6c01_0), 0, 27649 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_6cff_0), 0, 27903 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6d00_0), 0, 27904 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6d01_0), 0, 27905 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_6dff_0), 0, 28159 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6e00_0), 0, 28160 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6e01_0), 0, 28161 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_6eff_0), 0, 28415 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6f00_0), 0, 28416 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6f01_0), 0, 28417 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_6fff_0), 0, 28671 }, /* Bcc.L #.L */ -{ CPUFUNC(op_7000_0), 0, 28672 }, /* MOVE.L #,Dn */ -{ CPUFUNC_FF(op_7100_0), 0, 28928 }, /* EMULOP_RETURN.L */ -{ CPUFUNC_FF(op_7101_0), 0, 28929 }, /* EMULOP.L # */ -{ CPUFUNC(op_8000_0), 0, 32768 }, /* OR.B Dn,Dn */ -{ CPUFUNC(op_8010_0), 0, 32784 }, /* OR.B (An),Dn */ -{ CPUFUNC(op_8018_0), 0, 32792 }, /* OR.B (An)+,Dn */ -{ CPUFUNC(op_8020_0), 0, 32800 }, /* OR.B -(An),Dn */ -{ CPUFUNC(op_8028_0), 0, 32808 }, /* OR.B (d16,An),Dn */ -{ CPUFUNC(op_8030_0), 0, 32816 }, /* OR.B (d8,An,Xn),Dn */ -{ CPUFUNC(op_8038_0), 0, 32824 }, /* OR.B (xxx).W,Dn */ -{ CPUFUNC(op_8039_0), 0, 32825 }, /* OR.B (xxx).L,Dn */ -{ CPUFUNC(op_803a_0), 0, 32826 }, /* OR.B (d16,PC),Dn */ -{ CPUFUNC(op_803b_0), 0, 32827 }, /* OR.B (d8,PC,Xn),Dn */ -{ CPUFUNC(op_803c_0), 0, 32828 }, /* OR.B #.B,Dn */ -{ CPUFUNC(op_8040_0), 0, 32832 }, /* OR.W Dn,Dn */ -{ CPUFUNC(op_8050_0), 0, 32848 }, /* OR.W (An),Dn */ -{ CPUFUNC(op_8058_0), 0, 32856 }, /* OR.W (An)+,Dn */ -{ CPUFUNC(op_8060_0), 0, 32864 }, /* OR.W -(An),Dn */ -{ CPUFUNC(op_8068_0), 0, 32872 }, /* OR.W (d16,An),Dn */ -{ CPUFUNC(op_8070_0), 0, 32880 }, /* OR.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_8078_0), 0, 32888 }, /* OR.W (xxx).W,Dn */ -{ CPUFUNC(op_8079_0), 0, 32889 }, /* OR.W (xxx).L,Dn */ -{ CPUFUNC(op_807a_0), 0, 32890 }, /* OR.W (d16,PC),Dn */ -{ CPUFUNC(op_807b_0), 0, 32891 }, /* OR.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_807c_0), 0, 32892 }, /* OR.W #.W,Dn */ -{ CPUFUNC(op_8080_0), 0, 32896 }, /* OR.L Dn,Dn */ -{ CPUFUNC(op_8090_0), 0, 32912 }, /* OR.L (An),Dn */ -{ CPUFUNC(op_8098_0), 0, 32920 }, /* OR.L (An)+,Dn */ -{ CPUFUNC(op_80a0_0), 0, 32928 }, /* OR.L -(An),Dn */ -{ CPUFUNC(op_80a8_0), 0, 32936 }, /* OR.L (d16,An),Dn */ -{ CPUFUNC(op_80b0_0), 0, 32944 }, /* OR.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_80b8_0), 0, 32952 }, /* OR.L (xxx).W,Dn */ -{ CPUFUNC(op_80b9_0), 0, 32953 }, /* OR.L (xxx).L,Dn */ -{ CPUFUNC(op_80ba_0), 0, 32954 }, /* OR.L (d16,PC),Dn */ -{ CPUFUNC(op_80bb_0), 0, 32955 }, /* OR.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_80bc_0), 0, 32956 }, /* OR.L #.L,Dn */ -{ CPUFUNC(op_80c0_0), 0, 32960 }, /* DIVU.W Dn,Dn */ -{ CPUFUNC(op_80d0_0), 0, 32976 }, /* DIVU.W (An),Dn */ -{ CPUFUNC(op_80d8_0), 0, 32984 }, /* DIVU.W (An)+,Dn */ -{ CPUFUNC(op_80e0_0), 0, 32992 }, /* DIVU.W -(An),Dn */ -{ CPUFUNC(op_80e8_0), 0, 33000 }, /* DIVU.W (d16,An),Dn */ -{ CPUFUNC(op_80f0_0), 0, 33008 }, /* DIVU.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_80f8_0), 0, 33016 }, /* DIVU.W (xxx).W,Dn */ -{ CPUFUNC(op_80f9_0), 0, 33017 }, /* DIVU.W (xxx).L,Dn */ -{ CPUFUNC(op_80fa_0), 0, 33018 }, /* DIVU.W (d16,PC),Dn */ -{ CPUFUNC(op_80fb_0), 0, 33019 }, /* DIVU.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_80fc_0), 0, 33020 }, /* DIVU.W #.W,Dn */ -{ CPUFUNC(op_8100_0), 0, 33024 }, /* SBCD.B Dn,Dn */ -{ CPUFUNC(op_8108_0), 0, 33032 }, /* SBCD.B -(An),-(An) */ -{ CPUFUNC(op_8110_0), 0, 33040 }, /* OR.B Dn,(An) */ -{ CPUFUNC(op_8118_0), 0, 33048 }, /* OR.B Dn,(An)+ */ -{ CPUFUNC(op_8120_0), 0, 33056 }, /* OR.B Dn,-(An) */ -{ CPUFUNC(op_8128_0), 0, 33064 }, /* OR.B Dn,(d16,An) */ -{ CPUFUNC(op_8130_0), 0, 33072 }, /* OR.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_8138_0), 0, 33080 }, /* OR.B Dn,(xxx).W */ -{ CPUFUNC(op_8139_0), 0, 33081 }, /* OR.B Dn,(xxx).L */ -{ CPUFUNC_FF(op_8140_0), 0, 33088 }, /* PACK.L Dn,Dn */ -{ CPUFUNC_FF(op_8148_0), 0, 33096 }, /* PACK.L -(An),-(An) */ -{ CPUFUNC(op_8150_0), 0, 33104 }, /* OR.W Dn,(An) */ -{ CPUFUNC(op_8158_0), 0, 33112 }, /* OR.W Dn,(An)+ */ -{ CPUFUNC(op_8160_0), 0, 33120 }, /* OR.W Dn,-(An) */ -{ CPUFUNC(op_8168_0), 0, 33128 }, /* OR.W Dn,(d16,An) */ -{ CPUFUNC(op_8170_0), 0, 33136 }, /* OR.W Dn,(d8,An,Xn) */ -{ CPUFUNC(op_8178_0), 0, 33144 }, /* OR.W Dn,(xxx).W */ -{ CPUFUNC(op_8179_0), 0, 33145 }, /* OR.W Dn,(xxx).L */ -{ CPUFUNC_FF(op_8180_0), 0, 33152 }, /* UNPK.L Dn,Dn */ -{ CPUFUNC_FF(op_8188_0), 0, 33160 }, /* UNPK.L -(An),-(An) */ -{ CPUFUNC(op_8190_0), 0, 33168 }, /* OR.L Dn,(An) */ -{ CPUFUNC(op_8198_0), 0, 33176 }, /* OR.L Dn,(An)+ */ -{ CPUFUNC(op_81a0_0), 0, 33184 }, /* OR.L Dn,-(An) */ -{ CPUFUNC(op_81a8_0), 0, 33192 }, /* OR.L Dn,(d16,An) */ -{ CPUFUNC(op_81b0_0), 0, 33200 }, /* OR.L Dn,(d8,An,Xn) */ -{ CPUFUNC(op_81b8_0), 0, 33208 }, /* OR.L Dn,(xxx).W */ -{ CPUFUNC(op_81b9_0), 0, 33209 }, /* OR.L Dn,(xxx).L */ -{ CPUFUNC(op_81c0_0), 0, 33216 }, /* DIVS.W Dn,Dn */ -{ CPUFUNC(op_81d0_0), 0, 33232 }, /* DIVS.W (An),Dn */ -{ CPUFUNC(op_81d8_0), 0, 33240 }, /* DIVS.W (An)+,Dn */ -{ CPUFUNC(op_81e0_0), 0, 33248 }, /* DIVS.W -(An),Dn */ -{ CPUFUNC(op_81e8_0), 0, 33256 }, /* DIVS.W (d16,An),Dn */ -{ CPUFUNC(op_81f0_0), 0, 33264 }, /* DIVS.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_81f8_0), 0, 33272 }, /* DIVS.W (xxx).W,Dn */ -{ CPUFUNC(op_81f9_0), 0, 33273 }, /* DIVS.W (xxx).L,Dn */ -{ CPUFUNC(op_81fa_0), 0, 33274 }, /* DIVS.W (d16,PC),Dn */ -{ CPUFUNC(op_81fb_0), 0, 33275 }, /* DIVS.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_81fc_0), 0, 33276 }, /* DIVS.W #.W,Dn */ -{ CPUFUNC(op_9000_0), 0, 36864 }, /* SUB.B Dn,Dn */ -{ CPUFUNC(op_9010_0), 0, 36880 }, /* SUB.B (An),Dn */ -{ CPUFUNC(op_9018_0), 0, 36888 }, /* SUB.B (An)+,Dn */ -{ CPUFUNC(op_9020_0), 0, 36896 }, /* SUB.B -(An),Dn */ -{ CPUFUNC(op_9028_0), 0, 36904 }, /* SUB.B (d16,An),Dn */ -{ CPUFUNC(op_9030_0), 0, 36912 }, /* SUB.B (d8,An,Xn),Dn */ -{ CPUFUNC(op_9038_0), 0, 36920 }, /* SUB.B (xxx).W,Dn */ -{ CPUFUNC(op_9039_0), 0, 36921 }, /* SUB.B (xxx).L,Dn */ -{ CPUFUNC(op_903a_0), 0, 36922 }, /* SUB.B (d16,PC),Dn */ -{ CPUFUNC(op_903b_0), 0, 36923 }, /* SUB.B (d8,PC,Xn),Dn */ -{ CPUFUNC(op_903c_0), 0, 36924 }, /* SUB.B #.B,Dn */ -{ CPUFUNC(op_9040_0), 0, 36928 }, /* SUB.W Dn,Dn */ -{ CPUFUNC(op_9048_0), 0, 36936 }, /* SUB.W An,Dn */ -{ CPUFUNC(op_9050_0), 0, 36944 }, /* SUB.W (An),Dn */ -{ CPUFUNC(op_9058_0), 0, 36952 }, /* SUB.W (An)+,Dn */ -{ CPUFUNC(op_9060_0), 0, 36960 }, /* SUB.W -(An),Dn */ -{ CPUFUNC(op_9068_0), 0, 36968 }, /* SUB.W (d16,An),Dn */ -{ CPUFUNC(op_9070_0), 0, 36976 }, /* SUB.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_9078_0), 0, 36984 }, /* SUB.W (xxx).W,Dn */ -{ CPUFUNC(op_9079_0), 0, 36985 }, /* SUB.W (xxx).L,Dn */ -{ CPUFUNC(op_907a_0), 0, 36986 }, /* SUB.W (d16,PC),Dn */ -{ CPUFUNC(op_907b_0), 0, 36987 }, /* SUB.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_907c_0), 0, 36988 }, /* SUB.W #.W,Dn */ -{ CPUFUNC(op_9080_0), 0, 36992 }, /* SUB.L Dn,Dn */ -{ CPUFUNC(op_9088_0), 0, 37000 }, /* SUB.L An,Dn */ -{ CPUFUNC(op_9090_0), 0, 37008 }, /* SUB.L (An),Dn */ -{ CPUFUNC(op_9098_0), 0, 37016 }, /* SUB.L (An)+,Dn */ -{ CPUFUNC(op_90a0_0), 0, 37024 }, /* SUB.L -(An),Dn */ -{ CPUFUNC(op_90a8_0), 0, 37032 }, /* SUB.L (d16,An),Dn */ -{ CPUFUNC(op_90b0_0), 0, 37040 }, /* SUB.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_90b8_0), 0, 37048 }, /* SUB.L (xxx).W,Dn */ -{ CPUFUNC(op_90b9_0), 0, 37049 }, /* SUB.L (xxx).L,Dn */ -{ CPUFUNC(op_90ba_0), 0, 37050 }, /* SUB.L (d16,PC),Dn */ -{ CPUFUNC(op_90bb_0), 0, 37051 }, /* SUB.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_90bc_0), 0, 37052 }, /* SUB.L #.L,Dn */ -{ CPUFUNC_FF(op_90c0_0), 0, 37056 }, /* SUBA.W Dn,An */ -{ CPUFUNC_FF(op_90c8_0), 0, 37064 }, /* SUBA.W An,An */ -{ CPUFUNC_FF(op_90d0_0), 0, 37072 }, /* SUBA.W (An),An */ -{ CPUFUNC_FF(op_90d8_0), 0, 37080 }, /* SUBA.W (An)+,An */ -{ CPUFUNC_FF(op_90e0_0), 0, 37088 }, /* SUBA.W -(An),An */ -{ CPUFUNC_FF(op_90e8_0), 0, 37096 }, /* SUBA.W (d16,An),An */ -{ CPUFUNC_FF(op_90f0_0), 0, 37104 }, /* SUBA.W (d8,An,Xn),An */ -{ CPUFUNC_FF(op_90f8_0), 0, 37112 }, /* SUBA.W (xxx).W,An */ -{ CPUFUNC_FF(op_90f9_0), 0, 37113 }, /* SUBA.W (xxx).L,An */ -{ CPUFUNC_FF(op_90fa_0), 0, 37114 }, /* SUBA.W (d16,PC),An */ -{ CPUFUNC_FF(op_90fb_0), 0, 37115 }, /* SUBA.W (d8,PC,Xn),An */ -{ CPUFUNC_FF(op_90fc_0), 0, 37116 }, /* SUBA.W #.W,An */ -{ CPUFUNC(op_9100_0), 0, 37120 }, /* SUBX.B Dn,Dn */ -{ CPUFUNC(op_9108_0), 0, 37128 }, /* SUBX.B -(An),-(An) */ -{ CPUFUNC(op_9110_0), 0, 37136 }, /* SUB.B Dn,(An) */ -{ CPUFUNC(op_9118_0), 0, 37144 }, /* SUB.B Dn,(An)+ */ -{ CPUFUNC(op_9120_0), 0, 37152 }, /* SUB.B Dn,-(An) */ -{ CPUFUNC(op_9128_0), 0, 37160 }, /* SUB.B Dn,(d16,An) */ -{ CPUFUNC(op_9130_0), 0, 37168 }, /* SUB.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_9138_0), 0, 37176 }, /* SUB.B Dn,(xxx).W */ -{ CPUFUNC(op_9139_0), 0, 37177 }, /* SUB.B Dn,(xxx).L */ -{ CPUFUNC(op_9140_0), 0, 37184 }, /* SUBX.W Dn,Dn */ -{ CPUFUNC(op_9148_0), 0, 37192 }, /* SUBX.W -(An),-(An) */ -{ CPUFUNC(op_9150_0), 0, 37200 }, /* SUB.W Dn,(An) */ -{ CPUFUNC(op_9158_0), 0, 37208 }, /* SUB.W Dn,(An)+ */ -{ CPUFUNC(op_9160_0), 0, 37216 }, /* SUB.W Dn,-(An) */ -{ CPUFUNC(op_9168_0), 0, 37224 }, /* SUB.W Dn,(d16,An) */ -{ CPUFUNC(op_9170_0), 0, 37232 }, /* SUB.W Dn,(d8,An,Xn) */ -{ CPUFUNC(op_9178_0), 0, 37240 }, /* SUB.W Dn,(xxx).W */ -{ CPUFUNC(op_9179_0), 0, 37241 }, /* SUB.W Dn,(xxx).L */ -{ CPUFUNC(op_9180_0), 0, 37248 }, /* SUBX.L Dn,Dn */ -{ CPUFUNC(op_9188_0), 0, 37256 }, /* SUBX.L -(An),-(An) */ -{ CPUFUNC(op_9190_0), 0, 37264 }, /* SUB.L Dn,(An) */ -{ CPUFUNC(op_9198_0), 0, 37272 }, /* SUB.L Dn,(An)+ */ -{ CPUFUNC(op_91a0_0), 0, 37280 }, /* SUB.L Dn,-(An) */ -{ CPUFUNC(op_91a8_0), 0, 37288 }, /* SUB.L Dn,(d16,An) */ -{ CPUFUNC(op_91b0_0), 0, 37296 }, /* SUB.L Dn,(d8,An,Xn) */ -{ CPUFUNC(op_91b8_0), 0, 37304 }, /* SUB.L Dn,(xxx).W */ -{ CPUFUNC(op_91b9_0), 0, 37305 }, /* SUB.L Dn,(xxx).L */ -{ CPUFUNC_FF(op_91c0_0), 0, 37312 }, /* SUBA.L Dn,An */ -{ CPUFUNC_FF(op_91c8_0), 0, 37320 }, /* SUBA.L An,An */ -{ CPUFUNC_FF(op_91d0_0), 0, 37328 }, /* SUBA.L (An),An */ -{ CPUFUNC_FF(op_91d8_0), 0, 37336 }, /* SUBA.L (An)+,An */ -{ CPUFUNC_FF(op_91e0_0), 0, 37344 }, /* SUBA.L -(An),An */ -{ CPUFUNC_FF(op_91e8_0), 0, 37352 }, /* SUBA.L (d16,An),An */ -{ CPUFUNC_FF(op_91f0_0), 0, 37360 }, /* SUBA.L (d8,An,Xn),An */ -{ CPUFUNC_FF(op_91f8_0), 0, 37368 }, /* SUBA.L (xxx).W,An */ -{ CPUFUNC_FF(op_91f9_0), 0, 37369 }, /* SUBA.L (xxx).L,An */ -{ CPUFUNC_FF(op_91fa_0), 0, 37370 }, /* SUBA.L (d16,PC),An */ -{ CPUFUNC_FF(op_91fb_0), 0, 37371 }, /* SUBA.L (d8,PC,Xn),An */ -{ CPUFUNC_FF(op_91fc_0), 0, 37372 }, /* SUBA.L #.L,An */ -{ CPUFUNC(op_b000_0), 0, 45056 }, /* CMP.B Dn,Dn */ -{ CPUFUNC(op_b010_0), 0, 45072 }, /* CMP.B (An),Dn */ -{ CPUFUNC(op_b018_0), 0, 45080 }, /* CMP.B (An)+,Dn */ -{ CPUFUNC(op_b020_0), 0, 45088 }, /* CMP.B -(An),Dn */ -{ CPUFUNC(op_b028_0), 0, 45096 }, /* CMP.B (d16,An),Dn */ -{ CPUFUNC(op_b030_0), 0, 45104 }, /* CMP.B (d8,An,Xn),Dn */ -{ CPUFUNC(op_b038_0), 0, 45112 }, /* CMP.B (xxx).W,Dn */ -{ CPUFUNC(op_b039_0), 0, 45113 }, /* CMP.B (xxx).L,Dn */ -{ CPUFUNC(op_b03a_0), 0, 45114 }, /* CMP.B (d16,PC),Dn */ -{ CPUFUNC(op_b03b_0), 0, 45115 }, /* CMP.B (d8,PC,Xn),Dn */ -{ CPUFUNC(op_b03c_0), 0, 45116 }, /* CMP.B #.B,Dn */ -{ CPUFUNC(op_b040_0), 0, 45120 }, /* CMP.W Dn,Dn */ -{ CPUFUNC(op_b048_0), 0, 45128 }, /* CMP.W An,Dn */ -{ CPUFUNC(op_b050_0), 0, 45136 }, /* CMP.W (An),Dn */ -{ CPUFUNC(op_b058_0), 0, 45144 }, /* CMP.W (An)+,Dn */ -{ CPUFUNC(op_b060_0), 0, 45152 }, /* CMP.W -(An),Dn */ -{ CPUFUNC(op_b068_0), 0, 45160 }, /* CMP.W (d16,An),Dn */ -{ CPUFUNC(op_b070_0), 0, 45168 }, /* CMP.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_b078_0), 0, 45176 }, /* CMP.W (xxx).W,Dn */ -{ CPUFUNC(op_b079_0), 0, 45177 }, /* CMP.W (xxx).L,Dn */ -{ CPUFUNC(op_b07a_0), 0, 45178 }, /* CMP.W (d16,PC),Dn */ -{ CPUFUNC(op_b07b_0), 0, 45179 }, /* CMP.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_b07c_0), 0, 45180 }, /* CMP.W #.W,Dn */ -{ CPUFUNC(op_b080_0), 0, 45184 }, /* CMP.L Dn,Dn */ -{ CPUFUNC(op_b088_0), 0, 45192 }, /* CMP.L An,Dn */ -{ CPUFUNC(op_b090_0), 0, 45200 }, /* CMP.L (An),Dn */ -{ CPUFUNC(op_b098_0), 0, 45208 }, /* CMP.L (An)+,Dn */ -{ CPUFUNC(op_b0a0_0), 0, 45216 }, /* CMP.L -(An),Dn */ -{ CPUFUNC(op_b0a8_0), 0, 45224 }, /* CMP.L (d16,An),Dn */ -{ CPUFUNC(op_b0b0_0), 0, 45232 }, /* CMP.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_b0b8_0), 0, 45240 }, /* CMP.L (xxx).W,Dn */ -{ CPUFUNC(op_b0b9_0), 0, 45241 }, /* CMP.L (xxx).L,Dn */ -{ CPUFUNC(op_b0ba_0), 0, 45242 }, /* CMP.L (d16,PC),Dn */ -{ CPUFUNC(op_b0bb_0), 0, 45243 }, /* CMP.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_b0bc_0), 0, 45244 }, /* CMP.L #.L,Dn */ -{ CPUFUNC(op_b0c0_0), 0, 45248 }, /* CMPA.W Dn,An */ -{ CPUFUNC(op_b0c8_0), 0, 45256 }, /* CMPA.W An,An */ -{ CPUFUNC(op_b0d0_0), 0, 45264 }, /* CMPA.W (An),An */ -{ CPUFUNC(op_b0d8_0), 0, 45272 }, /* CMPA.W (An)+,An */ -{ CPUFUNC(op_b0e0_0), 0, 45280 }, /* CMPA.W -(An),An */ -{ CPUFUNC(op_b0e8_0), 0, 45288 }, /* CMPA.W (d16,An),An */ -{ CPUFUNC(op_b0f0_0), 0, 45296 }, /* CMPA.W (d8,An,Xn),An */ -{ CPUFUNC(op_b0f8_0), 0, 45304 }, /* CMPA.W (xxx).W,An */ -{ CPUFUNC(op_b0f9_0), 0, 45305 }, /* CMPA.W (xxx).L,An */ -{ CPUFUNC(op_b0fa_0), 0, 45306 }, /* CMPA.W (d16,PC),An */ -{ CPUFUNC(op_b0fb_0), 0, 45307 }, /* CMPA.W (d8,PC,Xn),An */ -{ CPUFUNC(op_b0fc_0), 0, 45308 }, /* CMPA.W #.W,An */ -{ CPUFUNC(op_b100_0), 0, 45312 }, /* EOR.B Dn,Dn */ -{ CPUFUNC(op_b108_0), 0, 45320 }, /* CMPM.B (An)+,(An)+ */ -{ CPUFUNC(op_b110_0), 0, 45328 }, /* EOR.B Dn,(An) */ -{ CPUFUNC(op_b118_0), 0, 45336 }, /* EOR.B Dn,(An)+ */ -{ CPUFUNC(op_b120_0), 0, 45344 }, /* EOR.B Dn,-(An) */ -{ CPUFUNC(op_b128_0), 0, 45352 }, /* EOR.B Dn,(d16,An) */ -{ CPUFUNC(op_b130_0), 0, 45360 }, /* EOR.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_b138_0), 0, 45368 }, /* EOR.B Dn,(xxx).W */ -{ CPUFUNC(op_b139_0), 0, 45369 }, /* EOR.B Dn,(xxx).L */ -{ CPUFUNC(op_b140_0), 0, 45376 }, /* EOR.W Dn,Dn */ -{ CPUFUNC(op_b148_0), 0, 45384 }, /* CMPM.W (An)+,(An)+ */ -{ CPUFUNC(op_b150_0), 0, 45392 }, /* EOR.W Dn,(An) */ -{ CPUFUNC(op_b158_0), 0, 45400 }, /* EOR.W Dn,(An)+ */ -{ CPUFUNC(op_b160_0), 0, 45408 }, /* EOR.W Dn,-(An) */ -{ CPUFUNC(op_b168_0), 0, 45416 }, /* EOR.W Dn,(d16,An) */ -{ CPUFUNC(op_b170_0), 0, 45424 }, /* EOR.W Dn,(d8,An,Xn) */ -{ CPUFUNC(op_b178_0), 0, 45432 }, /* EOR.W Dn,(xxx).W */ -{ CPUFUNC(op_b179_0), 0, 45433 }, /* EOR.W Dn,(xxx).L */ -{ CPUFUNC(op_b180_0), 0, 45440 }, /* EOR.L Dn,Dn */ -{ CPUFUNC(op_b188_0), 0, 45448 }, /* CMPM.L (An)+,(An)+ */ -{ CPUFUNC(op_b190_0), 0, 45456 }, /* EOR.L Dn,(An) */ -{ CPUFUNC(op_b198_0), 0, 45464 }, /* EOR.L Dn,(An)+ */ -{ CPUFUNC(op_b1a0_0), 0, 45472 }, /* EOR.L Dn,-(An) */ -{ CPUFUNC(op_b1a8_0), 0, 45480 }, /* EOR.L Dn,(d16,An) */ -{ CPUFUNC(op_b1b0_0), 0, 45488 }, /* EOR.L Dn,(d8,An,Xn) */ -{ CPUFUNC(op_b1b8_0), 0, 45496 }, /* EOR.L Dn,(xxx).W */ -{ CPUFUNC(op_b1b9_0), 0, 45497 }, /* EOR.L Dn,(xxx).L */ -{ CPUFUNC(op_b1c0_0), 0, 45504 }, /* CMPA.L Dn,An */ -{ CPUFUNC(op_b1c8_0), 0, 45512 }, /* CMPA.L An,An */ -{ CPUFUNC(op_b1d0_0), 0, 45520 }, /* CMPA.L (An),An */ -{ CPUFUNC(op_b1d8_0), 0, 45528 }, /* CMPA.L (An)+,An */ -{ CPUFUNC(op_b1e0_0), 0, 45536 }, /* CMPA.L -(An),An */ -{ CPUFUNC(op_b1e8_0), 0, 45544 }, /* CMPA.L (d16,An),An */ -{ CPUFUNC(op_b1f0_0), 0, 45552 }, /* CMPA.L (d8,An,Xn),An */ -{ CPUFUNC(op_b1f8_0), 0, 45560 }, /* CMPA.L (xxx).W,An */ -{ CPUFUNC(op_b1f9_0), 0, 45561 }, /* CMPA.L (xxx).L,An */ -{ CPUFUNC(op_b1fa_0), 0, 45562 }, /* CMPA.L (d16,PC),An */ -{ CPUFUNC(op_b1fb_0), 0, 45563 }, /* CMPA.L (d8,PC,Xn),An */ -{ CPUFUNC(op_b1fc_0), 0, 45564 }, /* CMPA.L #.L,An */ -{ CPUFUNC(op_c000_0), 0, 49152 }, /* AND.B Dn,Dn */ -{ CPUFUNC(op_c010_0), 0, 49168 }, /* AND.B (An),Dn */ -{ CPUFUNC(op_c018_0), 0, 49176 }, /* AND.B (An)+,Dn */ -{ CPUFUNC(op_c020_0), 0, 49184 }, /* AND.B -(An),Dn */ -{ CPUFUNC(op_c028_0), 0, 49192 }, /* AND.B (d16,An),Dn */ -{ CPUFUNC(op_c030_0), 0, 49200 }, /* AND.B (d8,An,Xn),Dn */ -{ CPUFUNC(op_c038_0), 0, 49208 }, /* AND.B (xxx).W,Dn */ -{ CPUFUNC(op_c039_0), 0, 49209 }, /* AND.B (xxx).L,Dn */ -{ CPUFUNC(op_c03a_0), 0, 49210 }, /* AND.B (d16,PC),Dn */ -{ CPUFUNC(op_c03b_0), 0, 49211 }, /* AND.B (d8,PC,Xn),Dn */ -{ CPUFUNC(op_c03c_0), 0, 49212 }, /* AND.B #.B,Dn */ -{ CPUFUNC(op_c040_0), 0, 49216 }, /* AND.W Dn,Dn */ -{ CPUFUNC(op_c050_0), 0, 49232 }, /* AND.W (An),Dn */ -{ CPUFUNC(op_c058_0), 0, 49240 }, /* AND.W (An)+,Dn */ -{ CPUFUNC(op_c060_0), 0, 49248 }, /* AND.W -(An),Dn */ -{ CPUFUNC(op_c068_0), 0, 49256 }, /* AND.W (d16,An),Dn */ -{ CPUFUNC(op_c070_0), 0, 49264 }, /* AND.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_c078_0), 0, 49272 }, /* AND.W (xxx).W,Dn */ -{ CPUFUNC(op_c079_0), 0, 49273 }, /* AND.W (xxx).L,Dn */ -{ CPUFUNC(op_c07a_0), 0, 49274 }, /* AND.W (d16,PC),Dn */ -{ CPUFUNC(op_c07b_0), 0, 49275 }, /* AND.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_c07c_0), 0, 49276 }, /* AND.W #.W,Dn */ -{ CPUFUNC(op_c080_0), 0, 49280 }, /* AND.L Dn,Dn */ -{ CPUFUNC(op_c090_0), 0, 49296 }, /* AND.L (An),Dn */ -{ CPUFUNC(op_c098_0), 0, 49304 }, /* AND.L (An)+,Dn */ -{ CPUFUNC(op_c0a0_0), 0, 49312 }, /* AND.L -(An),Dn */ -{ CPUFUNC(op_c0a8_0), 0, 49320 }, /* AND.L (d16,An),Dn */ -{ CPUFUNC(op_c0b0_0), 0, 49328 }, /* AND.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_c0b8_0), 0, 49336 }, /* AND.L (xxx).W,Dn */ -{ CPUFUNC(op_c0b9_0), 0, 49337 }, /* AND.L (xxx).L,Dn */ -{ CPUFUNC(op_c0ba_0), 0, 49338 }, /* AND.L (d16,PC),Dn */ -{ CPUFUNC(op_c0bb_0), 0, 49339 }, /* AND.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_c0bc_0), 0, 49340 }, /* AND.L #.L,Dn */ -{ CPUFUNC(op_c0c0_0), 0, 49344 }, /* MULU.W Dn,Dn */ -{ CPUFUNC(op_c0d0_0), 0, 49360 }, /* MULU.W (An),Dn */ -{ CPUFUNC(op_c0d8_0), 0, 49368 }, /* MULU.W (An)+,Dn */ -{ CPUFUNC(op_c0e0_0), 0, 49376 }, /* MULU.W -(An),Dn */ -{ CPUFUNC(op_c0e8_0), 0, 49384 }, /* MULU.W (d16,An),Dn */ -{ CPUFUNC(op_c0f0_0), 0, 49392 }, /* MULU.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_c0f8_0), 0, 49400 }, /* MULU.W (xxx).W,Dn */ -{ CPUFUNC(op_c0f9_0), 0, 49401 }, /* MULU.W (xxx).L,Dn */ -{ CPUFUNC(op_c0fa_0), 0, 49402 }, /* MULU.W (d16,PC),Dn */ -{ CPUFUNC(op_c0fb_0), 0, 49403 }, /* MULU.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_c0fc_0), 0, 49404 }, /* MULU.W #.W,Dn */ -{ CPUFUNC(op_c100_0), 0, 49408 }, /* ABCD.B Dn,Dn */ -{ CPUFUNC(op_c108_0), 0, 49416 }, /* ABCD.B -(An),-(An) */ -{ CPUFUNC(op_c110_0), 0, 49424 }, /* AND.B Dn,(An) */ -{ CPUFUNC(op_c118_0), 0, 49432 }, /* AND.B Dn,(An)+ */ -{ CPUFUNC(op_c120_0), 0, 49440 }, /* AND.B Dn,-(An) */ -{ CPUFUNC(op_c128_0), 0, 49448 }, /* AND.B Dn,(d16,An) */ -{ CPUFUNC(op_c130_0), 0, 49456 }, /* AND.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_c138_0), 0, 49464 }, /* AND.B Dn,(xxx).W */ -{ CPUFUNC(op_c139_0), 0, 49465 }, /* AND.B Dn,(xxx).L */ -{ CPUFUNC_FF(op_c140_0), 0, 49472 }, /* EXG.L Dn,Dn */ -{ CPUFUNC_FF(op_c148_0), 0, 49480 }, /* EXG.L An,An */ -{ CPUFUNC(op_c150_0), 0, 49488 }, /* AND.W Dn,(An) */ -{ CPUFUNC(op_c158_0), 0, 49496 }, /* AND.W Dn,(An)+ */ -{ CPUFUNC(op_c160_0), 0, 49504 }, /* AND.W Dn,-(An) */ -{ CPUFUNC(op_c168_0), 0, 49512 }, /* AND.W Dn,(d16,An) */ -{ CPUFUNC(op_c170_0), 0, 49520 }, /* AND.W Dn,(d8,An,Xn) */ -{ CPUFUNC(op_c178_0), 0, 49528 }, /* AND.W Dn,(xxx).W */ -{ CPUFUNC(op_c179_0), 0, 49529 }, /* AND.W Dn,(xxx).L */ -{ CPUFUNC_FF(op_c188_0), 0, 49544 }, /* EXG.L Dn,An */ -{ CPUFUNC(op_c190_0), 0, 49552 }, /* AND.L Dn,(An) */ -{ CPUFUNC(op_c198_0), 0, 49560 }, /* AND.L Dn,(An)+ */ -{ CPUFUNC(op_c1a0_0), 0, 49568 }, /* AND.L Dn,-(An) */ -{ CPUFUNC(op_c1a8_0), 0, 49576 }, /* AND.L Dn,(d16,An) */ -{ CPUFUNC(op_c1b0_0), 0, 49584 }, /* AND.L Dn,(d8,An,Xn) */ -{ CPUFUNC(op_c1b8_0), 0, 49592 }, /* AND.L Dn,(xxx).W */ -{ CPUFUNC(op_c1b9_0), 0, 49593 }, /* AND.L Dn,(xxx).L */ -{ CPUFUNC(op_c1c0_0), 0, 49600 }, /* MULS.W Dn,Dn */ -{ CPUFUNC(op_c1d0_0), 0, 49616 }, /* MULS.W (An),Dn */ -{ CPUFUNC(op_c1d8_0), 0, 49624 }, /* MULS.W (An)+,Dn */ -{ CPUFUNC(op_c1e0_0), 0, 49632 }, /* MULS.W -(An),Dn */ -{ CPUFUNC(op_c1e8_0), 0, 49640 }, /* MULS.W (d16,An),Dn */ -{ CPUFUNC(op_c1f0_0), 0, 49648 }, /* MULS.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_c1f8_0), 0, 49656 }, /* MULS.W (xxx).W,Dn */ -{ CPUFUNC(op_c1f9_0), 0, 49657 }, /* MULS.W (xxx).L,Dn */ -{ CPUFUNC(op_c1fa_0), 0, 49658 }, /* MULS.W (d16,PC),Dn */ -{ CPUFUNC(op_c1fb_0), 0, 49659 }, /* MULS.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_c1fc_0), 0, 49660 }, /* MULS.W #.W,Dn */ -{ CPUFUNC(op_d000_0), 0, 53248 }, /* ADD.B Dn,Dn */ -{ CPUFUNC(op_d010_0), 0, 53264 }, /* ADD.B (An),Dn */ -{ CPUFUNC(op_d018_0), 0, 53272 }, /* ADD.B (An)+,Dn */ -{ CPUFUNC(op_d020_0), 0, 53280 }, /* ADD.B -(An),Dn */ -{ CPUFUNC(op_d028_0), 0, 53288 }, /* ADD.B (d16,An),Dn */ -{ CPUFUNC(op_d030_0), 0, 53296 }, /* ADD.B (d8,An,Xn),Dn */ -{ CPUFUNC(op_d038_0), 0, 53304 }, /* ADD.B (xxx).W,Dn */ -{ CPUFUNC(op_d039_0), 0, 53305 }, /* ADD.B (xxx).L,Dn */ -{ CPUFUNC(op_d03a_0), 0, 53306 }, /* ADD.B (d16,PC),Dn */ -{ CPUFUNC(op_d03b_0), 0, 53307 }, /* ADD.B (d8,PC,Xn),Dn */ -{ CPUFUNC(op_d03c_0), 0, 53308 }, /* ADD.B #.B,Dn */ -{ CPUFUNC(op_d040_0), 0, 53312 }, /* ADD.W Dn,Dn */ -{ CPUFUNC(op_d048_0), 0, 53320 }, /* ADD.W An,Dn */ -{ CPUFUNC(op_d050_0), 0, 53328 }, /* ADD.W (An),Dn */ -{ CPUFUNC(op_d058_0), 0, 53336 }, /* ADD.W (An)+,Dn */ -{ CPUFUNC(op_d060_0), 0, 53344 }, /* ADD.W -(An),Dn */ -{ CPUFUNC(op_d068_0), 0, 53352 }, /* ADD.W (d16,An),Dn */ -{ CPUFUNC(op_d070_0), 0, 53360 }, /* ADD.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_d078_0), 0, 53368 }, /* ADD.W (xxx).W,Dn */ -{ CPUFUNC(op_d079_0), 0, 53369 }, /* ADD.W (xxx).L,Dn */ -{ CPUFUNC(op_d07a_0), 0, 53370 }, /* ADD.W (d16,PC),Dn */ -{ CPUFUNC(op_d07b_0), 0, 53371 }, /* ADD.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_d07c_0), 0, 53372 }, /* ADD.W #.W,Dn */ -{ CPUFUNC(op_d080_0), 0, 53376 }, /* ADD.L Dn,Dn */ -{ CPUFUNC(op_d088_0), 0, 53384 }, /* ADD.L An,Dn */ -{ CPUFUNC(op_d090_0), 0, 53392 }, /* ADD.L (An),Dn */ -{ CPUFUNC(op_d098_0), 0, 53400 }, /* ADD.L (An)+,Dn */ -{ CPUFUNC(op_d0a0_0), 0, 53408 }, /* ADD.L -(An),Dn */ -{ CPUFUNC(op_d0a8_0), 0, 53416 }, /* ADD.L (d16,An),Dn */ -{ CPUFUNC(op_d0b0_0), 0, 53424 }, /* ADD.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_d0b8_0), 0, 53432 }, /* ADD.L (xxx).W,Dn */ -{ CPUFUNC(op_d0b9_0), 0, 53433 }, /* ADD.L (xxx).L,Dn */ -{ CPUFUNC(op_d0ba_0), 0, 53434 }, /* ADD.L (d16,PC),Dn */ -{ CPUFUNC(op_d0bb_0), 0, 53435 }, /* ADD.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_d0bc_0), 0, 53436 }, /* ADD.L #.L,Dn */ -{ CPUFUNC_FF(op_d0c0_0), 0, 53440 }, /* ADDA.W Dn,An */ -{ CPUFUNC_FF(op_d0c8_0), 0, 53448 }, /* ADDA.W An,An */ -{ CPUFUNC_FF(op_d0d0_0), 0, 53456 }, /* ADDA.W (An),An */ -{ CPUFUNC_FF(op_d0d8_0), 0, 53464 }, /* ADDA.W (An)+,An */ -{ CPUFUNC_FF(op_d0e0_0), 0, 53472 }, /* ADDA.W -(An),An */ -{ CPUFUNC_FF(op_d0e8_0), 0, 53480 }, /* ADDA.W (d16,An),An */ -{ CPUFUNC_FF(op_d0f0_0), 0, 53488 }, /* ADDA.W (d8,An,Xn),An */ -{ CPUFUNC_FF(op_d0f8_0), 0, 53496 }, /* ADDA.W (xxx).W,An */ -{ CPUFUNC_FF(op_d0f9_0), 0, 53497 }, /* ADDA.W (xxx).L,An */ -{ CPUFUNC_FF(op_d0fa_0), 0, 53498 }, /* ADDA.W (d16,PC),An */ -{ CPUFUNC_FF(op_d0fb_0), 0, 53499 }, /* ADDA.W (d8,PC,Xn),An */ -{ CPUFUNC_FF(op_d0fc_0), 0, 53500 }, /* ADDA.W #.W,An */ -{ CPUFUNC(op_d100_0), 0, 53504 }, /* ADDX.B Dn,Dn */ -{ CPUFUNC(op_d108_0), 0, 53512 }, /* ADDX.B -(An),-(An) */ -{ CPUFUNC(op_d110_0), 0, 53520 }, /* ADD.B Dn,(An) */ -{ CPUFUNC(op_d118_0), 0, 53528 }, /* ADD.B Dn,(An)+ */ -{ CPUFUNC(op_d120_0), 0, 53536 }, /* ADD.B Dn,-(An) */ -{ CPUFUNC(op_d128_0), 0, 53544 }, /* ADD.B Dn,(d16,An) */ -{ CPUFUNC(op_d130_0), 0, 53552 }, /* ADD.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_d138_0), 0, 53560 }, /* ADD.B Dn,(xxx).W */ -{ CPUFUNC(op_d139_0), 0, 53561 }, /* ADD.B Dn,(xxx).L */ -{ CPUFUNC(op_d140_0), 0, 53568 }, /* ADDX.W Dn,Dn */ -{ CPUFUNC(op_d148_0), 0, 53576 }, /* ADDX.W -(An),-(An) */ -{ CPUFUNC(op_d150_0), 0, 53584 }, /* ADD.W Dn,(An) */ -{ CPUFUNC(op_d158_0), 0, 53592 }, /* ADD.W Dn,(An)+ */ -{ CPUFUNC(op_d160_0), 0, 53600 }, /* ADD.W Dn,-(An) */ -{ CPUFUNC(op_d168_0), 0, 53608 }, /* ADD.W Dn,(d16,An) */ -{ CPUFUNC(op_d170_0), 0, 53616 }, /* ADD.W Dn,(d8,An,Xn) */ -{ CPUFUNC(op_d178_0), 0, 53624 }, /* ADD.W Dn,(xxx).W */ -{ CPUFUNC(op_d179_0), 0, 53625 }, /* ADD.W Dn,(xxx).L */ -{ CPUFUNC(op_d180_0), 0, 53632 }, /* ADDX.L Dn,Dn */ -{ CPUFUNC(op_d188_0), 0, 53640 }, /* ADDX.L -(An),-(An) */ -{ CPUFUNC(op_d190_0), 0, 53648 }, /* ADD.L Dn,(An) */ -{ CPUFUNC(op_d198_0), 0, 53656 }, /* ADD.L Dn,(An)+ */ -{ CPUFUNC(op_d1a0_0), 0, 53664 }, /* ADD.L Dn,-(An) */ -{ CPUFUNC(op_d1a8_0), 0, 53672 }, /* ADD.L Dn,(d16,An) */ -{ CPUFUNC(op_d1b0_0), 0, 53680 }, /* ADD.L Dn,(d8,An,Xn) */ -{ CPUFUNC(op_d1b8_0), 0, 53688 }, /* ADD.L Dn,(xxx).W */ -{ CPUFUNC(op_d1b9_0), 0, 53689 }, /* ADD.L Dn,(xxx).L */ -{ CPUFUNC_FF(op_d1c0_0), 0, 53696 }, /* ADDA.L Dn,An */ -{ CPUFUNC_FF(op_d1c8_0), 0, 53704 }, /* ADDA.L An,An */ -{ CPUFUNC_FF(op_d1d0_0), 0, 53712 }, /* ADDA.L (An),An */ -{ CPUFUNC_FF(op_d1d8_0), 0, 53720 }, /* ADDA.L (An)+,An */ -{ CPUFUNC_FF(op_d1e0_0), 0, 53728 }, /* ADDA.L -(An),An */ -{ CPUFUNC_FF(op_d1e8_0), 0, 53736 }, /* ADDA.L (d16,An),An */ -{ CPUFUNC_FF(op_d1f0_0), 0, 53744 }, /* ADDA.L (d8,An,Xn),An */ -{ CPUFUNC_FF(op_d1f8_0), 0, 53752 }, /* ADDA.L (xxx).W,An */ -{ CPUFUNC_FF(op_d1f9_0), 0, 53753 }, /* ADDA.L (xxx).L,An */ -{ CPUFUNC_FF(op_d1fa_0), 0, 53754 }, /* ADDA.L (d16,PC),An */ -{ CPUFUNC_FF(op_d1fb_0), 0, 53755 }, /* ADDA.L (d8,PC,Xn),An */ -{ CPUFUNC_FF(op_d1fc_0), 0, 53756 }, /* ADDA.L #.L,An */ -{ CPUFUNC(op_e000_0), 0, 57344 }, /* ASR.B #,Dn */ -{ CPUFUNC(op_e008_0), 0, 57352 }, /* LSR.B #,Dn */ -{ CPUFUNC(op_e010_0), 0, 57360 }, /* ROXR.B #,Dn */ -{ CPUFUNC(op_e018_0), 0, 57368 }, /* ROR.B #,Dn */ -{ CPUFUNC(op_e020_0), 0, 57376 }, /* ASR.B Dn,Dn */ -{ CPUFUNC(op_e028_0), 0, 57384 }, /* LSR.B Dn,Dn */ -{ CPUFUNC(op_e030_0), 0, 57392 }, /* ROXR.B Dn,Dn */ -{ CPUFUNC(op_e038_0), 0, 57400 }, /* ROR.B Dn,Dn */ -{ CPUFUNC(op_e040_0), 0, 57408 }, /* ASR.W #,Dn */ -{ CPUFUNC(op_e048_0), 0, 57416 }, /* LSR.W #,Dn */ -{ CPUFUNC(op_e050_0), 0, 57424 }, /* ROXR.W #,Dn */ -{ CPUFUNC(op_e058_0), 0, 57432 }, /* ROR.W #,Dn */ -{ CPUFUNC(op_e060_0), 0, 57440 }, /* ASR.W Dn,Dn */ -{ CPUFUNC(op_e068_0), 0, 57448 }, /* LSR.W Dn,Dn */ -{ CPUFUNC(op_e070_0), 0, 57456 }, /* ROXR.W Dn,Dn */ -{ CPUFUNC(op_e078_0), 0, 57464 }, /* ROR.W Dn,Dn */ -{ CPUFUNC(op_e080_0), 0, 57472 }, /* ASR.L #,Dn */ -{ CPUFUNC(op_e088_0), 0, 57480 }, /* LSR.L #,Dn */ -{ CPUFUNC(op_e090_0), 0, 57488 }, /* ROXR.L #,Dn */ -{ CPUFUNC(op_e098_0), 0, 57496 }, /* ROR.L #,Dn */ -{ CPUFUNC(op_e0a0_0), 0, 57504 }, /* ASR.L Dn,Dn */ -{ CPUFUNC(op_e0a8_0), 0, 57512 }, /* LSR.L Dn,Dn */ -{ CPUFUNC(op_e0b0_0), 0, 57520 }, /* ROXR.L Dn,Dn */ -{ CPUFUNC(op_e0b8_0), 0, 57528 }, /* ROR.L Dn,Dn */ -{ CPUFUNC(op_e0d0_0), 0, 57552 }, /* ASRW.W (An) */ -{ CPUFUNC(op_e0d8_0), 0, 57560 }, /* ASRW.W (An)+ */ -{ CPUFUNC(op_e0e0_0), 0, 57568 }, /* ASRW.W -(An) */ -{ CPUFUNC(op_e0e8_0), 0, 57576 }, /* ASRW.W (d16,An) */ -{ CPUFUNC(op_e0f0_0), 0, 57584 }, /* ASRW.W (d8,An,Xn) */ -{ CPUFUNC(op_e0f8_0), 0, 57592 }, /* ASRW.W (xxx).W */ -{ CPUFUNC(op_e0f9_0), 0, 57593 }, /* ASRW.W (xxx).L */ -{ CPUFUNC(op_e100_0), 0, 57600 }, /* ASL.B #,Dn */ -{ CPUFUNC(op_e108_0), 0, 57608 }, /* LSL.B #,Dn */ -{ CPUFUNC(op_e110_0), 0, 57616 }, /* ROXL.B #,Dn */ -{ CPUFUNC(op_e118_0), 0, 57624 }, /* ROL.B #,Dn */ -{ CPUFUNC(op_e120_0), 0, 57632 }, /* ASL.B Dn,Dn */ -{ CPUFUNC(op_e128_0), 0, 57640 }, /* LSL.B Dn,Dn */ -{ CPUFUNC(op_e130_0), 0, 57648 }, /* ROXL.B Dn,Dn */ -{ CPUFUNC(op_e138_0), 0, 57656 }, /* ROL.B Dn,Dn */ -{ CPUFUNC(op_e140_0), 0, 57664 }, /* ASL.W #,Dn */ -{ CPUFUNC(op_e148_0), 0, 57672 }, /* LSL.W #,Dn */ -{ CPUFUNC(op_e150_0), 0, 57680 }, /* ROXL.W #,Dn */ -{ CPUFUNC(op_e158_0), 0, 57688 }, /* ROL.W #,Dn */ -{ CPUFUNC(op_e160_0), 0, 57696 }, /* ASL.W Dn,Dn */ -{ CPUFUNC(op_e168_0), 0, 57704 }, /* LSL.W Dn,Dn */ -{ CPUFUNC(op_e170_0), 0, 57712 }, /* ROXL.W Dn,Dn */ -{ CPUFUNC(op_e178_0), 0, 57720 }, /* ROL.W Dn,Dn */ -{ CPUFUNC(op_e180_0), 0, 57728 }, /* ASL.L #,Dn */ -{ CPUFUNC(op_e188_0), 0, 57736 }, /* LSL.L #,Dn */ -{ CPUFUNC(op_e190_0), 0, 57744 }, /* ROXL.L #,Dn */ -{ CPUFUNC(op_e198_0), 0, 57752 }, /* ROL.L #,Dn */ -{ CPUFUNC(op_e1a0_0), 0, 57760 }, /* ASL.L Dn,Dn */ -{ CPUFUNC(op_e1a8_0), 0, 57768 }, /* LSL.L Dn,Dn */ -{ CPUFUNC(op_e1b0_0), 0, 57776 }, /* ROXL.L Dn,Dn */ -{ CPUFUNC(op_e1b8_0), 0, 57784 }, /* ROL.L Dn,Dn */ -{ CPUFUNC(op_e1d0_0), 0, 57808 }, /* ASLW.W (An) */ -{ CPUFUNC(op_e1d8_0), 0, 57816 }, /* ASLW.W (An)+ */ -{ CPUFUNC(op_e1e0_0), 0, 57824 }, /* ASLW.W -(An) */ -{ CPUFUNC(op_e1e8_0), 0, 57832 }, /* ASLW.W (d16,An) */ -{ CPUFUNC(op_e1f0_0), 0, 57840 }, /* ASLW.W (d8,An,Xn) */ -{ CPUFUNC(op_e1f8_0), 0, 57848 }, /* ASLW.W (xxx).W */ -{ CPUFUNC(op_e1f9_0), 0, 57849 }, /* ASLW.W (xxx).L */ -{ CPUFUNC(op_e2d0_0), 0, 58064 }, /* LSRW.W (An) */ -{ CPUFUNC(op_e2d8_0), 0, 58072 }, /* LSRW.W (An)+ */ -{ CPUFUNC(op_e2e0_0), 0, 58080 }, /* LSRW.W -(An) */ -{ CPUFUNC(op_e2e8_0), 0, 58088 }, /* LSRW.W (d16,An) */ -{ CPUFUNC(op_e2f0_0), 0, 58096 }, /* LSRW.W (d8,An,Xn) */ -{ CPUFUNC(op_e2f8_0), 0, 58104 }, /* LSRW.W (xxx).W */ -{ CPUFUNC(op_e2f9_0), 0, 58105 }, /* LSRW.W (xxx).L */ -{ CPUFUNC(op_e3d0_0), 0, 58320 }, /* LSLW.W (An) */ -{ CPUFUNC(op_e3d8_0), 0, 58328 }, /* LSLW.W (An)+ */ -{ CPUFUNC(op_e3e0_0), 0, 58336 }, /* LSLW.W -(An) */ -{ CPUFUNC(op_e3e8_0), 0, 58344 }, /* LSLW.W (d16,An) */ -{ CPUFUNC(op_e3f0_0), 0, 58352 }, /* LSLW.W (d8,An,Xn) */ -{ CPUFUNC(op_e3f8_0), 0, 58360 }, /* LSLW.W (xxx).W */ -{ CPUFUNC(op_e3f9_0), 0, 58361 }, /* LSLW.W (xxx).L */ -{ CPUFUNC(op_e4d0_0), 0, 58576 }, /* ROXRW.W (An) */ -{ CPUFUNC(op_e4d8_0), 0, 58584 }, /* ROXRW.W (An)+ */ -{ CPUFUNC(op_e4e0_0), 0, 58592 }, /* ROXRW.W -(An) */ -{ CPUFUNC(op_e4e8_0), 0, 58600 }, /* ROXRW.W (d16,An) */ -{ CPUFUNC(op_e4f0_0), 0, 58608 }, /* ROXRW.W (d8,An,Xn) */ -{ CPUFUNC(op_e4f8_0), 0, 58616 }, /* ROXRW.W (xxx).W */ -{ CPUFUNC(op_e4f9_0), 0, 58617 }, /* ROXRW.W (xxx).L */ -{ CPUFUNC(op_e5d0_0), 0, 58832 }, /* ROXLW.W (An) */ -{ CPUFUNC(op_e5d8_0), 0, 58840 }, /* ROXLW.W (An)+ */ -{ CPUFUNC(op_e5e0_0), 0, 58848 }, /* ROXLW.W -(An) */ -{ CPUFUNC(op_e5e8_0), 0, 58856 }, /* ROXLW.W (d16,An) */ -{ CPUFUNC(op_e5f0_0), 0, 58864 }, /* ROXLW.W (d8,An,Xn) */ -{ CPUFUNC(op_e5f8_0), 0, 58872 }, /* ROXLW.W (xxx).W */ -{ CPUFUNC(op_e5f9_0), 0, 58873 }, /* ROXLW.W (xxx).L */ -{ CPUFUNC(op_e6d0_0), 0, 59088 }, /* RORW.W (An) */ -{ CPUFUNC(op_e6d8_0), 0, 59096 }, /* RORW.W (An)+ */ -{ CPUFUNC(op_e6e0_0), 0, 59104 }, /* RORW.W -(An) */ -{ CPUFUNC(op_e6e8_0), 0, 59112 }, /* RORW.W (d16,An) */ -{ CPUFUNC(op_e6f0_0), 0, 59120 }, /* RORW.W (d8,An,Xn) */ -{ CPUFUNC(op_e6f8_0), 0, 59128 }, /* RORW.W (xxx).W */ -{ CPUFUNC(op_e6f9_0), 0, 59129 }, /* RORW.W (xxx).L */ -{ CPUFUNC(op_e7d0_0), 0, 59344 }, /* ROLW.W (An) */ -{ CPUFUNC(op_e7d8_0), 0, 59352 }, /* ROLW.W (An)+ */ -{ CPUFUNC(op_e7e0_0), 0, 59360 }, /* ROLW.W -(An) */ -{ CPUFUNC(op_e7e8_0), 0, 59368 }, /* ROLW.W (d16,An) */ -{ CPUFUNC(op_e7f0_0), 0, 59376 }, /* ROLW.W (d8,An,Xn) */ -{ CPUFUNC(op_e7f8_0), 0, 59384 }, /* ROLW.W (xxx).W */ -{ CPUFUNC(op_e7f9_0), 0, 59385 }, /* ROLW.W (xxx).L */ -{ CPUFUNC(op_e8c0_0), 0, 59584 }, /* BFTST.L #.W,Dn */ -{ CPUFUNC(op_e8d0_0), 0, 59600 }, /* BFTST.L #.W,(An) */ -{ CPUFUNC(op_e8e8_0), 0, 59624 }, /* BFTST.L #.W,(d16,An) */ -{ CPUFUNC(op_e8f0_0), 0, 59632 }, /* BFTST.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_e8f8_0), 0, 59640 }, /* BFTST.L #.W,(xxx).W */ -{ CPUFUNC(op_e8f9_0), 0, 59641 }, /* BFTST.L #.W,(xxx).L */ -{ CPUFUNC(op_e8fa_0), 0, 59642 }, /* BFTST.L #.W,(d16,PC) */ -{ CPUFUNC(op_e8fb_0), 0, 59643 }, /* BFTST.L #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_e9c0_0), 0, 59840 }, /* BFEXTU.L #.W,Dn */ -{ CPUFUNC(op_e9d0_0), 0, 59856 }, /* BFEXTU.L #.W,(An) */ -{ CPUFUNC(op_e9e8_0), 0, 59880 }, /* BFEXTU.L #.W,(d16,An) */ -{ CPUFUNC(op_e9f0_0), 0, 59888 }, /* BFEXTU.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_e9f8_0), 0, 59896 }, /* BFEXTU.L #.W,(xxx).W */ -{ CPUFUNC(op_e9f9_0), 0, 59897 }, /* BFEXTU.L #.W,(xxx).L */ -{ CPUFUNC(op_e9fa_0), 0, 59898 }, /* BFEXTU.L #.W,(d16,PC) */ -{ CPUFUNC(op_e9fb_0), 0, 59899 }, /* BFEXTU.L #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_eac0_0), 0, 60096 }, /* BFCHG.L #.W,Dn */ -{ CPUFUNC(op_ead0_0), 0, 60112 }, /* BFCHG.L #.W,(An) */ -{ CPUFUNC(op_eae8_0), 0, 60136 }, /* BFCHG.L #.W,(d16,An) */ -{ CPUFUNC(op_eaf0_0), 0, 60144 }, /* BFCHG.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_eaf8_0), 0, 60152 }, /* BFCHG.L #.W,(xxx).W */ -{ CPUFUNC(op_eaf9_0), 0, 60153 }, /* BFCHG.L #.W,(xxx).L */ -{ CPUFUNC(op_ebc0_0), 0, 60352 }, /* BFEXTS.L #.W,Dn */ -{ CPUFUNC(op_ebd0_0), 0, 60368 }, /* BFEXTS.L #.W,(An) */ -{ CPUFUNC(op_ebe8_0), 0, 60392 }, /* BFEXTS.L #.W,(d16,An) */ -{ CPUFUNC(op_ebf0_0), 0, 60400 }, /* BFEXTS.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_ebf8_0), 0, 60408 }, /* BFEXTS.L #.W,(xxx).W */ -{ CPUFUNC(op_ebf9_0), 0, 60409 }, /* BFEXTS.L #.W,(xxx).L */ -{ CPUFUNC(op_ebfa_0), 0, 60410 }, /* BFEXTS.L #.W,(d16,PC) */ -{ CPUFUNC(op_ebfb_0), 0, 60411 }, /* BFEXTS.L #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_ecc0_0), 0, 60608 }, /* BFCLR.L #.W,Dn */ -{ CPUFUNC(op_ecd0_0), 0, 60624 }, /* BFCLR.L #.W,(An) */ -{ CPUFUNC(op_ece8_0), 0, 60648 }, /* BFCLR.L #.W,(d16,An) */ -{ CPUFUNC(op_ecf0_0), 0, 60656 }, /* BFCLR.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_ecf8_0), 0, 60664 }, /* BFCLR.L #.W,(xxx).W */ -{ CPUFUNC(op_ecf9_0), 0, 60665 }, /* BFCLR.L #.W,(xxx).L */ -{ CPUFUNC(op_edc0_0), 0, 60864 }, /* BFFFO.L #.W,Dn */ -{ CPUFUNC(op_edd0_0), 0, 60880 }, /* BFFFO.L #.W,(An) */ -{ CPUFUNC(op_ede8_0), 0, 60904 }, /* BFFFO.L #.W,(d16,An) */ -{ CPUFUNC(op_edf0_0), 0, 60912 }, /* BFFFO.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_edf8_0), 0, 60920 }, /* BFFFO.L #.W,(xxx).W */ -{ CPUFUNC(op_edf9_0), 0, 60921 }, /* BFFFO.L #.W,(xxx).L */ -{ CPUFUNC(op_edfa_0), 0, 60922 }, /* BFFFO.L #.W,(d16,PC) */ -{ CPUFUNC(op_edfb_0), 0, 60923 }, /* BFFFO.L #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_eec0_0), 0, 61120 }, /* BFSET.L #.W,Dn */ -{ CPUFUNC(op_eed0_0), 0, 61136 }, /* BFSET.L #.W,(An) */ -{ CPUFUNC(op_eee8_0), 0, 61160 }, /* BFSET.L #.W,(d16,An) */ -{ CPUFUNC(op_eef0_0), 0, 61168 }, /* BFSET.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_eef8_0), 0, 61176 }, /* BFSET.L #.W,(xxx).W */ -{ CPUFUNC(op_eef9_0), 0, 61177 }, /* BFSET.L #.W,(xxx).L */ -{ CPUFUNC(op_efc0_0), 0, 61376 }, /* BFINS.L #.W,Dn */ -{ CPUFUNC(op_efd0_0), 0, 61392 }, /* BFINS.L #.W,(An) */ -{ CPUFUNC(op_efe8_0), 0, 61416 }, /* BFINS.L #.W,(d16,An) */ -{ CPUFUNC(op_eff0_0), 0, 61424 }, /* BFINS.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_eff8_0), 0, 61432 }, /* BFINS.L #.W,(xxx).W */ -{ CPUFUNC(op_eff9_0), 0, 61433 }, /* BFINS.L #.W,(xxx).L */ -{ CPUFUNC_FF(op_f200_0), 0, 61952 }, /* FPP.L #.W,Dn */ -{ CPUFUNC_FF(op_f208_0), 0, 61960 }, /* FPP.L #.W,An */ -{ CPUFUNC_FF(op_f210_0), 0, 61968 }, /* FPP.L #.W,(An) */ -{ CPUFUNC_FF(op_f218_0), 0, 61976 }, /* FPP.L #.W,(An)+ */ -{ CPUFUNC_FF(op_f220_0), 0, 61984 }, /* FPP.L #.W,-(An) */ -{ CPUFUNC_FF(op_f228_0), 0, 61992 }, /* FPP.L #.W,(d16,An) */ -{ CPUFUNC_FF(op_f230_0), 0, 62000 }, /* FPP.L #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_f238_0), 0, 62008 }, /* FPP.L #.W,(xxx).W */ -{ CPUFUNC_FF(op_f239_0), 0, 62009 }, /* FPP.L #.W,(xxx).L */ -{ CPUFUNC_FF(op_f23a_0), 0, 62010 }, /* FPP.L #.W,(d16,PC) */ -{ CPUFUNC_FF(op_f23b_0), 0, 62011 }, /* FPP.L #.W,(d8,PC,Xn) */ -{ CPUFUNC_FF(op_f23c_0), 0, 62012 }, /* FPP.L #.W,#.L */ -{ CPUFUNC_FF(op_f240_0), 0, 62016 }, /* FScc.L #.W,Dn */ -{ CPUFUNC_FF(op_f248_0), 0, 62024 }, /* FDBcc.L #.W,Dn */ -{ CPUFUNC_FF(op_f250_0), 0, 62032 }, /* FScc.L #.W,(An) */ -{ CPUFUNC_FF(op_f258_0), 0, 62040 }, /* FScc.L #.W,(An)+ */ -{ CPUFUNC_FF(op_f260_0), 0, 62048 }, /* FScc.L #.W,-(An) */ -{ CPUFUNC_FF(op_f268_0), 0, 62056 }, /* FScc.L #.W,(d16,An) */ -{ CPUFUNC_FF(op_f270_0), 0, 62064 }, /* FScc.L #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_f278_0), 0, 62072 }, /* FScc.L #.W,(xxx).W */ -{ CPUFUNC_FF(op_f279_0), 0, 62073 }, /* FScc.L #.W,(xxx).L */ -{ CPUFUNC_FF(op_f27a_0), 0, 62074 }, /* FTRAPcc.L #.W */ -{ CPUFUNC_FF(op_f27b_0), 0, 62075 }, /* FTRAPcc.L #.L */ -{ CPUFUNC_FF(op_f27c_0), 0, 62076 }, /* FTRAPcc.L */ -{ CPUFUNC_FF(op_f280_0), 0, 62080 }, /* FBcc.L #,#.W */ -{ CPUFUNC_FF(op_f2c0_0), 0, 62144 }, /* FBcc.L #,#.L */ -{ CPUFUNC_FF(op_f310_0), 0, 62224 }, /* FSAVE.L (An) */ -{ CPUFUNC_FF(op_f320_0), 0, 62240 }, /* FSAVE.L -(An) */ -{ CPUFUNC_FF(op_f328_0), 0, 62248 }, /* FSAVE.L (d16,An) */ -{ CPUFUNC_FF(op_f330_0), 0, 62256 }, /* FSAVE.L (d8,An,Xn) */ -{ CPUFUNC_FF(op_f338_0), 0, 62264 }, /* FSAVE.L (xxx).W */ -{ CPUFUNC_FF(op_f339_0), 0, 62265 }, /* FSAVE.L (xxx).L */ -{ CPUFUNC_FF(op_f350_0), 0, 62288 }, /* FRESTORE.L (An) */ -{ CPUFUNC_FF(op_f358_0), 0, 62296 }, /* FRESTORE.L (An)+ */ -{ CPUFUNC_FF(op_f368_0), 0, 62312 }, /* FRESTORE.L (d16,An) */ -{ CPUFUNC_FF(op_f370_0), 0, 62320 }, /* FRESTORE.L (d8,An,Xn) */ -{ CPUFUNC_FF(op_f378_0), 0, 62328 }, /* FRESTORE.L (xxx).W */ -{ CPUFUNC_FF(op_f379_0), 0, 62329 }, /* FRESTORE.L (xxx).L */ -{ CPUFUNC_FF(op_f37a_0), 0, 62330 }, /* FRESTORE.L (d16,PC) */ -{ CPUFUNC_FF(op_f37b_0), 0, 62331 }, /* FRESTORE.L (d8,PC,Xn) */ -{ CPUFUNC_FF(op_f408_0), 0, 62472 }, /* CINVL.L #,An */ -{ CPUFUNC_FF(op_f410_0), 0, 62480 }, /* CINVP.L #,An */ -{ CPUFUNC_FF(op_f418_0), 0, 62488 }, /* CINVA.L # */ -{ CPUFUNC_FF(op_f419_0), 0, 62489 }, /* CINVA.L # */ -{ CPUFUNC_FF(op_f41a_0), 0, 62490 }, /* CINVA.L # */ -{ CPUFUNC_FF(op_f41b_0), 0, 62491 }, /* CINVA.L # */ -{ CPUFUNC_FF(op_f41c_0), 0, 62492 }, /* CINVA.L # */ -{ CPUFUNC_FF(op_f41d_0), 0, 62493 }, /* CINVA.L # */ -{ CPUFUNC_FF(op_f41e_0), 0, 62494 }, /* CINVA.L # */ -{ CPUFUNC_FF(op_f41f_0), 0, 62495 }, /* CINVA.L # */ -{ CPUFUNC_FF(op_f428_0), 0, 62504 }, /* CPUSHL.L #,An */ -{ CPUFUNC_FF(op_f430_0), 0, 62512 }, /* CPUSHP.L #,An */ -{ CPUFUNC_FF(op_f438_0), 0, 62520 }, /* CPUSHA.L # */ -{ CPUFUNC_FF(op_f439_0), 0, 62521 }, /* CPUSHA.L # */ -{ CPUFUNC_FF(op_f43a_0), 0, 62522 }, /* CPUSHA.L # */ -{ CPUFUNC_FF(op_f43b_0), 0, 62523 }, /* CPUSHA.L # */ -{ CPUFUNC_FF(op_f43c_0), 0, 62524 }, /* CPUSHA.L # */ -{ CPUFUNC_FF(op_f43d_0), 0, 62525 }, /* CPUSHA.L # */ -{ CPUFUNC_FF(op_f43e_0), 0, 62526 }, /* CPUSHA.L # */ -{ CPUFUNC_FF(op_f43f_0), 0, 62527 }, /* CPUSHA.L # */ -{ CPUFUNC_FF(op_f500_0), 0, 62720 }, /* MMUOP.L #,Dn */ -{ CPUFUNC_FF(op_f600_0), 0, 62976 }, /* MOVE16.L (An)+,(xxx).L */ -{ CPUFUNC_FF(op_f608_0), 0, 62984 }, /* MOVE16.L (xxx).L,(An)+ */ -{ CPUFUNC_FF(op_f610_0), 0, 62992 }, /* MOVE16.L (An),(xxx).L */ -{ CPUFUNC_FF(op_f618_0), 0, 63000 }, /* MOVE16.L (xxx).L,(An) */ -{ CPUFUNC_FF(op_f620_0), 0, 63008 }, /* MOVE16.L (An)+,(An)+ */ -{ 0, 0, 0 }}; -struct cputbl CPUFUNC(op_smalltbl_1)[] = { -{ CPUFUNC(op_0_0), 0, 0 }, /* OR.B #.B,Dn */ -{ CPUFUNC(op_10_0), 0, 16 }, /* OR.B #.B,(An) */ -{ CPUFUNC(op_18_0), 0, 24 }, /* OR.B #.B,(An)+ */ -{ CPUFUNC(op_20_0), 0, 32 }, /* OR.B #.B,-(An) */ -{ CPUFUNC(op_28_0), 0, 40 }, /* OR.B #.B,(d16,An) */ -{ CPUFUNC(op_30_0), 0, 48 }, /* OR.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_38_0), 0, 56 }, /* OR.B #.B,(xxx).W */ -{ CPUFUNC(op_39_0), 0, 57 }, /* OR.B #.B,(xxx).L */ -{ CPUFUNC(op_3c_0), 0, 60 }, /* ORSR.B #.W */ -{ CPUFUNC(op_40_0), 0, 64 }, /* OR.W #.W,Dn */ -{ CPUFUNC(op_50_0), 0, 80 }, /* OR.W #.W,(An) */ -{ CPUFUNC(op_58_0), 0, 88 }, /* OR.W #.W,(An)+ */ -{ CPUFUNC(op_60_0), 0, 96 }, /* OR.W #.W,-(An) */ -{ CPUFUNC(op_68_0), 0, 104 }, /* OR.W #.W,(d16,An) */ -{ CPUFUNC(op_70_0), 0, 112 }, /* OR.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_78_0), 0, 120 }, /* OR.W #.W,(xxx).W */ -{ CPUFUNC(op_79_0), 0, 121 }, /* OR.W #.W,(xxx).L */ -{ CPUFUNC(op_7c_0), 0, 124 }, /* ORSR.W #.W */ -{ CPUFUNC(op_80_0), 0, 128 }, /* OR.L #.L,Dn */ -{ CPUFUNC(op_90_0), 0, 144 }, /* OR.L #.L,(An) */ -{ CPUFUNC(op_98_0), 0, 152 }, /* OR.L #.L,(An)+ */ -{ CPUFUNC(op_a0_0), 0, 160 }, /* OR.L #.L,-(An) */ -{ CPUFUNC(op_a8_0), 0, 168 }, /* OR.L #.L,(d16,An) */ -{ CPUFUNC(op_b0_0), 0, 176 }, /* OR.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_b8_0), 0, 184 }, /* OR.L #.L,(xxx).W */ -{ CPUFUNC(op_b9_0), 0, 185 }, /* OR.L #.L,(xxx).L */ -{ CPUFUNC(op_d0_0), 0, 208 }, /* CHK2.B #.W,(An) */ -{ CPUFUNC(op_e8_0), 0, 232 }, /* CHK2.B #.W,(d16,An) */ -{ CPUFUNC(op_f0_0), 0, 240 }, /* CHK2.B #.W,(d8,An,Xn) */ -{ CPUFUNC(op_f8_0), 0, 248 }, /* CHK2.B #.W,(xxx).W */ -{ CPUFUNC(op_f9_0), 0, 249 }, /* CHK2.B #.W,(xxx).L */ -{ CPUFUNC(op_fa_0), 0, 250 }, /* CHK2.B #.W,(d16,PC) */ -{ CPUFUNC(op_fb_0), 0, 251 }, /* CHK2.B #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_100_0), 0, 256 }, /* BTST.L Dn,Dn */ -{ CPUFUNC_FF(op_108_0), 0, 264 }, /* MVPMR.W (d16,An),Dn */ -{ CPUFUNC(op_110_0), 0, 272 }, /* BTST.B Dn,(An) */ -{ CPUFUNC(op_118_0), 0, 280 }, /* BTST.B Dn,(An)+ */ -{ CPUFUNC(op_120_0), 0, 288 }, /* BTST.B Dn,-(An) */ -{ CPUFUNC(op_128_0), 0, 296 }, /* BTST.B Dn,(d16,An) */ -{ CPUFUNC(op_130_0), 0, 304 }, /* BTST.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_138_0), 0, 312 }, /* BTST.B Dn,(xxx).W */ -{ CPUFUNC(op_139_0), 0, 313 }, /* BTST.B Dn,(xxx).L */ -{ CPUFUNC(op_13a_0), 0, 314 }, /* BTST.B Dn,(d16,PC) */ -{ CPUFUNC(op_13b_0), 0, 315 }, /* BTST.B Dn,(d8,PC,Xn) */ -{ CPUFUNC(op_13c_0), 0, 316 }, /* BTST.B Dn,#.B */ -{ CPUFUNC(op_140_0), 0, 320 }, /* BCHG.L Dn,Dn */ -{ CPUFUNC_FF(op_148_0), 0, 328 }, /* MVPMR.L (d16,An),Dn */ -{ CPUFUNC(op_150_0), 0, 336 }, /* BCHG.B Dn,(An) */ -{ CPUFUNC(op_158_0), 0, 344 }, /* BCHG.B Dn,(An)+ */ -{ CPUFUNC(op_160_0), 0, 352 }, /* BCHG.B Dn,-(An) */ -{ CPUFUNC(op_168_0), 0, 360 }, /* BCHG.B Dn,(d16,An) */ -{ CPUFUNC(op_170_0), 0, 368 }, /* BCHG.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_178_0), 0, 376 }, /* BCHG.B Dn,(xxx).W */ -{ CPUFUNC(op_179_0), 0, 377 }, /* BCHG.B Dn,(xxx).L */ -{ CPUFUNC(op_17a_0), 0, 378 }, /* BCHG.B Dn,(d16,PC) */ -{ CPUFUNC(op_17b_0), 0, 379 }, /* BCHG.B Dn,(d8,PC,Xn) */ -{ CPUFUNC(op_180_0), 0, 384 }, /* BCLR.L Dn,Dn */ -{ CPUFUNC_FF(op_188_0), 0, 392 }, /* MVPRM.W Dn,(d16,An) */ -{ CPUFUNC(op_190_0), 0, 400 }, /* BCLR.B Dn,(An) */ -{ CPUFUNC(op_198_0), 0, 408 }, /* BCLR.B Dn,(An)+ */ -{ CPUFUNC(op_1a0_0), 0, 416 }, /* BCLR.B Dn,-(An) */ -{ CPUFUNC(op_1a8_0), 0, 424 }, /* BCLR.B Dn,(d16,An) */ -{ CPUFUNC(op_1b0_0), 0, 432 }, /* BCLR.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_1b8_0), 0, 440 }, /* BCLR.B Dn,(xxx).W */ -{ CPUFUNC(op_1b9_0), 0, 441 }, /* BCLR.B Dn,(xxx).L */ -{ CPUFUNC(op_1ba_0), 0, 442 }, /* BCLR.B Dn,(d16,PC) */ -{ CPUFUNC(op_1bb_0), 0, 443 }, /* BCLR.B Dn,(d8,PC,Xn) */ -{ CPUFUNC(op_1c0_0), 0, 448 }, /* BSET.L Dn,Dn */ -{ CPUFUNC_FF(op_1c8_0), 0, 456 }, /* MVPRM.L Dn,(d16,An) */ -{ CPUFUNC(op_1d0_0), 0, 464 }, /* BSET.B Dn,(An) */ -{ CPUFUNC(op_1d8_0), 0, 472 }, /* BSET.B Dn,(An)+ */ -{ CPUFUNC(op_1e0_0), 0, 480 }, /* BSET.B Dn,-(An) */ -{ CPUFUNC(op_1e8_0), 0, 488 }, /* BSET.B Dn,(d16,An) */ -{ CPUFUNC(op_1f0_0), 0, 496 }, /* BSET.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_1f8_0), 0, 504 }, /* BSET.B Dn,(xxx).W */ -{ CPUFUNC(op_1f9_0), 0, 505 }, /* BSET.B Dn,(xxx).L */ -{ CPUFUNC(op_1fa_0), 0, 506 }, /* BSET.B Dn,(d16,PC) */ -{ CPUFUNC(op_1fb_0), 0, 507 }, /* BSET.B Dn,(d8,PC,Xn) */ -{ CPUFUNC(op_200_0), 0, 512 }, /* AND.B #.B,Dn */ -{ CPUFUNC(op_210_0), 0, 528 }, /* AND.B #.B,(An) */ -{ CPUFUNC(op_218_0), 0, 536 }, /* AND.B #.B,(An)+ */ -{ CPUFUNC(op_220_0), 0, 544 }, /* AND.B #.B,-(An) */ -{ CPUFUNC(op_228_0), 0, 552 }, /* AND.B #.B,(d16,An) */ -{ CPUFUNC(op_230_0), 0, 560 }, /* AND.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_238_0), 0, 568 }, /* AND.B #.B,(xxx).W */ -{ CPUFUNC(op_239_0), 0, 569 }, /* AND.B #.B,(xxx).L */ -{ CPUFUNC(op_23c_0), 0, 572 }, /* ANDSR.B #.W */ -{ CPUFUNC(op_240_0), 0, 576 }, /* AND.W #.W,Dn */ -{ CPUFUNC(op_250_0), 0, 592 }, /* AND.W #.W,(An) */ -{ CPUFUNC(op_258_0), 0, 600 }, /* AND.W #.W,(An)+ */ -{ CPUFUNC(op_260_0), 0, 608 }, /* AND.W #.W,-(An) */ -{ CPUFUNC(op_268_0), 0, 616 }, /* AND.W #.W,(d16,An) */ -{ CPUFUNC(op_270_0), 0, 624 }, /* AND.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_278_0), 0, 632 }, /* AND.W #.W,(xxx).W */ -{ CPUFUNC(op_279_0), 0, 633 }, /* AND.W #.W,(xxx).L */ -{ CPUFUNC(op_27c_0), 0, 636 }, /* ANDSR.W #.W */ -{ CPUFUNC(op_280_0), 0, 640 }, /* AND.L #.L,Dn */ -{ CPUFUNC(op_290_0), 0, 656 }, /* AND.L #.L,(An) */ -{ CPUFUNC(op_298_0), 0, 664 }, /* AND.L #.L,(An)+ */ -{ CPUFUNC(op_2a0_0), 0, 672 }, /* AND.L #.L,-(An) */ -{ CPUFUNC(op_2a8_0), 0, 680 }, /* AND.L #.L,(d16,An) */ -{ CPUFUNC(op_2b0_0), 0, 688 }, /* AND.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_2b8_0), 0, 696 }, /* AND.L #.L,(xxx).W */ -{ CPUFUNC(op_2b9_0), 0, 697 }, /* AND.L #.L,(xxx).L */ -{ CPUFUNC(op_2d0_0), 0, 720 }, /* CHK2.W #.W,(An) */ -{ CPUFUNC(op_2e8_0), 0, 744 }, /* CHK2.W #.W,(d16,An) */ -{ CPUFUNC(op_2f0_0), 0, 752 }, /* CHK2.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_2f8_0), 0, 760 }, /* CHK2.W #.W,(xxx).W */ -{ CPUFUNC(op_2f9_0), 0, 761 }, /* CHK2.W #.W,(xxx).L */ -{ CPUFUNC(op_2fa_0), 0, 762 }, /* CHK2.W #.W,(d16,PC) */ -{ CPUFUNC(op_2fb_0), 0, 763 }, /* CHK2.W #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_400_0), 0, 1024 }, /* SUB.B #.B,Dn */ -{ CPUFUNC(op_410_0), 0, 1040 }, /* SUB.B #.B,(An) */ -{ CPUFUNC(op_418_0), 0, 1048 }, /* SUB.B #.B,(An)+ */ -{ CPUFUNC(op_420_0), 0, 1056 }, /* SUB.B #.B,-(An) */ -{ CPUFUNC(op_428_0), 0, 1064 }, /* SUB.B #.B,(d16,An) */ -{ CPUFUNC(op_430_0), 0, 1072 }, /* SUB.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_438_0), 0, 1080 }, /* SUB.B #.B,(xxx).W */ -{ CPUFUNC(op_439_0), 0, 1081 }, /* SUB.B #.B,(xxx).L */ -{ CPUFUNC(op_440_0), 0, 1088 }, /* SUB.W #.W,Dn */ -{ CPUFUNC(op_450_0), 0, 1104 }, /* SUB.W #.W,(An) */ -{ CPUFUNC(op_458_0), 0, 1112 }, /* SUB.W #.W,(An)+ */ -{ CPUFUNC(op_460_0), 0, 1120 }, /* SUB.W #.W,-(An) */ -{ CPUFUNC(op_468_0), 0, 1128 }, /* SUB.W #.W,(d16,An) */ -{ CPUFUNC(op_470_0), 0, 1136 }, /* SUB.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_478_0), 0, 1144 }, /* SUB.W #.W,(xxx).W */ -{ CPUFUNC(op_479_0), 0, 1145 }, /* SUB.W #.W,(xxx).L */ -{ CPUFUNC(op_480_0), 0, 1152 }, /* SUB.L #.L,Dn */ -{ CPUFUNC(op_490_0), 0, 1168 }, /* SUB.L #.L,(An) */ -{ CPUFUNC(op_498_0), 0, 1176 }, /* SUB.L #.L,(An)+ */ -{ CPUFUNC(op_4a0_0), 0, 1184 }, /* SUB.L #.L,-(An) */ -{ CPUFUNC(op_4a8_0), 0, 1192 }, /* SUB.L #.L,(d16,An) */ -{ CPUFUNC(op_4b0_0), 0, 1200 }, /* SUB.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_4b8_0), 0, 1208 }, /* SUB.L #.L,(xxx).W */ -{ CPUFUNC(op_4b9_0), 0, 1209 }, /* SUB.L #.L,(xxx).L */ -{ CPUFUNC(op_4d0_0), 0, 1232 }, /* CHK2.L #.W,(An) */ -{ CPUFUNC(op_4e8_0), 0, 1256 }, /* CHK2.L #.W,(d16,An) */ -{ CPUFUNC(op_4f0_0), 0, 1264 }, /* CHK2.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_4f8_0), 0, 1272 }, /* CHK2.L #.W,(xxx).W */ -{ CPUFUNC(op_4f9_0), 0, 1273 }, /* CHK2.L #.W,(xxx).L */ -{ CPUFUNC(op_4fa_0), 0, 1274 }, /* CHK2.L #.W,(d16,PC) */ -{ CPUFUNC(op_4fb_0), 0, 1275 }, /* CHK2.L #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_600_0), 0, 1536 }, /* ADD.B #.B,Dn */ -{ CPUFUNC(op_610_0), 0, 1552 }, /* ADD.B #.B,(An) */ -{ CPUFUNC(op_618_0), 0, 1560 }, /* ADD.B #.B,(An)+ */ -{ CPUFUNC(op_620_0), 0, 1568 }, /* ADD.B #.B,-(An) */ -{ CPUFUNC(op_628_0), 0, 1576 }, /* ADD.B #.B,(d16,An) */ -{ CPUFUNC(op_630_0), 0, 1584 }, /* ADD.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_638_0), 0, 1592 }, /* ADD.B #.B,(xxx).W */ -{ CPUFUNC(op_639_0), 0, 1593 }, /* ADD.B #.B,(xxx).L */ -{ CPUFUNC(op_640_0), 0, 1600 }, /* ADD.W #.W,Dn */ -{ CPUFUNC(op_650_0), 0, 1616 }, /* ADD.W #.W,(An) */ -{ CPUFUNC(op_658_0), 0, 1624 }, /* ADD.W #.W,(An)+ */ -{ CPUFUNC(op_660_0), 0, 1632 }, /* ADD.W #.W,-(An) */ -{ CPUFUNC(op_668_0), 0, 1640 }, /* ADD.W #.W,(d16,An) */ -{ CPUFUNC(op_670_0), 0, 1648 }, /* ADD.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_678_0), 0, 1656 }, /* ADD.W #.W,(xxx).W */ -{ CPUFUNC(op_679_0), 0, 1657 }, /* ADD.W #.W,(xxx).L */ -{ CPUFUNC(op_680_0), 0, 1664 }, /* ADD.L #.L,Dn */ -{ CPUFUNC(op_690_0), 0, 1680 }, /* ADD.L #.L,(An) */ -{ CPUFUNC(op_698_0), 0, 1688 }, /* ADD.L #.L,(An)+ */ -{ CPUFUNC(op_6a0_0), 0, 1696 }, /* ADD.L #.L,-(An) */ -{ CPUFUNC(op_6a8_0), 0, 1704 }, /* ADD.L #.L,(d16,An) */ -{ CPUFUNC(op_6b0_0), 0, 1712 }, /* ADD.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_6b8_0), 0, 1720 }, /* ADD.L #.L,(xxx).W */ -{ CPUFUNC(op_6b9_0), 0, 1721 }, /* ADD.L #.L,(xxx).L */ -{ CPUFUNC(op_6c0_0), 0, 1728 }, /* RTM.L Dn */ -{ CPUFUNC(op_6c8_0), 0, 1736 }, /* RTM.L An */ -{ CPUFUNC_FF(op_6d0_0), 0, 1744 }, /* CALLM.L (An) */ -{ CPUFUNC_FF(op_6e8_0), 0, 1768 }, /* CALLM.L (d16,An) */ -{ CPUFUNC_FF(op_6f0_0), 0, 1776 }, /* CALLM.L (d8,An,Xn) */ -{ CPUFUNC_FF(op_6f8_0), 0, 1784 }, /* CALLM.L (xxx).W */ -{ CPUFUNC_FF(op_6f9_0), 0, 1785 }, /* CALLM.L (xxx).L */ -{ CPUFUNC_FF(op_6fa_0), 0, 1786 }, /* CALLM.L (d16,PC) */ -{ CPUFUNC_FF(op_6fb_0), 0, 1787 }, /* CALLM.L (d8,PC,Xn) */ -{ CPUFUNC(op_800_0), 0, 2048 }, /* BTST.L #.W,Dn */ -{ CPUFUNC(op_810_0), 0, 2064 }, /* BTST.B #.W,(An) */ -{ CPUFUNC(op_818_0), 0, 2072 }, /* BTST.B #.W,(An)+ */ -{ CPUFUNC(op_820_0), 0, 2080 }, /* BTST.B #.W,-(An) */ -{ CPUFUNC(op_828_0), 0, 2088 }, /* BTST.B #.W,(d16,An) */ -{ CPUFUNC(op_830_0), 0, 2096 }, /* BTST.B #.W,(d8,An,Xn) */ -{ CPUFUNC(op_838_0), 0, 2104 }, /* BTST.B #.W,(xxx).W */ -{ CPUFUNC(op_839_0), 0, 2105 }, /* BTST.B #.W,(xxx).L */ -{ CPUFUNC(op_83a_0), 0, 2106 }, /* BTST.B #.W,(d16,PC) */ -{ CPUFUNC(op_83b_0), 0, 2107 }, /* BTST.B #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_83c_0), 0, 2108 }, /* BTST.B #.W,#.B */ -{ CPUFUNC(op_840_0), 0, 2112 }, /* BCHG.L #.W,Dn */ -{ CPUFUNC(op_850_0), 0, 2128 }, /* BCHG.B #.W,(An) */ -{ CPUFUNC(op_858_0), 0, 2136 }, /* BCHG.B #.W,(An)+ */ -{ CPUFUNC(op_860_0), 0, 2144 }, /* BCHG.B #.W,-(An) */ -{ CPUFUNC(op_868_0), 0, 2152 }, /* BCHG.B #.W,(d16,An) */ -{ CPUFUNC(op_870_0), 0, 2160 }, /* BCHG.B #.W,(d8,An,Xn) */ -{ CPUFUNC(op_878_0), 0, 2168 }, /* BCHG.B #.W,(xxx).W */ -{ CPUFUNC(op_879_0), 0, 2169 }, /* BCHG.B #.W,(xxx).L */ -{ CPUFUNC(op_87a_0), 0, 2170 }, /* BCHG.B #.W,(d16,PC) */ -{ CPUFUNC(op_87b_0), 0, 2171 }, /* BCHG.B #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_880_0), 0, 2176 }, /* BCLR.L #.W,Dn */ -{ CPUFUNC(op_890_0), 0, 2192 }, /* BCLR.B #.W,(An) */ -{ CPUFUNC(op_898_0), 0, 2200 }, /* BCLR.B #.W,(An)+ */ -{ CPUFUNC(op_8a0_0), 0, 2208 }, /* BCLR.B #.W,-(An) */ -{ CPUFUNC(op_8a8_0), 0, 2216 }, /* BCLR.B #.W,(d16,An) */ -{ CPUFUNC(op_8b0_0), 0, 2224 }, /* BCLR.B #.W,(d8,An,Xn) */ -{ CPUFUNC(op_8b8_0), 0, 2232 }, /* BCLR.B #.W,(xxx).W */ -{ CPUFUNC(op_8b9_0), 0, 2233 }, /* BCLR.B #.W,(xxx).L */ -{ CPUFUNC(op_8ba_0), 0, 2234 }, /* BCLR.B #.W,(d16,PC) */ -{ CPUFUNC(op_8bb_0), 0, 2235 }, /* BCLR.B #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_8c0_0), 0, 2240 }, /* BSET.L #.W,Dn */ -{ CPUFUNC(op_8d0_0), 0, 2256 }, /* BSET.B #.W,(An) */ -{ CPUFUNC(op_8d8_0), 0, 2264 }, /* BSET.B #.W,(An)+ */ -{ CPUFUNC(op_8e0_0), 0, 2272 }, /* BSET.B #.W,-(An) */ -{ CPUFUNC(op_8e8_0), 0, 2280 }, /* BSET.B #.W,(d16,An) */ -{ CPUFUNC(op_8f0_0), 0, 2288 }, /* BSET.B #.W,(d8,An,Xn) */ -{ CPUFUNC(op_8f8_0), 0, 2296 }, /* BSET.B #.W,(xxx).W */ -{ CPUFUNC(op_8f9_0), 0, 2297 }, /* BSET.B #.W,(xxx).L */ -{ CPUFUNC(op_8fa_0), 0, 2298 }, /* BSET.B #.W,(d16,PC) */ -{ CPUFUNC(op_8fb_0), 0, 2299 }, /* BSET.B #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_a00_0), 0, 2560 }, /* EOR.B #.B,Dn */ -{ CPUFUNC(op_a10_0), 0, 2576 }, /* EOR.B #.B,(An) */ -{ CPUFUNC(op_a18_0), 0, 2584 }, /* EOR.B #.B,(An)+ */ -{ CPUFUNC(op_a20_0), 0, 2592 }, /* EOR.B #.B,-(An) */ -{ CPUFUNC(op_a28_0), 0, 2600 }, /* EOR.B #.B,(d16,An) */ -{ CPUFUNC(op_a30_0), 0, 2608 }, /* EOR.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_a38_0), 0, 2616 }, /* EOR.B #.B,(xxx).W */ -{ CPUFUNC(op_a39_0), 0, 2617 }, /* EOR.B #.B,(xxx).L */ -{ CPUFUNC(op_a3c_0), 0, 2620 }, /* EORSR.B #.W */ -{ CPUFUNC(op_a40_0), 0, 2624 }, /* EOR.W #.W,Dn */ -{ CPUFUNC(op_a50_0), 0, 2640 }, /* EOR.W #.W,(An) */ -{ CPUFUNC(op_a58_0), 0, 2648 }, /* EOR.W #.W,(An)+ */ -{ CPUFUNC(op_a60_0), 0, 2656 }, /* EOR.W #.W,-(An) */ -{ CPUFUNC(op_a68_0), 0, 2664 }, /* EOR.W #.W,(d16,An) */ -{ CPUFUNC(op_a70_0), 0, 2672 }, /* EOR.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_a78_0), 0, 2680 }, /* EOR.W #.W,(xxx).W */ -{ CPUFUNC(op_a79_0), 0, 2681 }, /* EOR.W #.W,(xxx).L */ -{ CPUFUNC(op_a7c_0), 0, 2684 }, /* EORSR.W #.W */ -{ CPUFUNC(op_a80_0), 0, 2688 }, /* EOR.L #.L,Dn */ -{ CPUFUNC(op_a90_0), 0, 2704 }, /* EOR.L #.L,(An) */ -{ CPUFUNC(op_a98_0), 0, 2712 }, /* EOR.L #.L,(An)+ */ -{ CPUFUNC(op_aa0_0), 0, 2720 }, /* EOR.L #.L,-(An) */ -{ CPUFUNC(op_aa8_0), 0, 2728 }, /* EOR.L #.L,(d16,An) */ -{ CPUFUNC(op_ab0_0), 0, 2736 }, /* EOR.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_ab8_0), 0, 2744 }, /* EOR.L #.L,(xxx).W */ -{ CPUFUNC(op_ab9_0), 0, 2745 }, /* EOR.L #.L,(xxx).L */ -{ CPUFUNC(op_ad0_0), 0, 2768 }, /* CAS.B #.W,(An) */ -{ CPUFUNC(op_ad8_0), 0, 2776 }, /* CAS.B #.W,(An)+ */ -{ CPUFUNC(op_ae0_0), 0, 2784 }, /* CAS.B #.W,-(An) */ -{ CPUFUNC(op_ae8_0), 0, 2792 }, /* CAS.B #.W,(d16,An) */ -{ CPUFUNC(op_af0_0), 0, 2800 }, /* CAS.B #.W,(d8,An,Xn) */ -{ CPUFUNC(op_af8_0), 0, 2808 }, /* CAS.B #.W,(xxx).W */ -{ CPUFUNC(op_af9_0), 0, 2809 }, /* CAS.B #.W,(xxx).L */ -{ CPUFUNC(op_c00_0), 0, 3072 }, /* CMP.B #.B,Dn */ -{ CPUFUNC(op_c10_0), 0, 3088 }, /* CMP.B #.B,(An) */ -{ CPUFUNC(op_c18_0), 0, 3096 }, /* CMP.B #.B,(An)+ */ -{ CPUFUNC(op_c20_0), 0, 3104 }, /* CMP.B #.B,-(An) */ -{ CPUFUNC(op_c28_0), 0, 3112 }, /* CMP.B #.B,(d16,An) */ -{ CPUFUNC(op_c30_0), 0, 3120 }, /* CMP.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_c38_0), 0, 3128 }, /* CMP.B #.B,(xxx).W */ -{ CPUFUNC(op_c39_0), 0, 3129 }, /* CMP.B #.B,(xxx).L */ -{ CPUFUNC(op_c3a_0), 0, 3130 }, /* CMP.B #.B,(d16,PC) */ -{ CPUFUNC(op_c3b_0), 0, 3131 }, /* CMP.B #.B,(d8,PC,Xn) */ -{ CPUFUNC(op_c40_0), 0, 3136 }, /* CMP.W #.W,Dn */ -{ CPUFUNC(op_c50_0), 0, 3152 }, /* CMP.W #.W,(An) */ -{ CPUFUNC(op_c58_0), 0, 3160 }, /* CMP.W #.W,(An)+ */ -{ CPUFUNC(op_c60_0), 0, 3168 }, /* CMP.W #.W,-(An) */ -{ CPUFUNC(op_c68_0), 0, 3176 }, /* CMP.W #.W,(d16,An) */ -{ CPUFUNC(op_c70_0), 0, 3184 }, /* CMP.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_c78_0), 0, 3192 }, /* CMP.W #.W,(xxx).W */ -{ CPUFUNC(op_c79_0), 0, 3193 }, /* CMP.W #.W,(xxx).L */ -{ CPUFUNC(op_c7a_0), 0, 3194 }, /* CMP.W #.W,(d16,PC) */ -{ CPUFUNC(op_c7b_0), 0, 3195 }, /* CMP.W #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_c80_0), 0, 3200 }, /* CMP.L #.L,Dn */ -{ CPUFUNC(op_c90_0), 0, 3216 }, /* CMP.L #.L,(An) */ -{ CPUFUNC(op_c98_0), 0, 3224 }, /* CMP.L #.L,(An)+ */ -{ CPUFUNC(op_ca0_0), 0, 3232 }, /* CMP.L #.L,-(An) */ -{ CPUFUNC(op_ca8_0), 0, 3240 }, /* CMP.L #.L,(d16,An) */ -{ CPUFUNC(op_cb0_0), 0, 3248 }, /* CMP.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_cb8_0), 0, 3256 }, /* CMP.L #.L,(xxx).W */ -{ CPUFUNC(op_cb9_0), 0, 3257 }, /* CMP.L #.L,(xxx).L */ -{ CPUFUNC(op_cba_0), 0, 3258 }, /* CMP.L #.L,(d16,PC) */ -{ CPUFUNC(op_cbb_0), 0, 3259 }, /* CMP.L #.L,(d8,PC,Xn) */ -{ CPUFUNC(op_cd0_0), 0, 3280 }, /* CAS.W #.W,(An) */ -{ CPUFUNC(op_cd8_0), 0, 3288 }, /* CAS.W #.W,(An)+ */ -{ CPUFUNC(op_ce0_0), 0, 3296 }, /* CAS.W #.W,-(An) */ -{ CPUFUNC(op_ce8_0), 0, 3304 }, /* CAS.W #.W,(d16,An) */ -{ CPUFUNC(op_cf0_0), 0, 3312 }, /* CAS.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_cf8_0), 0, 3320 }, /* CAS.W #.W,(xxx).W */ -{ CPUFUNC(op_cf9_0), 0, 3321 }, /* CAS.W #.W,(xxx).L */ -{ CPUFUNC(op_cfc_0), 0, 3324 }, /* CAS2.W #.L */ -{ CPUFUNC_FF(op_e10_0), 0, 3600 }, /* MOVES.B #.W,(An) */ -{ CPUFUNC_FF(op_e18_0), 0, 3608 }, /* MOVES.B #.W,(An)+ */ -{ CPUFUNC_FF(op_e20_0), 0, 3616 }, /* MOVES.B #.W,-(An) */ -{ CPUFUNC_FF(op_e28_0), 0, 3624 }, /* MOVES.B #.W,(d16,An) */ -{ CPUFUNC_FF(op_e30_0), 0, 3632 }, /* MOVES.B #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_e38_0), 0, 3640 }, /* MOVES.B #.W,(xxx).W */ -{ CPUFUNC_FF(op_e39_0), 0, 3641 }, /* MOVES.B #.W,(xxx).L */ -{ CPUFUNC_FF(op_e50_0), 0, 3664 }, /* MOVES.W #.W,(An) */ -{ CPUFUNC_FF(op_e58_0), 0, 3672 }, /* MOVES.W #.W,(An)+ */ -{ CPUFUNC_FF(op_e60_0), 0, 3680 }, /* MOVES.W #.W,-(An) */ -{ CPUFUNC_FF(op_e68_0), 0, 3688 }, /* MOVES.W #.W,(d16,An) */ -{ CPUFUNC_FF(op_e70_0), 0, 3696 }, /* MOVES.W #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_e78_0), 0, 3704 }, /* MOVES.W #.W,(xxx).W */ -{ CPUFUNC_FF(op_e79_0), 0, 3705 }, /* MOVES.W #.W,(xxx).L */ -{ CPUFUNC_FF(op_e90_0), 0, 3728 }, /* MOVES.L #.W,(An) */ -{ CPUFUNC_FF(op_e98_0), 0, 3736 }, /* MOVES.L #.W,(An)+ */ -{ CPUFUNC_FF(op_ea0_0), 0, 3744 }, /* MOVES.L #.W,-(An) */ -{ CPUFUNC_FF(op_ea8_0), 0, 3752 }, /* MOVES.L #.W,(d16,An) */ -{ CPUFUNC_FF(op_eb0_0), 0, 3760 }, /* MOVES.L #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_eb8_0), 0, 3768 }, /* MOVES.L #.W,(xxx).W */ -{ CPUFUNC_FF(op_eb9_0), 0, 3769 }, /* MOVES.L #.W,(xxx).L */ -{ CPUFUNC(op_ed0_0), 0, 3792 }, /* CAS.L #.W,(An) */ -{ CPUFUNC(op_ed8_0), 0, 3800 }, /* CAS.L #.W,(An)+ */ -{ CPUFUNC(op_ee0_0), 0, 3808 }, /* CAS.L #.W,-(An) */ -{ CPUFUNC(op_ee8_0), 0, 3816 }, /* CAS.L #.W,(d16,An) */ -{ CPUFUNC(op_ef0_0), 0, 3824 }, /* CAS.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_ef8_0), 0, 3832 }, /* CAS.L #.W,(xxx).W */ -{ CPUFUNC(op_ef9_0), 0, 3833 }, /* CAS.L #.W,(xxx).L */ -{ CPUFUNC(op_efc_0), 0, 3836 }, /* CAS2.L #.L */ -{ CPUFUNC(op_1000_0), 0, 4096 }, /* MOVE.B Dn,Dn */ -{ CPUFUNC(op_1010_0), 0, 4112 }, /* MOVE.B (An),Dn */ -{ CPUFUNC(op_1018_0), 0, 4120 }, /* MOVE.B (An)+,Dn */ -{ CPUFUNC(op_1020_0), 0, 4128 }, /* MOVE.B -(An),Dn */ -{ CPUFUNC(op_1028_0), 0, 4136 }, /* MOVE.B (d16,An),Dn */ -{ CPUFUNC(op_1030_0), 0, 4144 }, /* MOVE.B (d8,An,Xn),Dn */ -{ CPUFUNC(op_1038_0), 0, 4152 }, /* MOVE.B (xxx).W,Dn */ -{ CPUFUNC(op_1039_0), 0, 4153 }, /* MOVE.B (xxx).L,Dn */ -{ CPUFUNC(op_103a_0), 0, 4154 }, /* MOVE.B (d16,PC),Dn */ -{ CPUFUNC(op_103b_0), 0, 4155 }, /* MOVE.B (d8,PC,Xn),Dn */ -{ CPUFUNC(op_103c_0), 0, 4156 }, /* MOVE.B #.B,Dn */ -{ CPUFUNC(op_1080_0), 0, 4224 }, /* MOVE.B Dn,(An) */ -{ CPUFUNC(op_1090_0), 0, 4240 }, /* MOVE.B (An),(An) */ -{ CPUFUNC(op_1098_0), 0, 4248 }, /* MOVE.B (An)+,(An) */ -{ CPUFUNC(op_10a0_0), 0, 4256 }, /* MOVE.B -(An),(An) */ -{ CPUFUNC(op_10a8_0), 0, 4264 }, /* MOVE.B (d16,An),(An) */ -{ CPUFUNC(op_10b0_0), 0, 4272 }, /* MOVE.B (d8,An,Xn),(An) */ -{ CPUFUNC(op_10b8_0), 0, 4280 }, /* MOVE.B (xxx).W,(An) */ -{ CPUFUNC(op_10b9_0), 0, 4281 }, /* MOVE.B (xxx).L,(An) */ -{ CPUFUNC(op_10ba_0), 0, 4282 }, /* MOVE.B (d16,PC),(An) */ -{ CPUFUNC(op_10bb_0), 0, 4283 }, /* MOVE.B (d8,PC,Xn),(An) */ -{ CPUFUNC(op_10bc_0), 0, 4284 }, /* MOVE.B #.B,(An) */ -{ CPUFUNC(op_10c0_0), 0, 4288 }, /* MOVE.B Dn,(An)+ */ -{ CPUFUNC(op_10d0_0), 0, 4304 }, /* MOVE.B (An),(An)+ */ -{ CPUFUNC(op_10d8_0), 0, 4312 }, /* MOVE.B (An)+,(An)+ */ -{ CPUFUNC(op_10e0_0), 0, 4320 }, /* MOVE.B -(An),(An)+ */ -{ CPUFUNC(op_10e8_0), 0, 4328 }, /* MOVE.B (d16,An),(An)+ */ -{ CPUFUNC(op_10f0_0), 0, 4336 }, /* MOVE.B (d8,An,Xn),(An)+ */ -{ CPUFUNC(op_10f8_0), 0, 4344 }, /* MOVE.B (xxx).W,(An)+ */ -{ CPUFUNC(op_10f9_0), 0, 4345 }, /* MOVE.B (xxx).L,(An)+ */ -{ CPUFUNC(op_10fa_0), 0, 4346 }, /* MOVE.B (d16,PC),(An)+ */ -{ CPUFUNC(op_10fb_0), 0, 4347 }, /* MOVE.B (d8,PC,Xn),(An)+ */ -{ CPUFUNC(op_10fc_0), 0, 4348 }, /* MOVE.B #.B,(An)+ */ -{ CPUFUNC(op_1100_0), 0, 4352 }, /* MOVE.B Dn,-(An) */ -{ CPUFUNC(op_1110_0), 0, 4368 }, /* MOVE.B (An),-(An) */ -{ CPUFUNC(op_1118_0), 0, 4376 }, /* MOVE.B (An)+,-(An) */ -{ CPUFUNC(op_1120_0), 0, 4384 }, /* MOVE.B -(An),-(An) */ -{ CPUFUNC(op_1128_0), 0, 4392 }, /* MOVE.B (d16,An),-(An) */ -{ CPUFUNC(op_1130_0), 0, 4400 }, /* MOVE.B (d8,An,Xn),-(An) */ -{ CPUFUNC(op_1138_0), 0, 4408 }, /* MOVE.B (xxx).W,-(An) */ -{ CPUFUNC(op_1139_0), 0, 4409 }, /* MOVE.B (xxx).L,-(An) */ -{ CPUFUNC(op_113a_0), 0, 4410 }, /* MOVE.B (d16,PC),-(An) */ -{ CPUFUNC(op_113b_0), 0, 4411 }, /* MOVE.B (d8,PC,Xn),-(An) */ -{ CPUFUNC(op_113c_0), 0, 4412 }, /* MOVE.B #.B,-(An) */ -{ CPUFUNC(op_1140_0), 0, 4416 }, /* MOVE.B Dn,(d16,An) */ -{ CPUFUNC(op_1150_0), 0, 4432 }, /* MOVE.B (An),(d16,An) */ -{ CPUFUNC(op_1158_0), 0, 4440 }, /* MOVE.B (An)+,(d16,An) */ -{ CPUFUNC(op_1160_0), 0, 4448 }, /* MOVE.B -(An),(d16,An) */ -{ CPUFUNC(op_1168_0), 0, 4456 }, /* MOVE.B (d16,An),(d16,An) */ -{ CPUFUNC(op_1170_0), 0, 4464 }, /* MOVE.B (d8,An,Xn),(d16,An) */ -{ CPUFUNC(op_1178_0), 0, 4472 }, /* MOVE.B (xxx).W,(d16,An) */ -{ CPUFUNC(op_1179_0), 0, 4473 }, /* MOVE.B (xxx).L,(d16,An) */ -{ CPUFUNC(op_117a_0), 0, 4474 }, /* MOVE.B (d16,PC),(d16,An) */ -{ CPUFUNC(op_117b_0), 0, 4475 }, /* MOVE.B (d8,PC,Xn),(d16,An) */ -{ CPUFUNC(op_117c_0), 0, 4476 }, /* MOVE.B #.B,(d16,An) */ -{ CPUFUNC(op_1180_0), 0, 4480 }, /* MOVE.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_1190_0), 0, 4496 }, /* MOVE.B (An),(d8,An,Xn) */ -{ CPUFUNC(op_1198_0), 0, 4504 }, /* MOVE.B (An)+,(d8,An,Xn) */ -{ CPUFUNC(op_11a0_0), 0, 4512 }, /* MOVE.B -(An),(d8,An,Xn) */ -{ CPUFUNC(op_11a8_0), 0, 4520 }, /* MOVE.B (d16,An),(d8,An,Xn) */ -{ CPUFUNC(op_11b0_0), 0, 4528 }, /* MOVE.B (d8,An,Xn),(d8,An,Xn) */ -{ CPUFUNC(op_11b8_0), 0, 4536 }, /* MOVE.B (xxx).W,(d8,An,Xn) */ -{ CPUFUNC(op_11b9_0), 0, 4537 }, /* MOVE.B (xxx).L,(d8,An,Xn) */ -{ CPUFUNC(op_11ba_0), 0, 4538 }, /* MOVE.B (d16,PC),(d8,An,Xn) */ -{ CPUFUNC(op_11bb_0), 0, 4539 }, /* MOVE.B (d8,PC,Xn),(d8,An,Xn) */ -{ CPUFUNC(op_11bc_0), 0, 4540 }, /* MOVE.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_11c0_0), 0, 4544 }, /* MOVE.B Dn,(xxx).W */ -{ CPUFUNC(op_11d0_0), 0, 4560 }, /* MOVE.B (An),(xxx).W */ -{ CPUFUNC(op_11d8_0), 0, 4568 }, /* MOVE.B (An)+,(xxx).W */ -{ CPUFUNC(op_11e0_0), 0, 4576 }, /* MOVE.B -(An),(xxx).W */ -{ CPUFUNC(op_11e8_0), 0, 4584 }, /* MOVE.B (d16,An),(xxx).W */ -{ CPUFUNC(op_11f0_0), 0, 4592 }, /* MOVE.B (d8,An,Xn),(xxx).W */ -{ CPUFUNC(op_11f8_0), 0, 4600 }, /* MOVE.B (xxx).W,(xxx).W */ -{ CPUFUNC(op_11f9_0), 0, 4601 }, /* MOVE.B (xxx).L,(xxx).W */ -{ CPUFUNC(op_11fa_0), 0, 4602 }, /* MOVE.B (d16,PC),(xxx).W */ -{ CPUFUNC(op_11fb_0), 0, 4603 }, /* MOVE.B (d8,PC,Xn),(xxx).W */ -{ CPUFUNC(op_11fc_0), 0, 4604 }, /* MOVE.B #.B,(xxx).W */ -{ CPUFUNC(op_13c0_0), 0, 5056 }, /* MOVE.B Dn,(xxx).L */ -{ CPUFUNC(op_13d0_0), 0, 5072 }, /* MOVE.B (An),(xxx).L */ -{ CPUFUNC(op_13d8_0), 0, 5080 }, /* MOVE.B (An)+,(xxx).L */ -{ CPUFUNC(op_13e0_0), 0, 5088 }, /* MOVE.B -(An),(xxx).L */ -{ CPUFUNC(op_13e8_0), 0, 5096 }, /* MOVE.B (d16,An),(xxx).L */ -{ CPUFUNC(op_13f0_0), 0, 5104 }, /* MOVE.B (d8,An,Xn),(xxx).L */ -{ CPUFUNC(op_13f8_0), 0, 5112 }, /* MOVE.B (xxx).W,(xxx).L */ -{ CPUFUNC(op_13f9_0), 0, 5113 }, /* MOVE.B (xxx).L,(xxx).L */ -{ CPUFUNC(op_13fa_0), 0, 5114 }, /* MOVE.B (d16,PC),(xxx).L */ -{ CPUFUNC(op_13fb_0), 0, 5115 }, /* MOVE.B (d8,PC,Xn),(xxx).L */ -{ CPUFUNC(op_13fc_0), 0, 5116 }, /* MOVE.B #.B,(xxx).L */ -{ CPUFUNC(op_2000_0), 0, 8192 }, /* MOVE.L Dn,Dn */ -{ CPUFUNC(op_2008_0), 0, 8200 }, /* MOVE.L An,Dn */ -{ CPUFUNC(op_2010_0), 0, 8208 }, /* MOVE.L (An),Dn */ -{ CPUFUNC(op_2018_0), 0, 8216 }, /* MOVE.L (An)+,Dn */ -{ CPUFUNC(op_2020_0), 0, 8224 }, /* MOVE.L -(An),Dn */ -{ CPUFUNC(op_2028_0), 0, 8232 }, /* MOVE.L (d16,An),Dn */ -{ CPUFUNC(op_2030_0), 0, 8240 }, /* MOVE.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_2038_0), 0, 8248 }, /* MOVE.L (xxx).W,Dn */ -{ CPUFUNC(op_2039_0), 0, 8249 }, /* MOVE.L (xxx).L,Dn */ -{ CPUFUNC(op_203a_0), 0, 8250 }, /* MOVE.L (d16,PC),Dn */ -{ CPUFUNC(op_203b_0), 0, 8251 }, /* MOVE.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_203c_0), 0, 8252 }, /* MOVE.L #.L,Dn */ -{ CPUFUNC_FF(op_2040_0), 0, 8256 }, /* MOVEA.L Dn,An */ -{ CPUFUNC_FF(op_2048_0), 0, 8264 }, /* MOVEA.L An,An */ -{ CPUFUNC_FF(op_2050_0), 0, 8272 }, /* MOVEA.L (An),An */ -{ CPUFUNC_FF(op_2058_0), 0, 8280 }, /* MOVEA.L (An)+,An */ -{ CPUFUNC_FF(op_2060_0), 0, 8288 }, /* MOVEA.L -(An),An */ -{ CPUFUNC_FF(op_2068_0), 0, 8296 }, /* MOVEA.L (d16,An),An */ -{ CPUFUNC_FF(op_2070_0), 0, 8304 }, /* MOVEA.L (d8,An,Xn),An */ -{ CPUFUNC_FF(op_2078_0), 0, 8312 }, /* MOVEA.L (xxx).W,An */ -{ CPUFUNC_FF(op_2079_0), 0, 8313 }, /* MOVEA.L (xxx).L,An */ -{ CPUFUNC_FF(op_207a_0), 0, 8314 }, /* MOVEA.L (d16,PC),An */ -{ CPUFUNC_FF(op_207b_0), 0, 8315 }, /* MOVEA.L (d8,PC,Xn),An */ -{ CPUFUNC_FF(op_207c_0), 0, 8316 }, /* MOVEA.L #.L,An */ -{ CPUFUNC(op_2080_0), 0, 8320 }, /* MOVE.L Dn,(An) */ -{ CPUFUNC(op_2088_0), 0, 8328 }, /* MOVE.L An,(An) */ -{ CPUFUNC(op_2090_0), 0, 8336 }, /* MOVE.L (An),(An) */ -{ CPUFUNC(op_2098_0), 0, 8344 }, /* MOVE.L (An)+,(An) */ -{ CPUFUNC(op_20a0_0), 0, 8352 }, /* MOVE.L -(An),(An) */ -{ CPUFUNC(op_20a8_0), 0, 8360 }, /* MOVE.L (d16,An),(An) */ -{ CPUFUNC(op_20b0_0), 0, 8368 }, /* MOVE.L (d8,An,Xn),(An) */ -{ CPUFUNC(op_20b8_0), 0, 8376 }, /* MOVE.L (xxx).W,(An) */ -{ CPUFUNC(op_20b9_0), 0, 8377 }, /* MOVE.L (xxx).L,(An) */ -{ CPUFUNC(op_20ba_0), 0, 8378 }, /* MOVE.L (d16,PC),(An) */ -{ CPUFUNC(op_20bb_0), 0, 8379 }, /* MOVE.L (d8,PC,Xn),(An) */ -{ CPUFUNC(op_20bc_0), 0, 8380 }, /* MOVE.L #.L,(An) */ -{ CPUFUNC(op_20c0_0), 0, 8384 }, /* MOVE.L Dn,(An)+ */ -{ CPUFUNC(op_20c8_0), 0, 8392 }, /* MOVE.L An,(An)+ */ -{ CPUFUNC(op_20d0_0), 0, 8400 }, /* MOVE.L (An),(An)+ */ -{ CPUFUNC(op_20d8_0), 0, 8408 }, /* MOVE.L (An)+,(An)+ */ -{ CPUFUNC(op_20e0_0), 0, 8416 }, /* MOVE.L -(An),(An)+ */ -{ CPUFUNC(op_20e8_0), 0, 8424 }, /* MOVE.L (d16,An),(An)+ */ -{ CPUFUNC(op_20f0_0), 0, 8432 }, /* MOVE.L (d8,An,Xn),(An)+ */ -{ CPUFUNC(op_20f8_0), 0, 8440 }, /* MOVE.L (xxx).W,(An)+ */ -{ CPUFUNC(op_20f9_0), 0, 8441 }, /* MOVE.L (xxx).L,(An)+ */ -{ CPUFUNC(op_20fa_0), 0, 8442 }, /* MOVE.L (d16,PC),(An)+ */ -{ CPUFUNC(op_20fb_0), 0, 8443 }, /* MOVE.L (d8,PC,Xn),(An)+ */ -{ CPUFUNC(op_20fc_0), 0, 8444 }, /* MOVE.L #.L,(An)+ */ -{ CPUFUNC(op_2100_0), 0, 8448 }, /* MOVE.L Dn,-(An) */ -{ CPUFUNC(op_2108_0), 0, 8456 }, /* MOVE.L An,-(An) */ -{ CPUFUNC(op_2110_0), 0, 8464 }, /* MOVE.L (An),-(An) */ -{ CPUFUNC(op_2118_0), 0, 8472 }, /* MOVE.L (An)+,-(An) */ -{ CPUFUNC(op_2120_0), 0, 8480 }, /* MOVE.L -(An),-(An) */ -{ CPUFUNC(op_2128_0), 0, 8488 }, /* MOVE.L (d16,An),-(An) */ -{ CPUFUNC(op_2130_0), 0, 8496 }, /* MOVE.L (d8,An,Xn),-(An) */ -{ CPUFUNC(op_2138_0), 0, 8504 }, /* MOVE.L (xxx).W,-(An) */ -{ CPUFUNC(op_2139_0), 0, 8505 }, /* MOVE.L (xxx).L,-(An) */ -{ CPUFUNC(op_213a_0), 0, 8506 }, /* MOVE.L (d16,PC),-(An) */ -{ CPUFUNC(op_213b_0), 0, 8507 }, /* MOVE.L (d8,PC,Xn),-(An) */ -{ CPUFUNC(op_213c_0), 0, 8508 }, /* MOVE.L #.L,-(An) */ -{ CPUFUNC(op_2140_0), 0, 8512 }, /* MOVE.L Dn,(d16,An) */ -{ CPUFUNC(op_2148_0), 0, 8520 }, /* MOVE.L An,(d16,An) */ -{ CPUFUNC(op_2150_0), 0, 8528 }, /* MOVE.L (An),(d16,An) */ -{ CPUFUNC(op_2158_0), 0, 8536 }, /* MOVE.L (An)+,(d16,An) */ -{ CPUFUNC(op_2160_0), 0, 8544 }, /* MOVE.L -(An),(d16,An) */ -{ CPUFUNC(op_2168_0), 0, 8552 }, /* MOVE.L (d16,An),(d16,An) */ -{ CPUFUNC(op_2170_0), 0, 8560 }, /* MOVE.L (d8,An,Xn),(d16,An) */ -{ CPUFUNC(op_2178_0), 0, 8568 }, /* MOVE.L (xxx).W,(d16,An) */ -{ CPUFUNC(op_2179_0), 0, 8569 }, /* MOVE.L (xxx).L,(d16,An) */ -{ CPUFUNC(op_217a_0), 0, 8570 }, /* MOVE.L (d16,PC),(d16,An) */ -{ CPUFUNC(op_217b_0), 0, 8571 }, /* MOVE.L (d8,PC,Xn),(d16,An) */ -{ CPUFUNC(op_217c_0), 0, 8572 }, /* MOVE.L #.L,(d16,An) */ -{ CPUFUNC(op_2180_0), 0, 8576 }, /* MOVE.L Dn,(d8,An,Xn) */ -{ CPUFUNC(op_2188_0), 0, 8584 }, /* MOVE.L An,(d8,An,Xn) */ -{ CPUFUNC(op_2190_0), 0, 8592 }, /* MOVE.L (An),(d8,An,Xn) */ -{ CPUFUNC(op_2198_0), 0, 8600 }, /* MOVE.L (An)+,(d8,An,Xn) */ -{ CPUFUNC(op_21a0_0), 0, 8608 }, /* MOVE.L -(An),(d8,An,Xn) */ -{ CPUFUNC(op_21a8_0), 0, 8616 }, /* MOVE.L (d16,An),(d8,An,Xn) */ -{ CPUFUNC(op_21b0_0), 0, 8624 }, /* MOVE.L (d8,An,Xn),(d8,An,Xn) */ -{ CPUFUNC(op_21b8_0), 0, 8632 }, /* MOVE.L (xxx).W,(d8,An,Xn) */ -{ CPUFUNC(op_21b9_0), 0, 8633 }, /* MOVE.L (xxx).L,(d8,An,Xn) */ -{ CPUFUNC(op_21ba_0), 0, 8634 }, /* MOVE.L (d16,PC),(d8,An,Xn) */ -{ CPUFUNC(op_21bb_0), 0, 8635 }, /* MOVE.L (d8,PC,Xn),(d8,An,Xn) */ -{ CPUFUNC(op_21bc_0), 0, 8636 }, /* MOVE.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_21c0_0), 0, 8640 }, /* MOVE.L Dn,(xxx).W */ -{ CPUFUNC(op_21c8_0), 0, 8648 }, /* MOVE.L An,(xxx).W */ -{ CPUFUNC(op_21d0_0), 0, 8656 }, /* MOVE.L (An),(xxx).W */ -{ CPUFUNC(op_21d8_0), 0, 8664 }, /* MOVE.L (An)+,(xxx).W */ -{ CPUFUNC(op_21e0_0), 0, 8672 }, /* MOVE.L -(An),(xxx).W */ -{ CPUFUNC(op_21e8_0), 0, 8680 }, /* MOVE.L (d16,An),(xxx).W */ -{ CPUFUNC(op_21f0_0), 0, 8688 }, /* MOVE.L (d8,An,Xn),(xxx).W */ -{ CPUFUNC(op_21f8_0), 0, 8696 }, /* MOVE.L (xxx).W,(xxx).W */ -{ CPUFUNC(op_21f9_0), 0, 8697 }, /* MOVE.L (xxx).L,(xxx).W */ -{ CPUFUNC(op_21fa_0), 0, 8698 }, /* MOVE.L (d16,PC),(xxx).W */ -{ CPUFUNC(op_21fb_0), 0, 8699 }, /* MOVE.L (d8,PC,Xn),(xxx).W */ -{ CPUFUNC(op_21fc_0), 0, 8700 }, /* MOVE.L #.L,(xxx).W */ -{ CPUFUNC(op_23c0_0), 0, 9152 }, /* MOVE.L Dn,(xxx).L */ -{ CPUFUNC(op_23c8_0), 0, 9160 }, /* MOVE.L An,(xxx).L */ -{ CPUFUNC(op_23d0_0), 0, 9168 }, /* MOVE.L (An),(xxx).L */ -{ CPUFUNC(op_23d8_0), 0, 9176 }, /* MOVE.L (An)+,(xxx).L */ -{ CPUFUNC(op_23e0_0), 0, 9184 }, /* MOVE.L -(An),(xxx).L */ -{ CPUFUNC(op_23e8_0), 0, 9192 }, /* MOVE.L (d16,An),(xxx).L */ -{ CPUFUNC(op_23f0_0), 0, 9200 }, /* MOVE.L (d8,An,Xn),(xxx).L */ -{ CPUFUNC(op_23f8_0), 0, 9208 }, /* MOVE.L (xxx).W,(xxx).L */ -{ CPUFUNC(op_23f9_0), 0, 9209 }, /* MOVE.L (xxx).L,(xxx).L */ -{ CPUFUNC(op_23fa_0), 0, 9210 }, /* MOVE.L (d16,PC),(xxx).L */ -{ CPUFUNC(op_23fb_0), 0, 9211 }, /* MOVE.L (d8,PC,Xn),(xxx).L */ -{ CPUFUNC(op_23fc_0), 0, 9212 }, /* MOVE.L #.L,(xxx).L */ -{ CPUFUNC(op_3000_0), 0, 12288 }, /* MOVE.W Dn,Dn */ -{ CPUFUNC(op_3008_0), 0, 12296 }, /* MOVE.W An,Dn */ -{ CPUFUNC(op_3010_0), 0, 12304 }, /* MOVE.W (An),Dn */ -{ CPUFUNC(op_3018_0), 0, 12312 }, /* MOVE.W (An)+,Dn */ -{ CPUFUNC(op_3020_0), 0, 12320 }, /* MOVE.W -(An),Dn */ -{ CPUFUNC(op_3028_0), 0, 12328 }, /* MOVE.W (d16,An),Dn */ -{ CPUFUNC(op_3030_0), 0, 12336 }, /* MOVE.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_3038_0), 0, 12344 }, /* MOVE.W (xxx).W,Dn */ -{ CPUFUNC(op_3039_0), 0, 12345 }, /* MOVE.W (xxx).L,Dn */ -{ CPUFUNC(op_303a_0), 0, 12346 }, /* MOVE.W (d16,PC),Dn */ -{ CPUFUNC(op_303b_0), 0, 12347 }, /* MOVE.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_303c_0), 0, 12348 }, /* MOVE.W #.W,Dn */ -{ CPUFUNC_FF(op_3040_0), 0, 12352 }, /* MOVEA.W Dn,An */ -{ CPUFUNC_FF(op_3048_0), 0, 12360 }, /* MOVEA.W An,An */ -{ CPUFUNC_FF(op_3050_0), 0, 12368 }, /* MOVEA.W (An),An */ -{ CPUFUNC_FF(op_3058_0), 0, 12376 }, /* MOVEA.W (An)+,An */ -{ CPUFUNC_FF(op_3060_0), 0, 12384 }, /* MOVEA.W -(An),An */ -{ CPUFUNC_FF(op_3068_0), 0, 12392 }, /* MOVEA.W (d16,An),An */ -{ CPUFUNC_FF(op_3070_0), 0, 12400 }, /* MOVEA.W (d8,An,Xn),An */ -{ CPUFUNC_FF(op_3078_0), 0, 12408 }, /* MOVEA.W (xxx).W,An */ -{ CPUFUNC_FF(op_3079_0), 0, 12409 }, /* MOVEA.W (xxx).L,An */ -{ CPUFUNC_FF(op_307a_0), 0, 12410 }, /* MOVEA.W (d16,PC),An */ -{ CPUFUNC_FF(op_307b_0), 0, 12411 }, /* MOVEA.W (d8,PC,Xn),An */ -{ CPUFUNC_FF(op_307c_0), 0, 12412 }, /* MOVEA.W #.W,An */ -{ CPUFUNC(op_3080_0), 0, 12416 }, /* MOVE.W Dn,(An) */ -{ CPUFUNC(op_3088_0), 0, 12424 }, /* MOVE.W An,(An) */ -{ CPUFUNC(op_3090_0), 0, 12432 }, /* MOVE.W (An),(An) */ -{ CPUFUNC(op_3098_0), 0, 12440 }, /* MOVE.W (An)+,(An) */ -{ CPUFUNC(op_30a0_0), 0, 12448 }, /* MOVE.W -(An),(An) */ -{ CPUFUNC(op_30a8_0), 0, 12456 }, /* MOVE.W (d16,An),(An) */ -{ CPUFUNC(op_30b0_0), 0, 12464 }, /* MOVE.W (d8,An,Xn),(An) */ -{ CPUFUNC(op_30b8_0), 0, 12472 }, /* MOVE.W (xxx).W,(An) */ -{ CPUFUNC(op_30b9_0), 0, 12473 }, /* MOVE.W (xxx).L,(An) */ -{ CPUFUNC(op_30ba_0), 0, 12474 }, /* MOVE.W (d16,PC),(An) */ -{ CPUFUNC(op_30bb_0), 0, 12475 }, /* MOVE.W (d8,PC,Xn),(An) */ -{ CPUFUNC(op_30bc_0), 0, 12476 }, /* MOVE.W #.W,(An) */ -{ CPUFUNC(op_30c0_0), 0, 12480 }, /* MOVE.W Dn,(An)+ */ -{ CPUFUNC(op_30c8_0), 0, 12488 }, /* MOVE.W An,(An)+ */ -{ CPUFUNC(op_30d0_0), 0, 12496 }, /* MOVE.W (An),(An)+ */ -{ CPUFUNC(op_30d8_0), 0, 12504 }, /* MOVE.W (An)+,(An)+ */ -{ CPUFUNC(op_30e0_0), 0, 12512 }, /* MOVE.W -(An),(An)+ */ -{ CPUFUNC(op_30e8_0), 0, 12520 }, /* MOVE.W (d16,An),(An)+ */ -{ CPUFUNC(op_30f0_0), 0, 12528 }, /* MOVE.W (d8,An,Xn),(An)+ */ -{ CPUFUNC(op_30f8_0), 0, 12536 }, /* MOVE.W (xxx).W,(An)+ */ -{ CPUFUNC(op_30f9_0), 0, 12537 }, /* MOVE.W (xxx).L,(An)+ */ -{ CPUFUNC(op_30fa_0), 0, 12538 }, /* MOVE.W (d16,PC),(An)+ */ -{ CPUFUNC(op_30fb_0), 0, 12539 }, /* MOVE.W (d8,PC,Xn),(An)+ */ -{ CPUFUNC(op_30fc_0), 0, 12540 }, /* MOVE.W #.W,(An)+ */ -{ CPUFUNC(op_3100_0), 0, 12544 }, /* MOVE.W Dn,-(An) */ -{ CPUFUNC(op_3108_0), 0, 12552 }, /* MOVE.W An,-(An) */ -{ CPUFUNC(op_3110_0), 0, 12560 }, /* MOVE.W (An),-(An) */ -{ CPUFUNC(op_3118_0), 0, 12568 }, /* MOVE.W (An)+,-(An) */ -{ CPUFUNC(op_3120_0), 0, 12576 }, /* MOVE.W -(An),-(An) */ -{ CPUFUNC(op_3128_0), 0, 12584 }, /* MOVE.W (d16,An),-(An) */ -{ CPUFUNC(op_3130_0), 0, 12592 }, /* MOVE.W (d8,An,Xn),-(An) */ -{ CPUFUNC(op_3138_0), 0, 12600 }, /* MOVE.W (xxx).W,-(An) */ -{ CPUFUNC(op_3139_0), 0, 12601 }, /* MOVE.W (xxx).L,-(An) */ -{ CPUFUNC(op_313a_0), 0, 12602 }, /* MOVE.W (d16,PC),-(An) */ -{ CPUFUNC(op_313b_0), 0, 12603 }, /* MOVE.W (d8,PC,Xn),-(An) */ -{ CPUFUNC(op_313c_0), 0, 12604 }, /* MOVE.W #.W,-(An) */ -{ CPUFUNC(op_3140_0), 0, 12608 }, /* MOVE.W Dn,(d16,An) */ -{ CPUFUNC(op_3148_0), 0, 12616 }, /* MOVE.W An,(d16,An) */ -{ CPUFUNC(op_3150_0), 0, 12624 }, /* MOVE.W (An),(d16,An) */ -{ CPUFUNC(op_3158_0), 0, 12632 }, /* MOVE.W (An)+,(d16,An) */ -{ CPUFUNC(op_3160_0), 0, 12640 }, /* MOVE.W -(An),(d16,An) */ -{ CPUFUNC(op_3168_0), 0, 12648 }, /* MOVE.W (d16,An),(d16,An) */ -{ CPUFUNC(op_3170_0), 0, 12656 }, /* MOVE.W (d8,An,Xn),(d16,An) */ -{ CPUFUNC(op_3178_0), 0, 12664 }, /* MOVE.W (xxx).W,(d16,An) */ -{ CPUFUNC(op_3179_0), 0, 12665 }, /* MOVE.W (xxx).L,(d16,An) */ -{ CPUFUNC(op_317a_0), 0, 12666 }, /* MOVE.W (d16,PC),(d16,An) */ -{ CPUFUNC(op_317b_0), 0, 12667 }, /* MOVE.W (d8,PC,Xn),(d16,An) */ -{ CPUFUNC(op_317c_0), 0, 12668 }, /* MOVE.W #.W,(d16,An) */ -{ CPUFUNC(op_3180_0), 0, 12672 }, /* MOVE.W Dn,(d8,An,Xn) */ -{ CPUFUNC(op_3188_0), 0, 12680 }, /* MOVE.W An,(d8,An,Xn) */ -{ CPUFUNC(op_3190_0), 0, 12688 }, /* MOVE.W (An),(d8,An,Xn) */ -{ CPUFUNC(op_3198_0), 0, 12696 }, /* MOVE.W (An)+,(d8,An,Xn) */ -{ CPUFUNC(op_31a0_0), 0, 12704 }, /* MOVE.W -(An),(d8,An,Xn) */ -{ CPUFUNC(op_31a8_0), 0, 12712 }, /* MOVE.W (d16,An),(d8,An,Xn) */ -{ CPUFUNC(op_31b0_0), 0, 12720 }, /* MOVE.W (d8,An,Xn),(d8,An,Xn) */ -{ CPUFUNC(op_31b8_0), 0, 12728 }, /* MOVE.W (xxx).W,(d8,An,Xn) */ -{ CPUFUNC(op_31b9_0), 0, 12729 }, /* MOVE.W (xxx).L,(d8,An,Xn) */ -{ CPUFUNC(op_31ba_0), 0, 12730 }, /* MOVE.W (d16,PC),(d8,An,Xn) */ -{ CPUFUNC(op_31bb_0), 0, 12731 }, /* MOVE.W (d8,PC,Xn),(d8,An,Xn) */ -{ CPUFUNC(op_31bc_0), 0, 12732 }, /* MOVE.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_31c0_0), 0, 12736 }, /* MOVE.W Dn,(xxx).W */ -{ CPUFUNC(op_31c8_0), 0, 12744 }, /* MOVE.W An,(xxx).W */ -{ CPUFUNC(op_31d0_0), 0, 12752 }, /* MOVE.W (An),(xxx).W */ -{ CPUFUNC(op_31d8_0), 0, 12760 }, /* MOVE.W (An)+,(xxx).W */ -{ CPUFUNC(op_31e0_0), 0, 12768 }, /* MOVE.W -(An),(xxx).W */ -{ CPUFUNC(op_31e8_0), 0, 12776 }, /* MOVE.W (d16,An),(xxx).W */ -{ CPUFUNC(op_31f0_0), 0, 12784 }, /* MOVE.W (d8,An,Xn),(xxx).W */ -{ CPUFUNC(op_31f8_0), 0, 12792 }, /* MOVE.W (xxx).W,(xxx).W */ -{ CPUFUNC(op_31f9_0), 0, 12793 }, /* MOVE.W (xxx).L,(xxx).W */ -{ CPUFUNC(op_31fa_0), 0, 12794 }, /* MOVE.W (d16,PC),(xxx).W */ -{ CPUFUNC(op_31fb_0), 0, 12795 }, /* MOVE.W (d8,PC,Xn),(xxx).W */ -{ CPUFUNC(op_31fc_0), 0, 12796 }, /* MOVE.W #.W,(xxx).W */ -{ CPUFUNC(op_33c0_0), 0, 13248 }, /* MOVE.W Dn,(xxx).L */ -{ CPUFUNC(op_33c8_0), 0, 13256 }, /* MOVE.W An,(xxx).L */ -{ CPUFUNC(op_33d0_0), 0, 13264 }, /* MOVE.W (An),(xxx).L */ -{ CPUFUNC(op_33d8_0), 0, 13272 }, /* MOVE.W (An)+,(xxx).L */ -{ CPUFUNC(op_33e0_0), 0, 13280 }, /* MOVE.W -(An),(xxx).L */ -{ CPUFUNC(op_33e8_0), 0, 13288 }, /* MOVE.W (d16,An),(xxx).L */ -{ CPUFUNC(op_33f0_0), 0, 13296 }, /* MOVE.W (d8,An,Xn),(xxx).L */ -{ CPUFUNC(op_33f8_0), 0, 13304 }, /* MOVE.W (xxx).W,(xxx).L */ -{ CPUFUNC(op_33f9_0), 0, 13305 }, /* MOVE.W (xxx).L,(xxx).L */ -{ CPUFUNC(op_33fa_0), 0, 13306 }, /* MOVE.W (d16,PC),(xxx).L */ -{ CPUFUNC(op_33fb_0), 0, 13307 }, /* MOVE.W (d8,PC,Xn),(xxx).L */ -{ CPUFUNC(op_33fc_0), 0, 13308 }, /* MOVE.W #.W,(xxx).L */ -{ CPUFUNC(op_4000_0), 0, 16384 }, /* NEGX.B Dn */ -{ CPUFUNC(op_4010_0), 0, 16400 }, /* NEGX.B (An) */ -{ CPUFUNC(op_4018_0), 0, 16408 }, /* NEGX.B (An)+ */ -{ CPUFUNC(op_4020_0), 0, 16416 }, /* NEGX.B -(An) */ -{ CPUFUNC(op_4028_0), 0, 16424 }, /* NEGX.B (d16,An) */ -{ CPUFUNC(op_4030_0), 0, 16432 }, /* NEGX.B (d8,An,Xn) */ -{ CPUFUNC(op_4038_0), 0, 16440 }, /* NEGX.B (xxx).W */ -{ CPUFUNC(op_4039_0), 0, 16441 }, /* NEGX.B (xxx).L */ -{ CPUFUNC(op_4040_0), 0, 16448 }, /* NEGX.W Dn */ -{ CPUFUNC(op_4050_0), 0, 16464 }, /* NEGX.W (An) */ -{ CPUFUNC(op_4058_0), 0, 16472 }, /* NEGX.W (An)+ */ -{ CPUFUNC(op_4060_0), 0, 16480 }, /* NEGX.W -(An) */ -{ CPUFUNC(op_4068_0), 0, 16488 }, /* NEGX.W (d16,An) */ -{ CPUFUNC(op_4070_0), 0, 16496 }, /* NEGX.W (d8,An,Xn) */ -{ CPUFUNC(op_4078_0), 0, 16504 }, /* NEGX.W (xxx).W */ -{ CPUFUNC(op_4079_0), 0, 16505 }, /* NEGX.W (xxx).L */ -{ CPUFUNC(op_4080_0), 0, 16512 }, /* NEGX.L Dn */ -{ CPUFUNC(op_4090_0), 0, 16528 }, /* NEGX.L (An) */ -{ CPUFUNC(op_4098_0), 0, 16536 }, /* NEGX.L (An)+ */ -{ CPUFUNC(op_40a0_0), 0, 16544 }, /* NEGX.L -(An) */ -{ CPUFUNC(op_40a8_0), 0, 16552 }, /* NEGX.L (d16,An) */ -{ CPUFUNC(op_40b0_0), 0, 16560 }, /* NEGX.L (d8,An,Xn) */ -{ CPUFUNC(op_40b8_0), 0, 16568 }, /* NEGX.L (xxx).W */ -{ CPUFUNC(op_40b9_0), 0, 16569 }, /* NEGX.L (xxx).L */ -{ CPUFUNC_FF(op_40c0_0), 0, 16576 }, /* MVSR2.W Dn */ -{ CPUFUNC_FF(op_40d0_0), 0, 16592 }, /* MVSR2.W (An) */ -{ CPUFUNC_FF(op_40d8_0), 0, 16600 }, /* MVSR2.W (An)+ */ -{ CPUFUNC_FF(op_40e0_0), 0, 16608 }, /* MVSR2.W -(An) */ -{ CPUFUNC_FF(op_40e8_0), 0, 16616 }, /* MVSR2.W (d16,An) */ -{ CPUFUNC_FF(op_40f0_0), 0, 16624 }, /* MVSR2.W (d8,An,Xn) */ -{ CPUFUNC_FF(op_40f8_0), 0, 16632 }, /* MVSR2.W (xxx).W */ -{ CPUFUNC_FF(op_40f9_0), 0, 16633 }, /* MVSR2.W (xxx).L */ -{ CPUFUNC(op_4100_0), 0, 16640 }, /* CHK.L Dn,Dn */ -{ CPUFUNC(op_4110_0), 0, 16656 }, /* CHK.L (An),Dn */ -{ CPUFUNC(op_4118_0), 0, 16664 }, /* CHK.L (An)+,Dn */ -{ CPUFUNC(op_4120_0), 0, 16672 }, /* CHK.L -(An),Dn */ -{ CPUFUNC(op_4128_0), 0, 16680 }, /* CHK.L (d16,An),Dn */ -{ CPUFUNC(op_4130_0), 0, 16688 }, /* CHK.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_4138_0), 0, 16696 }, /* CHK.L (xxx).W,Dn */ -{ CPUFUNC(op_4139_0), 0, 16697 }, /* CHK.L (xxx).L,Dn */ -{ CPUFUNC(op_413a_0), 0, 16698 }, /* CHK.L (d16,PC),Dn */ -{ CPUFUNC(op_413b_0), 0, 16699 }, /* CHK.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_413c_0), 0, 16700 }, /* CHK.L #.L,Dn */ -{ CPUFUNC(op_4180_0), 0, 16768 }, /* CHK.W Dn,Dn */ -{ CPUFUNC(op_4190_0), 0, 16784 }, /* CHK.W (An),Dn */ -{ CPUFUNC(op_4198_0), 0, 16792 }, /* CHK.W (An)+,Dn */ -{ CPUFUNC(op_41a0_0), 0, 16800 }, /* CHK.W -(An),Dn */ -{ CPUFUNC(op_41a8_0), 0, 16808 }, /* CHK.W (d16,An),Dn */ -{ CPUFUNC(op_41b0_0), 0, 16816 }, /* CHK.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_41b8_0), 0, 16824 }, /* CHK.W (xxx).W,Dn */ -{ CPUFUNC(op_41b9_0), 0, 16825 }, /* CHK.W (xxx).L,Dn */ -{ CPUFUNC(op_41ba_0), 0, 16826 }, /* CHK.W (d16,PC),Dn */ -{ CPUFUNC(op_41bb_0), 0, 16827 }, /* CHK.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_41bc_0), 0, 16828 }, /* CHK.W #.W,Dn */ -{ CPUFUNC_FF(op_41d0_0), 0, 16848 }, /* LEA.L (An),An */ -{ CPUFUNC_FF(op_41e8_0), 0, 16872 }, /* LEA.L (d16,An),An */ -{ CPUFUNC_FF(op_41f0_0), 0, 16880 }, /* LEA.L (d8,An,Xn),An */ -{ CPUFUNC_FF(op_41f8_0), 0, 16888 }, /* LEA.L (xxx).W,An */ -{ CPUFUNC_FF(op_41f9_0), 0, 16889 }, /* LEA.L (xxx).L,An */ -{ CPUFUNC_FF(op_41fa_0), 0, 16890 }, /* LEA.L (d16,PC),An */ -{ CPUFUNC_FF(op_41fb_0), 0, 16891 }, /* LEA.L (d8,PC,Xn),An */ -{ CPUFUNC(op_4200_0), 0, 16896 }, /* CLR.B Dn */ -{ CPUFUNC(op_4210_0), 0, 16912 }, /* CLR.B (An) */ -{ CPUFUNC(op_4218_0), 0, 16920 }, /* CLR.B (An)+ */ -{ CPUFUNC(op_4220_0), 0, 16928 }, /* CLR.B -(An) */ -{ CPUFUNC(op_4228_0), 0, 16936 }, /* CLR.B (d16,An) */ -{ CPUFUNC(op_4230_0), 0, 16944 }, /* CLR.B (d8,An,Xn) */ -{ CPUFUNC(op_4238_0), 0, 16952 }, /* CLR.B (xxx).W */ -{ CPUFUNC(op_4239_0), 0, 16953 }, /* CLR.B (xxx).L */ -{ CPUFUNC(op_4240_0), 0, 16960 }, /* CLR.W Dn */ -{ CPUFUNC(op_4250_0), 0, 16976 }, /* CLR.W (An) */ -{ CPUFUNC(op_4258_0), 0, 16984 }, /* CLR.W (An)+ */ -{ CPUFUNC(op_4260_0), 0, 16992 }, /* CLR.W -(An) */ -{ CPUFUNC(op_4268_0), 0, 17000 }, /* CLR.W (d16,An) */ -{ CPUFUNC(op_4270_0), 0, 17008 }, /* CLR.W (d8,An,Xn) */ -{ CPUFUNC(op_4278_0), 0, 17016 }, /* CLR.W (xxx).W */ -{ CPUFUNC(op_4279_0), 0, 17017 }, /* CLR.W (xxx).L */ -{ CPUFUNC(op_4280_0), 0, 17024 }, /* CLR.L Dn */ -{ CPUFUNC(op_4290_0), 0, 17040 }, /* CLR.L (An) */ -{ CPUFUNC(op_4298_0), 0, 17048 }, /* CLR.L (An)+ */ -{ CPUFUNC(op_42a0_0), 0, 17056 }, /* CLR.L -(An) */ -{ CPUFUNC(op_42a8_0), 0, 17064 }, /* CLR.L (d16,An) */ -{ CPUFUNC(op_42b0_0), 0, 17072 }, /* CLR.L (d8,An,Xn) */ -{ CPUFUNC(op_42b8_0), 0, 17080 }, /* CLR.L (xxx).W */ -{ CPUFUNC(op_42b9_0), 0, 17081 }, /* CLR.L (xxx).L */ -{ CPUFUNC_FF(op_42c0_0), 0, 17088 }, /* MVSR2.B Dn */ -{ CPUFUNC_FF(op_42d0_0), 0, 17104 }, /* MVSR2.B (An) */ -{ CPUFUNC_FF(op_42d8_0), 0, 17112 }, /* MVSR2.B (An)+ */ -{ CPUFUNC_FF(op_42e0_0), 0, 17120 }, /* MVSR2.B -(An) */ -{ CPUFUNC_FF(op_42e8_0), 0, 17128 }, /* MVSR2.B (d16,An) */ -{ CPUFUNC_FF(op_42f0_0), 0, 17136 }, /* MVSR2.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_42f8_0), 0, 17144 }, /* MVSR2.B (xxx).W */ -{ CPUFUNC_FF(op_42f9_0), 0, 17145 }, /* MVSR2.B (xxx).L */ -{ CPUFUNC(op_4400_0), 0, 17408 }, /* NEG.B Dn */ -{ CPUFUNC(op_4410_0), 0, 17424 }, /* NEG.B (An) */ -{ CPUFUNC(op_4418_0), 0, 17432 }, /* NEG.B (An)+ */ -{ CPUFUNC(op_4420_0), 0, 17440 }, /* NEG.B -(An) */ -{ CPUFUNC(op_4428_0), 0, 17448 }, /* NEG.B (d16,An) */ -{ CPUFUNC(op_4430_0), 0, 17456 }, /* NEG.B (d8,An,Xn) */ -{ CPUFUNC(op_4438_0), 0, 17464 }, /* NEG.B (xxx).W */ -{ CPUFUNC(op_4439_0), 0, 17465 }, /* NEG.B (xxx).L */ -{ CPUFUNC(op_4440_0), 0, 17472 }, /* NEG.W Dn */ -{ CPUFUNC(op_4450_0), 0, 17488 }, /* NEG.W (An) */ -{ CPUFUNC(op_4458_0), 0, 17496 }, /* NEG.W (An)+ */ -{ CPUFUNC(op_4460_0), 0, 17504 }, /* NEG.W -(An) */ -{ CPUFUNC(op_4468_0), 0, 17512 }, /* NEG.W (d16,An) */ -{ CPUFUNC(op_4470_0), 0, 17520 }, /* NEG.W (d8,An,Xn) */ -{ CPUFUNC(op_4478_0), 0, 17528 }, /* NEG.W (xxx).W */ -{ CPUFUNC(op_4479_0), 0, 17529 }, /* NEG.W (xxx).L */ -{ CPUFUNC(op_4480_0), 0, 17536 }, /* NEG.L Dn */ -{ CPUFUNC(op_4490_0), 0, 17552 }, /* NEG.L (An) */ -{ CPUFUNC(op_4498_0), 0, 17560 }, /* NEG.L (An)+ */ -{ CPUFUNC(op_44a0_0), 0, 17568 }, /* NEG.L -(An) */ -{ CPUFUNC(op_44a8_0), 0, 17576 }, /* NEG.L (d16,An) */ -{ CPUFUNC(op_44b0_0), 0, 17584 }, /* NEG.L (d8,An,Xn) */ -{ CPUFUNC(op_44b8_0), 0, 17592 }, /* NEG.L (xxx).W */ -{ CPUFUNC(op_44b9_0), 0, 17593 }, /* NEG.L (xxx).L */ -{ CPUFUNC(op_44c0_0), 0, 17600 }, /* MV2SR.B Dn */ -{ CPUFUNC(op_44d0_0), 0, 17616 }, /* MV2SR.B (An) */ -{ CPUFUNC(op_44d8_0), 0, 17624 }, /* MV2SR.B (An)+ */ -{ CPUFUNC(op_44e0_0), 0, 17632 }, /* MV2SR.B -(An) */ -{ CPUFUNC(op_44e8_0), 0, 17640 }, /* MV2SR.B (d16,An) */ -{ CPUFUNC(op_44f0_0), 0, 17648 }, /* MV2SR.B (d8,An,Xn) */ -{ CPUFUNC(op_44f8_0), 0, 17656 }, /* MV2SR.B (xxx).W */ -{ CPUFUNC(op_44f9_0), 0, 17657 }, /* MV2SR.B (xxx).L */ -{ CPUFUNC(op_44fa_0), 0, 17658 }, /* MV2SR.B (d16,PC) */ -{ CPUFUNC(op_44fb_0), 0, 17659 }, /* MV2SR.B (d8,PC,Xn) */ -{ CPUFUNC(op_44fc_0), 0, 17660 }, /* MV2SR.B #.B */ -{ CPUFUNC(op_4600_0), 0, 17920 }, /* NOT.B Dn */ -{ CPUFUNC(op_4610_0), 0, 17936 }, /* NOT.B (An) */ -{ CPUFUNC(op_4618_0), 0, 17944 }, /* NOT.B (An)+ */ -{ CPUFUNC(op_4620_0), 0, 17952 }, /* NOT.B -(An) */ -{ CPUFUNC(op_4628_0), 0, 17960 }, /* NOT.B (d16,An) */ -{ CPUFUNC(op_4630_0), 0, 17968 }, /* NOT.B (d8,An,Xn) */ -{ CPUFUNC(op_4638_0), 0, 17976 }, /* NOT.B (xxx).W */ -{ CPUFUNC(op_4639_0), 0, 17977 }, /* NOT.B (xxx).L */ -{ CPUFUNC(op_4640_0), 0, 17984 }, /* NOT.W Dn */ -{ CPUFUNC(op_4650_0), 0, 18000 }, /* NOT.W (An) */ -{ CPUFUNC(op_4658_0), 0, 18008 }, /* NOT.W (An)+ */ -{ CPUFUNC(op_4660_0), 0, 18016 }, /* NOT.W -(An) */ -{ CPUFUNC(op_4668_0), 0, 18024 }, /* NOT.W (d16,An) */ -{ CPUFUNC(op_4670_0), 0, 18032 }, /* NOT.W (d8,An,Xn) */ -{ CPUFUNC(op_4678_0), 0, 18040 }, /* NOT.W (xxx).W */ -{ CPUFUNC(op_4679_0), 0, 18041 }, /* NOT.W (xxx).L */ -{ CPUFUNC(op_4680_0), 0, 18048 }, /* NOT.L Dn */ -{ CPUFUNC(op_4690_0), 0, 18064 }, /* NOT.L (An) */ -{ CPUFUNC(op_4698_0), 0, 18072 }, /* NOT.L (An)+ */ -{ CPUFUNC(op_46a0_0), 0, 18080 }, /* NOT.L -(An) */ -{ CPUFUNC(op_46a8_0), 0, 18088 }, /* NOT.L (d16,An) */ -{ CPUFUNC(op_46b0_0), 0, 18096 }, /* NOT.L (d8,An,Xn) */ -{ CPUFUNC(op_46b8_0), 0, 18104 }, /* NOT.L (xxx).W */ -{ CPUFUNC(op_46b9_0), 0, 18105 }, /* NOT.L (xxx).L */ -{ CPUFUNC(op_46c0_0), 0, 18112 }, /* MV2SR.W Dn */ -{ CPUFUNC(op_46d0_0), 0, 18128 }, /* MV2SR.W (An) */ -{ CPUFUNC(op_46d8_0), 0, 18136 }, /* MV2SR.W (An)+ */ -{ CPUFUNC(op_46e0_0), 0, 18144 }, /* MV2SR.W -(An) */ -{ CPUFUNC(op_46e8_0), 0, 18152 }, /* MV2SR.W (d16,An) */ -{ CPUFUNC(op_46f0_0), 0, 18160 }, /* MV2SR.W (d8,An,Xn) */ -{ CPUFUNC(op_46f8_0), 0, 18168 }, /* MV2SR.W (xxx).W */ -{ CPUFUNC(op_46f9_0), 0, 18169 }, /* MV2SR.W (xxx).L */ -{ CPUFUNC(op_46fa_0), 0, 18170 }, /* MV2SR.W (d16,PC) */ -{ CPUFUNC(op_46fb_0), 0, 18171 }, /* MV2SR.W (d8,PC,Xn) */ -{ CPUFUNC(op_46fc_0), 0, 18172 }, /* MV2SR.W #.W */ -{ CPUFUNC(op_4800_1), 0, 18432 }, /* NBCD.B Dn */ -{ CPUFUNC_FF(op_4808_0), 0, 18440 }, /* LINK.L An,#.L */ -{ CPUFUNC(op_4810_1), 0, 18448 }, /* NBCD.B (An) */ -{ CPUFUNC(op_4818_1), 0, 18456 }, /* NBCD.B (An)+ */ -{ CPUFUNC(op_4820_1), 0, 18464 }, /* NBCD.B -(An) */ -{ CPUFUNC(op_4828_1), 0, 18472 }, /* NBCD.B (d16,An) */ -{ CPUFUNC(op_4830_1), 0, 18480 }, /* NBCD.B (d8,An,Xn) */ -{ CPUFUNC(op_4838_1), 0, 18488 }, /* NBCD.B (xxx).W */ -{ CPUFUNC(op_4839_1), 0, 18489 }, /* NBCD.B (xxx).L */ -{ CPUFUNC(op_4840_0), 0, 18496 }, /* SWAP.W Dn */ -{ CPUFUNC_FF(op_4848_0), 0, 18504 }, /* BKPT.L # */ -{ CPUFUNC_FF(op_4850_0), 0, 18512 }, /* PEA.L (An) */ -{ CPUFUNC_FF(op_4868_0), 0, 18536 }, /* PEA.L (d16,An) */ -{ CPUFUNC_FF(op_4870_0), 0, 18544 }, /* PEA.L (d8,An,Xn) */ -{ CPUFUNC_FF(op_4878_0), 0, 18552 }, /* PEA.L (xxx).W */ -{ CPUFUNC_FF(op_4879_0), 0, 18553 }, /* PEA.L (xxx).L */ -{ CPUFUNC_FF(op_487a_0), 0, 18554 }, /* PEA.L (d16,PC) */ -{ CPUFUNC_FF(op_487b_0), 0, 18555 }, /* PEA.L (d8,PC,Xn) */ -{ CPUFUNC(op_4880_0), 0, 18560 }, /* EXT.W Dn */ -{ CPUFUNC_FF(op_4890_0), 0, 18576 }, /* MVMLE.W #.W,(An) */ -{ CPUFUNC_FF(op_48a0_0), 0, 18592 }, /* MVMLE.W #.W,-(An) */ -{ CPUFUNC_FF(op_48a8_0), 0, 18600 }, /* MVMLE.W #.W,(d16,An) */ -{ CPUFUNC_FF(op_48b0_0), 0, 18608 }, /* MVMLE.W #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_48b8_0), 0, 18616 }, /* MVMLE.W #.W,(xxx).W */ -{ CPUFUNC_FF(op_48b9_0), 0, 18617 }, /* MVMLE.W #.W,(xxx).L */ -{ CPUFUNC(op_48c0_0), 0, 18624 }, /* EXT.L Dn */ -{ CPUFUNC_FF(op_48d0_0), 0, 18640 }, /* MVMLE.L #.W,(An) */ -{ CPUFUNC_FF(op_48e0_0), 0, 18656 }, /* MVMLE.L #.W,-(An) */ -{ CPUFUNC_FF(op_48e8_0), 0, 18664 }, /* MVMLE.L #.W,(d16,An) */ -{ CPUFUNC_FF(op_48f0_0), 0, 18672 }, /* MVMLE.L #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_48f8_0), 0, 18680 }, /* MVMLE.L #.W,(xxx).W */ -{ CPUFUNC_FF(op_48f9_0), 0, 18681 }, /* MVMLE.L #.W,(xxx).L */ -{ CPUFUNC(op_49c0_0), 0, 18880 }, /* EXT.B Dn */ -{ CPUFUNC(op_4a00_0), 0, 18944 }, /* TST.B Dn */ -{ CPUFUNC(op_4a10_0), 0, 18960 }, /* TST.B (An) */ -{ CPUFUNC(op_4a18_0), 0, 18968 }, /* TST.B (An)+ */ -{ CPUFUNC(op_4a20_0), 0, 18976 }, /* TST.B -(An) */ -{ CPUFUNC(op_4a28_0), 0, 18984 }, /* TST.B (d16,An) */ -{ CPUFUNC(op_4a30_0), 0, 18992 }, /* TST.B (d8,An,Xn) */ -{ CPUFUNC(op_4a38_0), 0, 19000 }, /* TST.B (xxx).W */ -{ CPUFUNC(op_4a39_0), 0, 19001 }, /* TST.B (xxx).L */ -{ CPUFUNC(op_4a3a_0), 0, 19002 }, /* TST.B (d16,PC) */ -{ CPUFUNC(op_4a3b_0), 0, 19003 }, /* TST.B (d8,PC,Xn) */ -{ CPUFUNC(op_4a3c_0), 0, 19004 }, /* TST.B #.B */ -{ CPUFUNC(op_4a40_0), 0, 19008 }, /* TST.W Dn */ -{ CPUFUNC(op_4a48_0), 0, 19016 }, /* TST.W An */ -{ CPUFUNC(op_4a50_0), 0, 19024 }, /* TST.W (An) */ -{ CPUFUNC(op_4a58_0), 0, 19032 }, /* TST.W (An)+ */ -{ CPUFUNC(op_4a60_0), 0, 19040 }, /* TST.W -(An) */ -{ CPUFUNC(op_4a68_0), 0, 19048 }, /* TST.W (d16,An) */ -{ CPUFUNC(op_4a70_0), 0, 19056 }, /* TST.W (d8,An,Xn) */ -{ CPUFUNC(op_4a78_0), 0, 19064 }, /* TST.W (xxx).W */ -{ CPUFUNC(op_4a79_0), 0, 19065 }, /* TST.W (xxx).L */ -{ CPUFUNC(op_4a7a_0), 0, 19066 }, /* TST.W (d16,PC) */ -{ CPUFUNC(op_4a7b_0), 0, 19067 }, /* TST.W (d8,PC,Xn) */ -{ CPUFUNC(op_4a7c_0), 0, 19068 }, /* TST.W #.W */ -{ CPUFUNC(op_4a80_0), 0, 19072 }, /* TST.L Dn */ -{ CPUFUNC(op_4a88_0), 0, 19080 }, /* TST.L An */ -{ CPUFUNC(op_4a90_0), 0, 19088 }, /* TST.L (An) */ -{ CPUFUNC(op_4a98_0), 0, 19096 }, /* TST.L (An)+ */ -{ CPUFUNC(op_4aa0_0), 0, 19104 }, /* TST.L -(An) */ -{ CPUFUNC(op_4aa8_0), 0, 19112 }, /* TST.L (d16,An) */ -{ CPUFUNC(op_4ab0_0), 0, 19120 }, /* TST.L (d8,An,Xn) */ -{ CPUFUNC(op_4ab8_0), 0, 19128 }, /* TST.L (xxx).W */ -{ CPUFUNC(op_4ab9_0), 0, 19129 }, /* TST.L (xxx).L */ -{ CPUFUNC(op_4aba_0), 0, 19130 }, /* TST.L (d16,PC) */ -{ CPUFUNC(op_4abb_0), 0, 19131 }, /* TST.L (d8,PC,Xn) */ -{ CPUFUNC(op_4abc_0), 0, 19132 }, /* TST.L #.L */ -{ CPUFUNC(op_4ac0_0), 0, 19136 }, /* TAS.B Dn */ -{ CPUFUNC(op_4ad0_0), 0, 19152 }, /* TAS.B (An) */ -{ CPUFUNC(op_4ad8_0), 0, 19160 }, /* TAS.B (An)+ */ -{ CPUFUNC(op_4ae0_0), 0, 19168 }, /* TAS.B -(An) */ -{ CPUFUNC(op_4ae8_0), 0, 19176 }, /* TAS.B (d16,An) */ -{ CPUFUNC(op_4af0_0), 0, 19184 }, /* TAS.B (d8,An,Xn) */ -{ CPUFUNC(op_4af8_0), 0, 19192 }, /* TAS.B (xxx).W */ -{ CPUFUNC(op_4af9_0), 0, 19193 }, /* TAS.B (xxx).L */ -{ CPUFUNC(op_4c00_0), 0, 19456 }, /* MULL.L #.W,Dn */ -{ CPUFUNC(op_4c10_0), 0, 19472 }, /* MULL.L #.W,(An) */ -{ CPUFUNC(op_4c18_0), 0, 19480 }, /* MULL.L #.W,(An)+ */ -{ CPUFUNC(op_4c20_0), 0, 19488 }, /* MULL.L #.W,-(An) */ -{ CPUFUNC(op_4c28_0), 0, 19496 }, /* MULL.L #.W,(d16,An) */ -{ CPUFUNC(op_4c30_0), 0, 19504 }, /* MULL.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_4c38_0), 0, 19512 }, /* MULL.L #.W,(xxx).W */ -{ CPUFUNC(op_4c39_0), 0, 19513 }, /* MULL.L #.W,(xxx).L */ -{ CPUFUNC(op_4c3a_0), 0, 19514 }, /* MULL.L #.W,(d16,PC) */ -{ CPUFUNC(op_4c3b_0), 0, 19515 }, /* MULL.L #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_4c3c_0), 0, 19516 }, /* MULL.L #.W,#.L */ -{ CPUFUNC(op_4c40_0), 0, 19520 }, /* DIVL.L #.W,Dn */ -{ CPUFUNC(op_4c50_0), 0, 19536 }, /* DIVL.L #.W,(An) */ -{ CPUFUNC(op_4c58_0), 0, 19544 }, /* DIVL.L #.W,(An)+ */ -{ CPUFUNC(op_4c60_0), 0, 19552 }, /* DIVL.L #.W,-(An) */ -{ CPUFUNC(op_4c68_0), 0, 19560 }, /* DIVL.L #.W,(d16,An) */ -{ CPUFUNC(op_4c70_0), 0, 19568 }, /* DIVL.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_4c78_0), 0, 19576 }, /* DIVL.L #.W,(xxx).W */ -{ CPUFUNC(op_4c79_0), 0, 19577 }, /* DIVL.L #.W,(xxx).L */ -{ CPUFUNC(op_4c7a_0), 0, 19578 }, /* DIVL.L #.W,(d16,PC) */ -{ CPUFUNC(op_4c7b_0), 0, 19579 }, /* DIVL.L #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_4c7c_0), 0, 19580 }, /* DIVL.L #.W,#.L */ -{ CPUFUNC_FF(op_4c90_0), 0, 19600 }, /* MVMEL.W #.W,(An) */ -{ CPUFUNC_FF(op_4c98_0), 0, 19608 }, /* MVMEL.W #.W,(An)+ */ -{ CPUFUNC_FF(op_4ca8_0), 0, 19624 }, /* MVMEL.W #.W,(d16,An) */ -{ CPUFUNC_FF(op_4cb0_0), 0, 19632 }, /* MVMEL.W #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_4cb8_0), 0, 19640 }, /* MVMEL.W #.W,(xxx).W */ -{ CPUFUNC_FF(op_4cb9_0), 0, 19641 }, /* MVMEL.W #.W,(xxx).L */ -{ CPUFUNC_FF(op_4cba_0), 0, 19642 }, /* MVMEL.W #.W,(d16,PC) */ -{ CPUFUNC_FF(op_4cbb_0), 0, 19643 }, /* MVMEL.W #.W,(d8,PC,Xn) */ -{ CPUFUNC_FF(op_4cd0_0), 0, 19664 }, /* MVMEL.L #.W,(An) */ -{ CPUFUNC_FF(op_4cd8_0), 0, 19672 }, /* MVMEL.L #.W,(An)+ */ -{ CPUFUNC_FF(op_4ce8_0), 0, 19688 }, /* MVMEL.L #.W,(d16,An) */ -{ CPUFUNC_FF(op_4cf0_0), 0, 19696 }, /* MVMEL.L #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_4cf8_0), 0, 19704 }, /* MVMEL.L #.W,(xxx).W */ -{ CPUFUNC_FF(op_4cf9_0), 0, 19705 }, /* MVMEL.L #.W,(xxx).L */ -{ CPUFUNC_FF(op_4cfa_0), 0, 19706 }, /* MVMEL.L #.W,(d16,PC) */ -{ CPUFUNC_FF(op_4cfb_0), 0, 19707 }, /* MVMEL.L #.W,(d8,PC,Xn) */ -{ CPUFUNC_FF(op_4e40_0), 0, 20032 }, /* TRAP.L # */ -{ CPUFUNC_FF(op_4e50_0), 0, 20048 }, /* LINK.W An,#.W */ -{ CPUFUNC_FF(op_4e58_0), 0, 20056 }, /* UNLK.L An */ -{ CPUFUNC_FF(op_4e60_0), 0, 20064 }, /* MVR2USP.L An */ -{ CPUFUNC_FF(op_4e68_0), 0, 20072 }, /* MVUSP2R.L An */ -{ CPUFUNC_FF(op_4e70_0), 0, 20080 }, /* RESET.L */ -{ CPUFUNC_FF(op_4e71_0), 0, 20081 }, /* NOP.L */ -{ CPUFUNC(op_4e72_0), 0, 20082 }, /* STOP.L #.W */ -{ CPUFUNC(op_4e73_0), 0, 20083 }, /* RTE.L */ -{ CPUFUNC_FF(op_4e74_0), 0, 20084 }, /* RTD.L #.W */ -{ CPUFUNC_FF(op_4e75_0), 0, 20085 }, /* RTS.L */ -{ CPUFUNC_FF(op_4e76_0), 0, 20086 }, /* TRAPV.L */ -{ CPUFUNC(op_4e77_0), 0, 20087 }, /* RTR.L */ -{ CPUFUNC_FF(op_4e7a_0), 0, 20090 }, /* MOVEC2.L #.W */ -{ CPUFUNC_FF(op_4e7b_0), 0, 20091 }, /* MOVE2C.L #.W */ -{ CPUFUNC_FF(op_4e90_0), 0, 20112 }, /* JSR.L (An) */ -{ CPUFUNC_FF(op_4ea8_0), 0, 20136 }, /* JSR.L (d16,An) */ -{ CPUFUNC_FF(op_4eb0_0), 0, 20144 }, /* JSR.L (d8,An,Xn) */ -{ CPUFUNC_FF(op_4eb8_0), 0, 20152 }, /* JSR.L (xxx).W */ -{ CPUFUNC_FF(op_4eb9_0), 0, 20153 }, /* JSR.L (xxx).L */ -{ CPUFUNC_FF(op_4eba_0), 0, 20154 }, /* JSR.L (d16,PC) */ -{ CPUFUNC_FF(op_4ebb_0), 0, 20155 }, /* JSR.L (d8,PC,Xn) */ -{ CPUFUNC_FF(op_4ed0_0), 0, 20176 }, /* JMP.L (An) */ -{ CPUFUNC_FF(op_4ee8_0), 0, 20200 }, /* JMP.L (d16,An) */ -{ CPUFUNC_FF(op_4ef0_0), 0, 20208 }, /* JMP.L (d8,An,Xn) */ -{ CPUFUNC_FF(op_4ef8_0), 0, 20216 }, /* JMP.L (xxx).W */ -{ CPUFUNC_FF(op_4ef9_0), 0, 20217 }, /* JMP.L (xxx).L */ -{ CPUFUNC_FF(op_4efa_0), 0, 20218 }, /* JMP.L (d16,PC) */ -{ CPUFUNC_FF(op_4efb_0), 0, 20219 }, /* JMP.L (d8,PC,Xn) */ -{ CPUFUNC(op_5000_0), 0, 20480 }, /* ADD.B #,Dn */ -{ CPUFUNC(op_5010_0), 0, 20496 }, /* ADD.B #,(An) */ -{ CPUFUNC(op_5018_0), 0, 20504 }, /* ADD.B #,(An)+ */ -{ CPUFUNC(op_5020_0), 0, 20512 }, /* ADD.B #,-(An) */ -{ CPUFUNC(op_5028_0), 0, 20520 }, /* ADD.B #,(d16,An) */ -{ CPUFUNC(op_5030_0), 0, 20528 }, /* ADD.B #,(d8,An,Xn) */ -{ CPUFUNC(op_5038_0), 0, 20536 }, /* ADD.B #,(xxx).W */ -{ CPUFUNC(op_5039_0), 0, 20537 }, /* ADD.B #,(xxx).L */ -{ CPUFUNC(op_5040_0), 0, 20544 }, /* ADD.W #,Dn */ -{ CPUFUNC_FF(op_5048_0), 0, 20552 }, /* ADDA.W #,An */ -{ CPUFUNC(op_5050_0), 0, 20560 }, /* ADD.W #,(An) */ -{ CPUFUNC(op_5058_0), 0, 20568 }, /* ADD.W #,(An)+ */ -{ CPUFUNC(op_5060_0), 0, 20576 }, /* ADD.W #,-(An) */ -{ CPUFUNC(op_5068_0), 0, 20584 }, /* ADD.W #,(d16,An) */ -{ CPUFUNC(op_5070_0), 0, 20592 }, /* ADD.W #,(d8,An,Xn) */ -{ CPUFUNC(op_5078_0), 0, 20600 }, /* ADD.W #,(xxx).W */ -{ CPUFUNC(op_5079_0), 0, 20601 }, /* ADD.W #,(xxx).L */ -{ CPUFUNC(op_5080_0), 0, 20608 }, /* ADD.L #,Dn */ -{ CPUFUNC_FF(op_5088_0), 0, 20616 }, /* ADDA.L #,An */ -{ CPUFUNC(op_5090_0), 0, 20624 }, /* ADD.L #,(An) */ -{ CPUFUNC(op_5098_0), 0, 20632 }, /* ADD.L #,(An)+ */ -{ CPUFUNC(op_50a0_0), 0, 20640 }, /* ADD.L #,-(An) */ -{ CPUFUNC(op_50a8_0), 0, 20648 }, /* ADD.L #,(d16,An) */ -{ CPUFUNC(op_50b0_0), 0, 20656 }, /* ADD.L #,(d8,An,Xn) */ -{ CPUFUNC(op_50b8_0), 0, 20664 }, /* ADD.L #,(xxx).W */ -{ CPUFUNC(op_50b9_0), 0, 20665 }, /* ADD.L #,(xxx).L */ -{ CPUFUNC_FF(op_50c0_0), 0, 20672 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_50c8_0), 0, 20680 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_50d0_0), 0, 20688 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_50d8_0), 0, 20696 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_50e0_0), 0, 20704 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_50e8_0), 0, 20712 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_50f0_0), 0, 20720 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_50f8_0), 0, 20728 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_50f9_0), 0, 20729 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_50fa_0), 0, 20730 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_50fb_0), 0, 20731 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_50fc_0), 0, 20732 }, /* TRAPcc.L */ -{ CPUFUNC(op_5100_0), 0, 20736 }, /* SUB.B #,Dn */ -{ CPUFUNC(op_5110_0), 0, 20752 }, /* SUB.B #,(An) */ -{ CPUFUNC(op_5118_0), 0, 20760 }, /* SUB.B #,(An)+ */ -{ CPUFUNC(op_5120_0), 0, 20768 }, /* SUB.B #,-(An) */ -{ CPUFUNC(op_5128_0), 0, 20776 }, /* SUB.B #,(d16,An) */ -{ CPUFUNC(op_5130_0), 0, 20784 }, /* SUB.B #,(d8,An,Xn) */ -{ CPUFUNC(op_5138_0), 0, 20792 }, /* SUB.B #,(xxx).W */ -{ CPUFUNC(op_5139_0), 0, 20793 }, /* SUB.B #,(xxx).L */ -{ CPUFUNC(op_5140_0), 0, 20800 }, /* SUB.W #,Dn */ -{ CPUFUNC_FF(op_5148_0), 0, 20808 }, /* SUBA.W #,An */ -{ CPUFUNC(op_5150_0), 0, 20816 }, /* SUB.W #,(An) */ -{ CPUFUNC(op_5158_0), 0, 20824 }, /* SUB.W #,(An)+ */ -{ CPUFUNC(op_5160_0), 0, 20832 }, /* SUB.W #,-(An) */ -{ CPUFUNC(op_5168_0), 0, 20840 }, /* SUB.W #,(d16,An) */ -{ CPUFUNC(op_5170_0), 0, 20848 }, /* SUB.W #,(d8,An,Xn) */ -{ CPUFUNC(op_5178_0), 0, 20856 }, /* SUB.W #,(xxx).W */ -{ CPUFUNC(op_5179_0), 0, 20857 }, /* SUB.W #,(xxx).L */ -{ CPUFUNC(op_5180_0), 0, 20864 }, /* SUB.L #,Dn */ -{ CPUFUNC_FF(op_5188_0), 0, 20872 }, /* SUBA.L #,An */ -{ CPUFUNC(op_5190_0), 0, 20880 }, /* SUB.L #,(An) */ -{ CPUFUNC(op_5198_0), 0, 20888 }, /* SUB.L #,(An)+ */ -{ CPUFUNC(op_51a0_0), 0, 20896 }, /* SUB.L #,-(An) */ -{ CPUFUNC(op_51a8_0), 0, 20904 }, /* SUB.L #,(d16,An) */ -{ CPUFUNC(op_51b0_0), 0, 20912 }, /* SUB.L #,(d8,An,Xn) */ -{ CPUFUNC(op_51b8_0), 0, 20920 }, /* SUB.L #,(xxx).W */ -{ CPUFUNC(op_51b9_0), 0, 20921 }, /* SUB.L #,(xxx).L */ -{ CPUFUNC_FF(op_51c0_0), 0, 20928 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_51c8_0), 0, 20936 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_51d0_0), 0, 20944 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_51d8_0), 0, 20952 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_51e0_0), 0, 20960 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_51e8_0), 0, 20968 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_51f0_0), 0, 20976 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_51f8_0), 0, 20984 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_51f9_0), 0, 20985 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_51fa_0), 0, 20986 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_51fb_0), 0, 20987 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_51fc_0), 0, 20988 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_52c0_0), 0, 21184 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_52c8_0), 0, 21192 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_52d0_0), 0, 21200 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_52d8_0), 0, 21208 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_52e0_0), 0, 21216 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_52e8_0), 0, 21224 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_52f0_0), 0, 21232 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_52f8_0), 0, 21240 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_52f9_0), 0, 21241 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_52fa_0), 0, 21242 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_52fb_0), 0, 21243 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_52fc_0), 0, 21244 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_53c0_0), 0, 21440 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_53c8_0), 0, 21448 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_53d0_0), 0, 21456 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_53d8_0), 0, 21464 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_53e0_0), 0, 21472 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_53e8_0), 0, 21480 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_53f0_0), 0, 21488 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_53f8_0), 0, 21496 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_53f9_0), 0, 21497 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_53fa_0), 0, 21498 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_53fb_0), 0, 21499 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_53fc_0), 0, 21500 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_54c0_0), 0, 21696 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_54c8_0), 0, 21704 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_54d0_0), 0, 21712 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_54d8_0), 0, 21720 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_54e0_0), 0, 21728 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_54e8_0), 0, 21736 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_54f0_0), 0, 21744 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_54f8_0), 0, 21752 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_54f9_0), 0, 21753 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_54fa_0), 0, 21754 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_54fb_0), 0, 21755 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_54fc_0), 0, 21756 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_55c0_0), 0, 21952 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_55c8_0), 0, 21960 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_55d0_0), 0, 21968 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_55d8_0), 0, 21976 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_55e0_0), 0, 21984 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_55e8_0), 0, 21992 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_55f0_0), 0, 22000 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_55f8_0), 0, 22008 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_55f9_0), 0, 22009 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_55fa_0), 0, 22010 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_55fb_0), 0, 22011 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_55fc_0), 0, 22012 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_56c0_0), 0, 22208 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_56c8_0), 0, 22216 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_56d0_0), 0, 22224 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_56d8_0), 0, 22232 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_56e0_0), 0, 22240 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_56e8_0), 0, 22248 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_56f0_0), 0, 22256 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_56f8_0), 0, 22264 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_56f9_0), 0, 22265 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_56fa_0), 0, 22266 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_56fb_0), 0, 22267 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_56fc_0), 0, 22268 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_57c0_0), 0, 22464 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_57c8_0), 0, 22472 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_57d0_0), 0, 22480 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_57d8_0), 0, 22488 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_57e0_0), 0, 22496 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_57e8_0), 0, 22504 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_57f0_0), 0, 22512 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_57f8_0), 0, 22520 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_57f9_0), 0, 22521 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_57fa_0), 0, 22522 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_57fb_0), 0, 22523 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_57fc_0), 0, 22524 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_58c0_0), 0, 22720 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_58c8_0), 0, 22728 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_58d0_0), 0, 22736 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_58d8_0), 0, 22744 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_58e0_0), 0, 22752 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_58e8_0), 0, 22760 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_58f0_0), 0, 22768 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_58f8_0), 0, 22776 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_58f9_0), 0, 22777 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_58fa_0), 0, 22778 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_58fb_0), 0, 22779 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_58fc_0), 0, 22780 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_59c0_0), 0, 22976 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_59c8_0), 0, 22984 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_59d0_0), 0, 22992 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_59d8_0), 0, 23000 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_59e0_0), 0, 23008 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_59e8_0), 0, 23016 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_59f0_0), 0, 23024 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_59f8_0), 0, 23032 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_59f9_0), 0, 23033 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_59fa_0), 0, 23034 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_59fb_0), 0, 23035 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_59fc_0), 0, 23036 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_5ac0_0), 0, 23232 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_5ac8_0), 0, 23240 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_5ad0_0), 0, 23248 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_5ad8_0), 0, 23256 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_5ae0_0), 0, 23264 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_5ae8_0), 0, 23272 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_5af0_0), 0, 23280 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_5af8_0), 0, 23288 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_5af9_0), 0, 23289 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_5afa_0), 0, 23290 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_5afb_0), 0, 23291 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_5afc_0), 0, 23292 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_5bc0_0), 0, 23488 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_5bc8_0), 0, 23496 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_5bd0_0), 0, 23504 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_5bd8_0), 0, 23512 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_5be0_0), 0, 23520 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_5be8_0), 0, 23528 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_5bf0_0), 0, 23536 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_5bf8_0), 0, 23544 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_5bf9_0), 0, 23545 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_5bfa_0), 0, 23546 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_5bfb_0), 0, 23547 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_5bfc_0), 0, 23548 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_5cc0_0), 0, 23744 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_5cc8_0), 0, 23752 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_5cd0_0), 0, 23760 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_5cd8_0), 0, 23768 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_5ce0_0), 0, 23776 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_5ce8_0), 0, 23784 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_5cf0_0), 0, 23792 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_5cf8_0), 0, 23800 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_5cf9_0), 0, 23801 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_5cfa_0), 0, 23802 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_5cfb_0), 0, 23803 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_5cfc_0), 0, 23804 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_5dc0_0), 0, 24000 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_5dc8_0), 0, 24008 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_5dd0_0), 0, 24016 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_5dd8_0), 0, 24024 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_5de0_0), 0, 24032 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_5de8_0), 0, 24040 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_5df0_0), 0, 24048 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_5df8_0), 0, 24056 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_5df9_0), 0, 24057 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_5dfa_0), 0, 24058 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_5dfb_0), 0, 24059 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_5dfc_0), 0, 24060 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_5ec0_0), 0, 24256 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_5ec8_0), 0, 24264 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_5ed0_0), 0, 24272 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_5ed8_0), 0, 24280 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_5ee0_0), 0, 24288 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_5ee8_0), 0, 24296 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_5ef0_0), 0, 24304 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_5ef8_0), 0, 24312 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_5ef9_0), 0, 24313 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_5efa_0), 0, 24314 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_5efb_0), 0, 24315 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_5efc_0), 0, 24316 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_5fc0_0), 0, 24512 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_5fc8_0), 0, 24520 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_5fd0_0), 0, 24528 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_5fd8_0), 0, 24536 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_5fe0_0), 0, 24544 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_5fe8_0), 0, 24552 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_5ff0_0), 0, 24560 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_5ff8_0), 0, 24568 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_5ff9_0), 0, 24569 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_5ffa_0), 0, 24570 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_5ffb_0), 0, 24571 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_5ffc_0), 0, 24572 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_6000_0), 0, 24576 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6001_0), 0, 24577 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_60ff_0), 0, 24831 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6100_0), 0, 24832 }, /* BSR.W #.W */ -{ CPUFUNC_FF(op_6101_0), 0, 24833 }, /* BSR.B # */ -{ CPUFUNC_FF(op_61ff_0), 0, 25087 }, /* BSR.L #.L */ -{ CPUFUNC_FF(op_6200_0), 0, 25088 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6201_0), 0, 25089 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_62ff_0), 0, 25343 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6300_0), 0, 25344 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6301_0), 0, 25345 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_63ff_0), 0, 25599 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6400_0), 0, 25600 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6401_0), 0, 25601 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_64ff_0), 0, 25855 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6500_0), 0, 25856 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6501_0), 0, 25857 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_65ff_0), 0, 26111 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6600_0), 0, 26112 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6601_0), 0, 26113 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_66ff_0), 0, 26367 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6700_0), 0, 26368 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6701_0), 0, 26369 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_67ff_0), 0, 26623 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6800_0), 0, 26624 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6801_0), 0, 26625 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_68ff_0), 0, 26879 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6900_0), 0, 26880 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6901_0), 0, 26881 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_69ff_0), 0, 27135 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6a00_0), 0, 27136 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6a01_0), 0, 27137 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_6aff_0), 0, 27391 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6b00_0), 0, 27392 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6b01_0), 0, 27393 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_6bff_0), 0, 27647 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6c00_0), 0, 27648 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6c01_0), 0, 27649 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_6cff_0), 0, 27903 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6d00_0), 0, 27904 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6d01_0), 0, 27905 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_6dff_0), 0, 28159 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6e00_0), 0, 28160 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6e01_0), 0, 28161 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_6eff_0), 0, 28415 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6f00_0), 0, 28416 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6f01_0), 0, 28417 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_6fff_0), 0, 28671 }, /* Bcc.L #.L */ -{ CPUFUNC(op_7000_0), 0, 28672 }, /* MOVE.L #,Dn */ -{ CPUFUNC_FF(op_7100_0), 0, 28928 }, /* EMULOP_RETURN.L */ -{ CPUFUNC_FF(op_7101_0), 0, 28929 }, /* EMULOP.L # */ -{ CPUFUNC(op_8000_0), 0, 32768 }, /* OR.B Dn,Dn */ -{ CPUFUNC(op_8010_0), 0, 32784 }, /* OR.B (An),Dn */ -{ CPUFUNC(op_8018_0), 0, 32792 }, /* OR.B (An)+,Dn */ -{ CPUFUNC(op_8020_0), 0, 32800 }, /* OR.B -(An),Dn */ -{ CPUFUNC(op_8028_0), 0, 32808 }, /* OR.B (d16,An),Dn */ -{ CPUFUNC(op_8030_0), 0, 32816 }, /* OR.B (d8,An,Xn),Dn */ -{ CPUFUNC(op_8038_0), 0, 32824 }, /* OR.B (xxx).W,Dn */ -{ CPUFUNC(op_8039_0), 0, 32825 }, /* OR.B (xxx).L,Dn */ -{ CPUFUNC(op_803a_0), 0, 32826 }, /* OR.B (d16,PC),Dn */ -{ CPUFUNC(op_803b_0), 0, 32827 }, /* OR.B (d8,PC,Xn),Dn */ -{ CPUFUNC(op_803c_0), 0, 32828 }, /* OR.B #.B,Dn */ -{ CPUFUNC(op_8040_0), 0, 32832 }, /* OR.W Dn,Dn */ -{ CPUFUNC(op_8050_0), 0, 32848 }, /* OR.W (An),Dn */ -{ CPUFUNC(op_8058_0), 0, 32856 }, /* OR.W (An)+,Dn */ -{ CPUFUNC(op_8060_0), 0, 32864 }, /* OR.W -(An),Dn */ -{ CPUFUNC(op_8068_0), 0, 32872 }, /* OR.W (d16,An),Dn */ -{ CPUFUNC(op_8070_0), 0, 32880 }, /* OR.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_8078_0), 0, 32888 }, /* OR.W (xxx).W,Dn */ -{ CPUFUNC(op_8079_0), 0, 32889 }, /* OR.W (xxx).L,Dn */ -{ CPUFUNC(op_807a_0), 0, 32890 }, /* OR.W (d16,PC),Dn */ -{ CPUFUNC(op_807b_0), 0, 32891 }, /* OR.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_807c_0), 0, 32892 }, /* OR.W #.W,Dn */ -{ CPUFUNC(op_8080_0), 0, 32896 }, /* OR.L Dn,Dn */ -{ CPUFUNC(op_8090_0), 0, 32912 }, /* OR.L (An),Dn */ -{ CPUFUNC(op_8098_0), 0, 32920 }, /* OR.L (An)+,Dn */ -{ CPUFUNC(op_80a0_0), 0, 32928 }, /* OR.L -(An),Dn */ -{ CPUFUNC(op_80a8_0), 0, 32936 }, /* OR.L (d16,An),Dn */ -{ CPUFUNC(op_80b0_0), 0, 32944 }, /* OR.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_80b8_0), 0, 32952 }, /* OR.L (xxx).W,Dn */ -{ CPUFUNC(op_80b9_0), 0, 32953 }, /* OR.L (xxx).L,Dn */ -{ CPUFUNC(op_80ba_0), 0, 32954 }, /* OR.L (d16,PC),Dn */ -{ CPUFUNC(op_80bb_0), 0, 32955 }, /* OR.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_80bc_0), 0, 32956 }, /* OR.L #.L,Dn */ -{ CPUFUNC(op_80c0_0), 0, 32960 }, /* DIVU.W Dn,Dn */ -{ CPUFUNC(op_80d0_0), 0, 32976 }, /* DIVU.W (An),Dn */ -{ CPUFUNC(op_80d8_0), 0, 32984 }, /* DIVU.W (An)+,Dn */ -{ CPUFUNC(op_80e0_0), 0, 32992 }, /* DIVU.W -(An),Dn */ -{ CPUFUNC(op_80e8_0), 0, 33000 }, /* DIVU.W (d16,An),Dn */ -{ CPUFUNC(op_80f0_0), 0, 33008 }, /* DIVU.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_80f8_0), 0, 33016 }, /* DIVU.W (xxx).W,Dn */ -{ CPUFUNC(op_80f9_0), 0, 33017 }, /* DIVU.W (xxx).L,Dn */ -{ CPUFUNC(op_80fa_0), 0, 33018 }, /* DIVU.W (d16,PC),Dn */ -{ CPUFUNC(op_80fb_0), 0, 33019 }, /* DIVU.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_80fc_0), 0, 33020 }, /* DIVU.W #.W,Dn */ -{ CPUFUNC(op_8100_1), 0, 33024 }, /* SBCD.B Dn,Dn */ -{ CPUFUNC(op_8108_1), 0, 33032 }, /* SBCD.B -(An),-(An) */ -{ CPUFUNC(op_8110_0), 0, 33040 }, /* OR.B Dn,(An) */ -{ CPUFUNC(op_8118_0), 0, 33048 }, /* OR.B Dn,(An)+ */ -{ CPUFUNC(op_8120_0), 0, 33056 }, /* OR.B Dn,-(An) */ -{ CPUFUNC(op_8128_0), 0, 33064 }, /* OR.B Dn,(d16,An) */ -{ CPUFUNC(op_8130_0), 0, 33072 }, /* OR.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_8138_0), 0, 33080 }, /* OR.B Dn,(xxx).W */ -{ CPUFUNC(op_8139_0), 0, 33081 }, /* OR.B Dn,(xxx).L */ -{ CPUFUNC_FF(op_8140_0), 0, 33088 }, /* PACK.L Dn,Dn */ -{ CPUFUNC_FF(op_8148_0), 0, 33096 }, /* PACK.L -(An),-(An) */ -{ CPUFUNC(op_8150_0), 0, 33104 }, /* OR.W Dn,(An) */ -{ CPUFUNC(op_8158_0), 0, 33112 }, /* OR.W Dn,(An)+ */ -{ CPUFUNC(op_8160_0), 0, 33120 }, /* OR.W Dn,-(An) */ -{ CPUFUNC(op_8168_0), 0, 33128 }, /* OR.W Dn,(d16,An) */ -{ CPUFUNC(op_8170_0), 0, 33136 }, /* OR.W Dn,(d8,An,Xn) */ -{ CPUFUNC(op_8178_0), 0, 33144 }, /* OR.W Dn,(xxx).W */ -{ CPUFUNC(op_8179_0), 0, 33145 }, /* OR.W Dn,(xxx).L */ -{ CPUFUNC_FF(op_8180_0), 0, 33152 }, /* UNPK.L Dn,Dn */ -{ CPUFUNC_FF(op_8188_0), 0, 33160 }, /* UNPK.L -(An),-(An) */ -{ CPUFUNC(op_8190_0), 0, 33168 }, /* OR.L Dn,(An) */ -{ CPUFUNC(op_8198_0), 0, 33176 }, /* OR.L Dn,(An)+ */ -{ CPUFUNC(op_81a0_0), 0, 33184 }, /* OR.L Dn,-(An) */ -{ CPUFUNC(op_81a8_0), 0, 33192 }, /* OR.L Dn,(d16,An) */ -{ CPUFUNC(op_81b0_0), 0, 33200 }, /* OR.L Dn,(d8,An,Xn) */ -{ CPUFUNC(op_81b8_0), 0, 33208 }, /* OR.L Dn,(xxx).W */ -{ CPUFUNC(op_81b9_0), 0, 33209 }, /* OR.L Dn,(xxx).L */ -{ CPUFUNC(op_81c0_0), 0, 33216 }, /* DIVS.W Dn,Dn */ -{ CPUFUNC(op_81d0_0), 0, 33232 }, /* DIVS.W (An),Dn */ -{ CPUFUNC(op_81d8_0), 0, 33240 }, /* DIVS.W (An)+,Dn */ -{ CPUFUNC(op_81e0_0), 0, 33248 }, /* DIVS.W -(An),Dn */ -{ CPUFUNC(op_81e8_0), 0, 33256 }, /* DIVS.W (d16,An),Dn */ -{ CPUFUNC(op_81f0_0), 0, 33264 }, /* DIVS.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_81f8_0), 0, 33272 }, /* DIVS.W (xxx).W,Dn */ -{ CPUFUNC(op_81f9_0), 0, 33273 }, /* DIVS.W (xxx).L,Dn */ -{ CPUFUNC(op_81fa_0), 0, 33274 }, /* DIVS.W (d16,PC),Dn */ -{ CPUFUNC(op_81fb_0), 0, 33275 }, /* DIVS.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_81fc_0), 0, 33276 }, /* DIVS.W #.W,Dn */ -{ CPUFUNC(op_9000_0), 0, 36864 }, /* SUB.B Dn,Dn */ -{ CPUFUNC(op_9010_0), 0, 36880 }, /* SUB.B (An),Dn */ -{ CPUFUNC(op_9018_0), 0, 36888 }, /* SUB.B (An)+,Dn */ -{ CPUFUNC(op_9020_0), 0, 36896 }, /* SUB.B -(An),Dn */ -{ CPUFUNC(op_9028_0), 0, 36904 }, /* SUB.B (d16,An),Dn */ -{ CPUFUNC(op_9030_0), 0, 36912 }, /* SUB.B (d8,An,Xn),Dn */ -{ CPUFUNC(op_9038_0), 0, 36920 }, /* SUB.B (xxx).W,Dn */ -{ CPUFUNC(op_9039_0), 0, 36921 }, /* SUB.B (xxx).L,Dn */ -{ CPUFUNC(op_903a_0), 0, 36922 }, /* SUB.B (d16,PC),Dn */ -{ CPUFUNC(op_903b_0), 0, 36923 }, /* SUB.B (d8,PC,Xn),Dn */ -{ CPUFUNC(op_903c_0), 0, 36924 }, /* SUB.B #.B,Dn */ -{ CPUFUNC(op_9040_0), 0, 36928 }, /* SUB.W Dn,Dn */ -{ CPUFUNC(op_9048_0), 0, 36936 }, /* SUB.W An,Dn */ -{ CPUFUNC(op_9050_0), 0, 36944 }, /* SUB.W (An),Dn */ -{ CPUFUNC(op_9058_0), 0, 36952 }, /* SUB.W (An)+,Dn */ -{ CPUFUNC(op_9060_0), 0, 36960 }, /* SUB.W -(An),Dn */ -{ CPUFUNC(op_9068_0), 0, 36968 }, /* SUB.W (d16,An),Dn */ -{ CPUFUNC(op_9070_0), 0, 36976 }, /* SUB.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_9078_0), 0, 36984 }, /* SUB.W (xxx).W,Dn */ -{ CPUFUNC(op_9079_0), 0, 36985 }, /* SUB.W (xxx).L,Dn */ -{ CPUFUNC(op_907a_0), 0, 36986 }, /* SUB.W (d16,PC),Dn */ -{ CPUFUNC(op_907b_0), 0, 36987 }, /* SUB.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_907c_0), 0, 36988 }, /* SUB.W #.W,Dn */ -{ CPUFUNC(op_9080_0), 0, 36992 }, /* SUB.L Dn,Dn */ -{ CPUFUNC(op_9088_0), 0, 37000 }, /* SUB.L An,Dn */ -{ CPUFUNC(op_9090_0), 0, 37008 }, /* SUB.L (An),Dn */ -{ CPUFUNC(op_9098_0), 0, 37016 }, /* SUB.L (An)+,Dn */ -{ CPUFUNC(op_90a0_0), 0, 37024 }, /* SUB.L -(An),Dn */ -{ CPUFUNC(op_90a8_0), 0, 37032 }, /* SUB.L (d16,An),Dn */ -{ CPUFUNC(op_90b0_0), 0, 37040 }, /* SUB.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_90b8_0), 0, 37048 }, /* SUB.L (xxx).W,Dn */ -{ CPUFUNC(op_90b9_0), 0, 37049 }, /* SUB.L (xxx).L,Dn */ -{ CPUFUNC(op_90ba_0), 0, 37050 }, /* SUB.L (d16,PC),Dn */ -{ CPUFUNC(op_90bb_0), 0, 37051 }, /* SUB.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_90bc_0), 0, 37052 }, /* SUB.L #.L,Dn */ -{ CPUFUNC_FF(op_90c0_0), 0, 37056 }, /* SUBA.W Dn,An */ -{ CPUFUNC_FF(op_90c8_0), 0, 37064 }, /* SUBA.W An,An */ -{ CPUFUNC_FF(op_90d0_0), 0, 37072 }, /* SUBA.W (An),An */ -{ CPUFUNC_FF(op_90d8_0), 0, 37080 }, /* SUBA.W (An)+,An */ -{ CPUFUNC_FF(op_90e0_0), 0, 37088 }, /* SUBA.W -(An),An */ -{ CPUFUNC_FF(op_90e8_0), 0, 37096 }, /* SUBA.W (d16,An),An */ -{ CPUFUNC_FF(op_90f0_0), 0, 37104 }, /* SUBA.W (d8,An,Xn),An */ -{ CPUFUNC_FF(op_90f8_0), 0, 37112 }, /* SUBA.W (xxx).W,An */ -{ CPUFUNC_FF(op_90f9_0), 0, 37113 }, /* SUBA.W (xxx).L,An */ -{ CPUFUNC_FF(op_90fa_0), 0, 37114 }, /* SUBA.W (d16,PC),An */ -{ CPUFUNC_FF(op_90fb_0), 0, 37115 }, /* SUBA.W (d8,PC,Xn),An */ -{ CPUFUNC_FF(op_90fc_0), 0, 37116 }, /* SUBA.W #.W,An */ -{ CPUFUNC(op_9100_0), 0, 37120 }, /* SUBX.B Dn,Dn */ -{ CPUFUNC(op_9108_0), 0, 37128 }, /* SUBX.B -(An),-(An) */ -{ CPUFUNC(op_9110_0), 0, 37136 }, /* SUB.B Dn,(An) */ -{ CPUFUNC(op_9118_0), 0, 37144 }, /* SUB.B Dn,(An)+ */ -{ CPUFUNC(op_9120_0), 0, 37152 }, /* SUB.B Dn,-(An) */ -{ CPUFUNC(op_9128_0), 0, 37160 }, /* SUB.B Dn,(d16,An) */ -{ CPUFUNC(op_9130_0), 0, 37168 }, /* SUB.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_9138_0), 0, 37176 }, /* SUB.B Dn,(xxx).W */ -{ CPUFUNC(op_9139_0), 0, 37177 }, /* SUB.B Dn,(xxx).L */ -{ CPUFUNC(op_9140_0), 0, 37184 }, /* SUBX.W Dn,Dn */ -{ CPUFUNC(op_9148_0), 0, 37192 }, /* SUBX.W -(An),-(An) */ -{ CPUFUNC(op_9150_0), 0, 37200 }, /* SUB.W Dn,(An) */ -{ CPUFUNC(op_9158_0), 0, 37208 }, /* SUB.W Dn,(An)+ */ -{ CPUFUNC(op_9160_0), 0, 37216 }, /* SUB.W Dn,-(An) */ -{ CPUFUNC(op_9168_0), 0, 37224 }, /* SUB.W Dn,(d16,An) */ -{ CPUFUNC(op_9170_0), 0, 37232 }, /* SUB.W Dn,(d8,An,Xn) */ -{ CPUFUNC(op_9178_0), 0, 37240 }, /* SUB.W Dn,(xxx).W */ -{ CPUFUNC(op_9179_0), 0, 37241 }, /* SUB.W Dn,(xxx).L */ -{ CPUFUNC(op_9180_0), 0, 37248 }, /* SUBX.L Dn,Dn */ -{ CPUFUNC(op_9188_0), 0, 37256 }, /* SUBX.L -(An),-(An) */ -{ CPUFUNC(op_9190_0), 0, 37264 }, /* SUB.L Dn,(An) */ -{ CPUFUNC(op_9198_0), 0, 37272 }, /* SUB.L Dn,(An)+ */ -{ CPUFUNC(op_91a0_0), 0, 37280 }, /* SUB.L Dn,-(An) */ -{ CPUFUNC(op_91a8_0), 0, 37288 }, /* SUB.L Dn,(d16,An) */ -{ CPUFUNC(op_91b0_0), 0, 37296 }, /* SUB.L Dn,(d8,An,Xn) */ -{ CPUFUNC(op_91b8_0), 0, 37304 }, /* SUB.L Dn,(xxx).W */ -{ CPUFUNC(op_91b9_0), 0, 37305 }, /* SUB.L Dn,(xxx).L */ -{ CPUFUNC_FF(op_91c0_0), 0, 37312 }, /* SUBA.L Dn,An */ -{ CPUFUNC_FF(op_91c8_0), 0, 37320 }, /* SUBA.L An,An */ -{ CPUFUNC_FF(op_91d0_0), 0, 37328 }, /* SUBA.L (An),An */ -{ CPUFUNC_FF(op_91d8_0), 0, 37336 }, /* SUBA.L (An)+,An */ -{ CPUFUNC_FF(op_91e0_0), 0, 37344 }, /* SUBA.L -(An),An */ -{ CPUFUNC_FF(op_91e8_0), 0, 37352 }, /* SUBA.L (d16,An),An */ -{ CPUFUNC_FF(op_91f0_0), 0, 37360 }, /* SUBA.L (d8,An,Xn),An */ -{ CPUFUNC_FF(op_91f8_0), 0, 37368 }, /* SUBA.L (xxx).W,An */ -{ CPUFUNC_FF(op_91f9_0), 0, 37369 }, /* SUBA.L (xxx).L,An */ -{ CPUFUNC_FF(op_91fa_0), 0, 37370 }, /* SUBA.L (d16,PC),An */ -{ CPUFUNC_FF(op_91fb_0), 0, 37371 }, /* SUBA.L (d8,PC,Xn),An */ -{ CPUFUNC_FF(op_91fc_0), 0, 37372 }, /* SUBA.L #.L,An */ -{ CPUFUNC(op_b000_0), 0, 45056 }, /* CMP.B Dn,Dn */ -{ CPUFUNC(op_b010_0), 0, 45072 }, /* CMP.B (An),Dn */ -{ CPUFUNC(op_b018_0), 0, 45080 }, /* CMP.B (An)+,Dn */ -{ CPUFUNC(op_b020_0), 0, 45088 }, /* CMP.B -(An),Dn */ -{ CPUFUNC(op_b028_0), 0, 45096 }, /* CMP.B (d16,An),Dn */ -{ CPUFUNC(op_b030_0), 0, 45104 }, /* CMP.B (d8,An,Xn),Dn */ -{ CPUFUNC(op_b038_0), 0, 45112 }, /* CMP.B (xxx).W,Dn */ -{ CPUFUNC(op_b039_0), 0, 45113 }, /* CMP.B (xxx).L,Dn */ -{ CPUFUNC(op_b03a_0), 0, 45114 }, /* CMP.B (d16,PC),Dn */ -{ CPUFUNC(op_b03b_0), 0, 45115 }, /* CMP.B (d8,PC,Xn),Dn */ -{ CPUFUNC(op_b03c_0), 0, 45116 }, /* CMP.B #.B,Dn */ -{ CPUFUNC(op_b040_0), 0, 45120 }, /* CMP.W Dn,Dn */ -{ CPUFUNC(op_b048_0), 0, 45128 }, /* CMP.W An,Dn */ -{ CPUFUNC(op_b050_0), 0, 45136 }, /* CMP.W (An),Dn */ -{ CPUFUNC(op_b058_0), 0, 45144 }, /* CMP.W (An)+,Dn */ -{ CPUFUNC(op_b060_0), 0, 45152 }, /* CMP.W -(An),Dn */ -{ CPUFUNC(op_b068_0), 0, 45160 }, /* CMP.W (d16,An),Dn */ -{ CPUFUNC(op_b070_0), 0, 45168 }, /* CMP.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_b078_0), 0, 45176 }, /* CMP.W (xxx).W,Dn */ -{ CPUFUNC(op_b079_0), 0, 45177 }, /* CMP.W (xxx).L,Dn */ -{ CPUFUNC(op_b07a_0), 0, 45178 }, /* CMP.W (d16,PC),Dn */ -{ CPUFUNC(op_b07b_0), 0, 45179 }, /* CMP.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_b07c_0), 0, 45180 }, /* CMP.W #.W,Dn */ -{ CPUFUNC(op_b080_0), 0, 45184 }, /* CMP.L Dn,Dn */ -{ CPUFUNC(op_b088_0), 0, 45192 }, /* CMP.L An,Dn */ -{ CPUFUNC(op_b090_0), 0, 45200 }, /* CMP.L (An),Dn */ -{ CPUFUNC(op_b098_0), 0, 45208 }, /* CMP.L (An)+,Dn */ -{ CPUFUNC(op_b0a0_0), 0, 45216 }, /* CMP.L -(An),Dn */ -{ CPUFUNC(op_b0a8_0), 0, 45224 }, /* CMP.L (d16,An),Dn */ -{ CPUFUNC(op_b0b0_0), 0, 45232 }, /* CMP.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_b0b8_0), 0, 45240 }, /* CMP.L (xxx).W,Dn */ -{ CPUFUNC(op_b0b9_0), 0, 45241 }, /* CMP.L (xxx).L,Dn */ -{ CPUFUNC(op_b0ba_0), 0, 45242 }, /* CMP.L (d16,PC),Dn */ -{ CPUFUNC(op_b0bb_0), 0, 45243 }, /* CMP.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_b0bc_0), 0, 45244 }, /* CMP.L #.L,Dn */ -{ CPUFUNC(op_b0c0_0), 0, 45248 }, /* CMPA.W Dn,An */ -{ CPUFUNC(op_b0c8_0), 0, 45256 }, /* CMPA.W An,An */ -{ CPUFUNC(op_b0d0_0), 0, 45264 }, /* CMPA.W (An),An */ -{ CPUFUNC(op_b0d8_0), 0, 45272 }, /* CMPA.W (An)+,An */ -{ CPUFUNC(op_b0e0_0), 0, 45280 }, /* CMPA.W -(An),An */ -{ CPUFUNC(op_b0e8_0), 0, 45288 }, /* CMPA.W (d16,An),An */ -{ CPUFUNC(op_b0f0_0), 0, 45296 }, /* CMPA.W (d8,An,Xn),An */ -{ CPUFUNC(op_b0f8_0), 0, 45304 }, /* CMPA.W (xxx).W,An */ -{ CPUFUNC(op_b0f9_0), 0, 45305 }, /* CMPA.W (xxx).L,An */ -{ CPUFUNC(op_b0fa_0), 0, 45306 }, /* CMPA.W (d16,PC),An */ -{ CPUFUNC(op_b0fb_0), 0, 45307 }, /* CMPA.W (d8,PC,Xn),An */ -{ CPUFUNC(op_b0fc_0), 0, 45308 }, /* CMPA.W #.W,An */ -{ CPUFUNC(op_b100_0), 0, 45312 }, /* EOR.B Dn,Dn */ -{ CPUFUNC(op_b108_0), 0, 45320 }, /* CMPM.B (An)+,(An)+ */ -{ CPUFUNC(op_b110_0), 0, 45328 }, /* EOR.B Dn,(An) */ -{ CPUFUNC(op_b118_0), 0, 45336 }, /* EOR.B Dn,(An)+ */ -{ CPUFUNC(op_b120_0), 0, 45344 }, /* EOR.B Dn,-(An) */ -{ CPUFUNC(op_b128_0), 0, 45352 }, /* EOR.B Dn,(d16,An) */ -{ CPUFUNC(op_b130_0), 0, 45360 }, /* EOR.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_b138_0), 0, 45368 }, /* EOR.B Dn,(xxx).W */ -{ CPUFUNC(op_b139_0), 0, 45369 }, /* EOR.B Dn,(xxx).L */ -{ CPUFUNC(op_b140_0), 0, 45376 }, /* EOR.W Dn,Dn */ -{ CPUFUNC(op_b148_0), 0, 45384 }, /* CMPM.W (An)+,(An)+ */ -{ CPUFUNC(op_b150_0), 0, 45392 }, /* EOR.W Dn,(An) */ -{ CPUFUNC(op_b158_0), 0, 45400 }, /* EOR.W Dn,(An)+ */ -{ CPUFUNC(op_b160_0), 0, 45408 }, /* EOR.W Dn,-(An) */ -{ CPUFUNC(op_b168_0), 0, 45416 }, /* EOR.W Dn,(d16,An) */ -{ CPUFUNC(op_b170_0), 0, 45424 }, /* EOR.W Dn,(d8,An,Xn) */ -{ CPUFUNC(op_b178_0), 0, 45432 }, /* EOR.W Dn,(xxx).W */ -{ CPUFUNC(op_b179_0), 0, 45433 }, /* EOR.W Dn,(xxx).L */ -{ CPUFUNC(op_b180_0), 0, 45440 }, /* EOR.L Dn,Dn */ -{ CPUFUNC(op_b188_0), 0, 45448 }, /* CMPM.L (An)+,(An)+ */ -{ CPUFUNC(op_b190_0), 0, 45456 }, /* EOR.L Dn,(An) */ -{ CPUFUNC(op_b198_0), 0, 45464 }, /* EOR.L Dn,(An)+ */ -{ CPUFUNC(op_b1a0_0), 0, 45472 }, /* EOR.L Dn,-(An) */ -{ CPUFUNC(op_b1a8_0), 0, 45480 }, /* EOR.L Dn,(d16,An) */ -{ CPUFUNC(op_b1b0_0), 0, 45488 }, /* EOR.L Dn,(d8,An,Xn) */ -{ CPUFUNC(op_b1b8_0), 0, 45496 }, /* EOR.L Dn,(xxx).W */ -{ CPUFUNC(op_b1b9_0), 0, 45497 }, /* EOR.L Dn,(xxx).L */ -{ CPUFUNC(op_b1c0_0), 0, 45504 }, /* CMPA.L Dn,An */ -{ CPUFUNC(op_b1c8_0), 0, 45512 }, /* CMPA.L An,An */ -{ CPUFUNC(op_b1d0_0), 0, 45520 }, /* CMPA.L (An),An */ -{ CPUFUNC(op_b1d8_0), 0, 45528 }, /* CMPA.L (An)+,An */ -{ CPUFUNC(op_b1e0_0), 0, 45536 }, /* CMPA.L -(An),An */ -{ CPUFUNC(op_b1e8_0), 0, 45544 }, /* CMPA.L (d16,An),An */ -{ CPUFUNC(op_b1f0_0), 0, 45552 }, /* CMPA.L (d8,An,Xn),An */ -{ CPUFUNC(op_b1f8_0), 0, 45560 }, /* CMPA.L (xxx).W,An */ -{ CPUFUNC(op_b1f9_0), 0, 45561 }, /* CMPA.L (xxx).L,An */ -{ CPUFUNC(op_b1fa_0), 0, 45562 }, /* CMPA.L (d16,PC),An */ -{ CPUFUNC(op_b1fb_0), 0, 45563 }, /* CMPA.L (d8,PC,Xn),An */ -{ CPUFUNC(op_b1fc_0), 0, 45564 }, /* CMPA.L #.L,An */ -{ CPUFUNC(op_c000_0), 0, 49152 }, /* AND.B Dn,Dn */ -{ CPUFUNC(op_c010_0), 0, 49168 }, /* AND.B (An),Dn */ -{ CPUFUNC(op_c018_0), 0, 49176 }, /* AND.B (An)+,Dn */ -{ CPUFUNC(op_c020_0), 0, 49184 }, /* AND.B -(An),Dn */ -{ CPUFUNC(op_c028_0), 0, 49192 }, /* AND.B (d16,An),Dn */ -{ CPUFUNC(op_c030_0), 0, 49200 }, /* AND.B (d8,An,Xn),Dn */ -{ CPUFUNC(op_c038_0), 0, 49208 }, /* AND.B (xxx).W,Dn */ -{ CPUFUNC(op_c039_0), 0, 49209 }, /* AND.B (xxx).L,Dn */ -{ CPUFUNC(op_c03a_0), 0, 49210 }, /* AND.B (d16,PC),Dn */ -{ CPUFUNC(op_c03b_0), 0, 49211 }, /* AND.B (d8,PC,Xn),Dn */ -{ CPUFUNC(op_c03c_0), 0, 49212 }, /* AND.B #.B,Dn */ -{ CPUFUNC(op_c040_0), 0, 49216 }, /* AND.W Dn,Dn */ -{ CPUFUNC(op_c050_0), 0, 49232 }, /* AND.W (An),Dn */ -{ CPUFUNC(op_c058_0), 0, 49240 }, /* AND.W (An)+,Dn */ -{ CPUFUNC(op_c060_0), 0, 49248 }, /* AND.W -(An),Dn */ -{ CPUFUNC(op_c068_0), 0, 49256 }, /* AND.W (d16,An),Dn */ -{ CPUFUNC(op_c070_0), 0, 49264 }, /* AND.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_c078_0), 0, 49272 }, /* AND.W (xxx).W,Dn */ -{ CPUFUNC(op_c079_0), 0, 49273 }, /* AND.W (xxx).L,Dn */ -{ CPUFUNC(op_c07a_0), 0, 49274 }, /* AND.W (d16,PC),Dn */ -{ CPUFUNC(op_c07b_0), 0, 49275 }, /* AND.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_c07c_0), 0, 49276 }, /* AND.W #.W,Dn */ -{ CPUFUNC(op_c080_0), 0, 49280 }, /* AND.L Dn,Dn */ -{ CPUFUNC(op_c090_0), 0, 49296 }, /* AND.L (An),Dn */ -{ CPUFUNC(op_c098_0), 0, 49304 }, /* AND.L (An)+,Dn */ -{ CPUFUNC(op_c0a0_0), 0, 49312 }, /* AND.L -(An),Dn */ -{ CPUFUNC(op_c0a8_0), 0, 49320 }, /* AND.L (d16,An),Dn */ -{ CPUFUNC(op_c0b0_0), 0, 49328 }, /* AND.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_c0b8_0), 0, 49336 }, /* AND.L (xxx).W,Dn */ -{ CPUFUNC(op_c0b9_0), 0, 49337 }, /* AND.L (xxx).L,Dn */ -{ CPUFUNC(op_c0ba_0), 0, 49338 }, /* AND.L (d16,PC),Dn */ -{ CPUFUNC(op_c0bb_0), 0, 49339 }, /* AND.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_c0bc_0), 0, 49340 }, /* AND.L #.L,Dn */ -{ CPUFUNC(op_c0c0_0), 0, 49344 }, /* MULU.W Dn,Dn */ -{ CPUFUNC(op_c0d0_0), 0, 49360 }, /* MULU.W (An),Dn */ -{ CPUFUNC(op_c0d8_0), 0, 49368 }, /* MULU.W (An)+,Dn */ -{ CPUFUNC(op_c0e0_0), 0, 49376 }, /* MULU.W -(An),Dn */ -{ CPUFUNC(op_c0e8_0), 0, 49384 }, /* MULU.W (d16,An),Dn */ -{ CPUFUNC(op_c0f0_0), 0, 49392 }, /* MULU.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_c0f8_0), 0, 49400 }, /* MULU.W (xxx).W,Dn */ -{ CPUFUNC(op_c0f9_0), 0, 49401 }, /* MULU.W (xxx).L,Dn */ -{ CPUFUNC(op_c0fa_0), 0, 49402 }, /* MULU.W (d16,PC),Dn */ -{ CPUFUNC(op_c0fb_0), 0, 49403 }, /* MULU.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_c0fc_0), 0, 49404 }, /* MULU.W #.W,Dn */ -{ CPUFUNC(op_c100_1), 0, 49408 }, /* ABCD.B Dn,Dn */ -{ CPUFUNC(op_c108_1), 0, 49416 }, /* ABCD.B -(An),-(An) */ -{ CPUFUNC(op_c110_0), 0, 49424 }, /* AND.B Dn,(An) */ -{ CPUFUNC(op_c118_0), 0, 49432 }, /* AND.B Dn,(An)+ */ -{ CPUFUNC(op_c120_0), 0, 49440 }, /* AND.B Dn,-(An) */ -{ CPUFUNC(op_c128_0), 0, 49448 }, /* AND.B Dn,(d16,An) */ -{ CPUFUNC(op_c130_0), 0, 49456 }, /* AND.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_c138_0), 0, 49464 }, /* AND.B Dn,(xxx).W */ -{ CPUFUNC(op_c139_0), 0, 49465 }, /* AND.B Dn,(xxx).L */ -{ CPUFUNC_FF(op_c140_0), 0, 49472 }, /* EXG.L Dn,Dn */ -{ CPUFUNC_FF(op_c148_0), 0, 49480 }, /* EXG.L An,An */ -{ CPUFUNC(op_c150_0), 0, 49488 }, /* AND.W Dn,(An) */ -{ CPUFUNC(op_c158_0), 0, 49496 }, /* AND.W Dn,(An)+ */ -{ CPUFUNC(op_c160_0), 0, 49504 }, /* AND.W Dn,-(An) */ -{ CPUFUNC(op_c168_0), 0, 49512 }, /* AND.W Dn,(d16,An) */ -{ CPUFUNC(op_c170_0), 0, 49520 }, /* AND.W Dn,(d8,An,Xn) */ -{ CPUFUNC(op_c178_0), 0, 49528 }, /* AND.W Dn,(xxx).W */ -{ CPUFUNC(op_c179_0), 0, 49529 }, /* AND.W Dn,(xxx).L */ -{ CPUFUNC_FF(op_c188_0), 0, 49544 }, /* EXG.L Dn,An */ -{ CPUFUNC(op_c190_0), 0, 49552 }, /* AND.L Dn,(An) */ -{ CPUFUNC(op_c198_0), 0, 49560 }, /* AND.L Dn,(An)+ */ -{ CPUFUNC(op_c1a0_0), 0, 49568 }, /* AND.L Dn,-(An) */ -{ CPUFUNC(op_c1a8_0), 0, 49576 }, /* AND.L Dn,(d16,An) */ -{ CPUFUNC(op_c1b0_0), 0, 49584 }, /* AND.L Dn,(d8,An,Xn) */ -{ CPUFUNC(op_c1b8_0), 0, 49592 }, /* AND.L Dn,(xxx).W */ -{ CPUFUNC(op_c1b9_0), 0, 49593 }, /* AND.L Dn,(xxx).L */ -{ CPUFUNC(op_c1c0_0), 0, 49600 }, /* MULS.W Dn,Dn */ -{ CPUFUNC(op_c1d0_0), 0, 49616 }, /* MULS.W (An),Dn */ -{ CPUFUNC(op_c1d8_0), 0, 49624 }, /* MULS.W (An)+,Dn */ -{ CPUFUNC(op_c1e0_0), 0, 49632 }, /* MULS.W -(An),Dn */ -{ CPUFUNC(op_c1e8_0), 0, 49640 }, /* MULS.W (d16,An),Dn */ -{ CPUFUNC(op_c1f0_0), 0, 49648 }, /* MULS.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_c1f8_0), 0, 49656 }, /* MULS.W (xxx).W,Dn */ -{ CPUFUNC(op_c1f9_0), 0, 49657 }, /* MULS.W (xxx).L,Dn */ -{ CPUFUNC(op_c1fa_0), 0, 49658 }, /* MULS.W (d16,PC),Dn */ -{ CPUFUNC(op_c1fb_0), 0, 49659 }, /* MULS.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_c1fc_0), 0, 49660 }, /* MULS.W #.W,Dn */ -{ CPUFUNC(op_d000_0), 0, 53248 }, /* ADD.B Dn,Dn */ -{ CPUFUNC(op_d010_0), 0, 53264 }, /* ADD.B (An),Dn */ -{ CPUFUNC(op_d018_0), 0, 53272 }, /* ADD.B (An)+,Dn */ -{ CPUFUNC(op_d020_0), 0, 53280 }, /* ADD.B -(An),Dn */ -{ CPUFUNC(op_d028_0), 0, 53288 }, /* ADD.B (d16,An),Dn */ -{ CPUFUNC(op_d030_0), 0, 53296 }, /* ADD.B (d8,An,Xn),Dn */ -{ CPUFUNC(op_d038_0), 0, 53304 }, /* ADD.B (xxx).W,Dn */ -{ CPUFUNC(op_d039_0), 0, 53305 }, /* ADD.B (xxx).L,Dn */ -{ CPUFUNC(op_d03a_0), 0, 53306 }, /* ADD.B (d16,PC),Dn */ -{ CPUFUNC(op_d03b_0), 0, 53307 }, /* ADD.B (d8,PC,Xn),Dn */ -{ CPUFUNC(op_d03c_0), 0, 53308 }, /* ADD.B #.B,Dn */ -{ CPUFUNC(op_d040_0), 0, 53312 }, /* ADD.W Dn,Dn */ -{ CPUFUNC(op_d048_0), 0, 53320 }, /* ADD.W An,Dn */ -{ CPUFUNC(op_d050_0), 0, 53328 }, /* ADD.W (An),Dn */ -{ CPUFUNC(op_d058_0), 0, 53336 }, /* ADD.W (An)+,Dn */ -{ CPUFUNC(op_d060_0), 0, 53344 }, /* ADD.W -(An),Dn */ -{ CPUFUNC(op_d068_0), 0, 53352 }, /* ADD.W (d16,An),Dn */ -{ CPUFUNC(op_d070_0), 0, 53360 }, /* ADD.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_d078_0), 0, 53368 }, /* ADD.W (xxx).W,Dn */ -{ CPUFUNC(op_d079_0), 0, 53369 }, /* ADD.W (xxx).L,Dn */ -{ CPUFUNC(op_d07a_0), 0, 53370 }, /* ADD.W (d16,PC),Dn */ -{ CPUFUNC(op_d07b_0), 0, 53371 }, /* ADD.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_d07c_0), 0, 53372 }, /* ADD.W #.W,Dn */ -{ CPUFUNC(op_d080_0), 0, 53376 }, /* ADD.L Dn,Dn */ -{ CPUFUNC(op_d088_0), 0, 53384 }, /* ADD.L An,Dn */ -{ CPUFUNC(op_d090_0), 0, 53392 }, /* ADD.L (An),Dn */ -{ CPUFUNC(op_d098_0), 0, 53400 }, /* ADD.L (An)+,Dn */ -{ CPUFUNC(op_d0a0_0), 0, 53408 }, /* ADD.L -(An),Dn */ -{ CPUFUNC(op_d0a8_0), 0, 53416 }, /* ADD.L (d16,An),Dn */ -{ CPUFUNC(op_d0b0_0), 0, 53424 }, /* ADD.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_d0b8_0), 0, 53432 }, /* ADD.L (xxx).W,Dn */ -{ CPUFUNC(op_d0b9_0), 0, 53433 }, /* ADD.L (xxx).L,Dn */ -{ CPUFUNC(op_d0ba_0), 0, 53434 }, /* ADD.L (d16,PC),Dn */ -{ CPUFUNC(op_d0bb_0), 0, 53435 }, /* ADD.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_d0bc_0), 0, 53436 }, /* ADD.L #.L,Dn */ -{ CPUFUNC_FF(op_d0c0_0), 0, 53440 }, /* ADDA.W Dn,An */ -{ CPUFUNC_FF(op_d0c8_0), 0, 53448 }, /* ADDA.W An,An */ -{ CPUFUNC_FF(op_d0d0_0), 0, 53456 }, /* ADDA.W (An),An */ -{ CPUFUNC_FF(op_d0d8_0), 0, 53464 }, /* ADDA.W (An)+,An */ -{ CPUFUNC_FF(op_d0e0_0), 0, 53472 }, /* ADDA.W -(An),An */ -{ CPUFUNC_FF(op_d0e8_0), 0, 53480 }, /* ADDA.W (d16,An),An */ -{ CPUFUNC_FF(op_d0f0_0), 0, 53488 }, /* ADDA.W (d8,An,Xn),An */ -{ CPUFUNC_FF(op_d0f8_0), 0, 53496 }, /* ADDA.W (xxx).W,An */ -{ CPUFUNC_FF(op_d0f9_0), 0, 53497 }, /* ADDA.W (xxx).L,An */ -{ CPUFUNC_FF(op_d0fa_0), 0, 53498 }, /* ADDA.W (d16,PC),An */ -{ CPUFUNC_FF(op_d0fb_0), 0, 53499 }, /* ADDA.W (d8,PC,Xn),An */ -{ CPUFUNC_FF(op_d0fc_0), 0, 53500 }, /* ADDA.W #.W,An */ -{ CPUFUNC(op_d100_0), 0, 53504 }, /* ADDX.B Dn,Dn */ -{ CPUFUNC(op_d108_0), 0, 53512 }, /* ADDX.B -(An),-(An) */ -{ CPUFUNC(op_d110_0), 0, 53520 }, /* ADD.B Dn,(An) */ -{ CPUFUNC(op_d118_0), 0, 53528 }, /* ADD.B Dn,(An)+ */ -{ CPUFUNC(op_d120_0), 0, 53536 }, /* ADD.B Dn,-(An) */ -{ CPUFUNC(op_d128_0), 0, 53544 }, /* ADD.B Dn,(d16,An) */ -{ CPUFUNC(op_d130_0), 0, 53552 }, /* ADD.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_d138_0), 0, 53560 }, /* ADD.B Dn,(xxx).W */ -{ CPUFUNC(op_d139_0), 0, 53561 }, /* ADD.B Dn,(xxx).L */ -{ CPUFUNC(op_d140_0), 0, 53568 }, /* ADDX.W Dn,Dn */ -{ CPUFUNC(op_d148_0), 0, 53576 }, /* ADDX.W -(An),-(An) */ -{ CPUFUNC(op_d150_0), 0, 53584 }, /* ADD.W Dn,(An) */ -{ CPUFUNC(op_d158_0), 0, 53592 }, /* ADD.W Dn,(An)+ */ -{ CPUFUNC(op_d160_0), 0, 53600 }, /* ADD.W Dn,-(An) */ -{ CPUFUNC(op_d168_0), 0, 53608 }, /* ADD.W Dn,(d16,An) */ -{ CPUFUNC(op_d170_0), 0, 53616 }, /* ADD.W Dn,(d8,An,Xn) */ -{ CPUFUNC(op_d178_0), 0, 53624 }, /* ADD.W Dn,(xxx).W */ -{ CPUFUNC(op_d179_0), 0, 53625 }, /* ADD.W Dn,(xxx).L */ -{ CPUFUNC(op_d180_0), 0, 53632 }, /* ADDX.L Dn,Dn */ -{ CPUFUNC(op_d188_0), 0, 53640 }, /* ADDX.L -(An),-(An) */ -{ CPUFUNC(op_d190_0), 0, 53648 }, /* ADD.L Dn,(An) */ -{ CPUFUNC(op_d198_0), 0, 53656 }, /* ADD.L Dn,(An)+ */ -{ CPUFUNC(op_d1a0_0), 0, 53664 }, /* ADD.L Dn,-(An) */ -{ CPUFUNC(op_d1a8_0), 0, 53672 }, /* ADD.L Dn,(d16,An) */ -{ CPUFUNC(op_d1b0_0), 0, 53680 }, /* ADD.L Dn,(d8,An,Xn) */ -{ CPUFUNC(op_d1b8_0), 0, 53688 }, /* ADD.L Dn,(xxx).W */ -{ CPUFUNC(op_d1b9_0), 0, 53689 }, /* ADD.L Dn,(xxx).L */ -{ CPUFUNC_FF(op_d1c0_0), 0, 53696 }, /* ADDA.L Dn,An */ -{ CPUFUNC_FF(op_d1c8_0), 0, 53704 }, /* ADDA.L An,An */ -{ CPUFUNC_FF(op_d1d0_0), 0, 53712 }, /* ADDA.L (An),An */ -{ CPUFUNC_FF(op_d1d8_0), 0, 53720 }, /* ADDA.L (An)+,An */ -{ CPUFUNC_FF(op_d1e0_0), 0, 53728 }, /* ADDA.L -(An),An */ -{ CPUFUNC_FF(op_d1e8_0), 0, 53736 }, /* ADDA.L (d16,An),An */ -{ CPUFUNC_FF(op_d1f0_0), 0, 53744 }, /* ADDA.L (d8,An,Xn),An */ -{ CPUFUNC_FF(op_d1f8_0), 0, 53752 }, /* ADDA.L (xxx).W,An */ -{ CPUFUNC_FF(op_d1f9_0), 0, 53753 }, /* ADDA.L (xxx).L,An */ -{ CPUFUNC_FF(op_d1fa_0), 0, 53754 }, /* ADDA.L (d16,PC),An */ -{ CPUFUNC_FF(op_d1fb_0), 0, 53755 }, /* ADDA.L (d8,PC,Xn),An */ -{ CPUFUNC_FF(op_d1fc_0), 0, 53756 }, /* ADDA.L #.L,An */ -{ CPUFUNC(op_e000_0), 0, 57344 }, /* ASR.B #,Dn */ -{ CPUFUNC(op_e008_0), 0, 57352 }, /* LSR.B #,Dn */ -{ CPUFUNC(op_e010_0), 0, 57360 }, /* ROXR.B #,Dn */ -{ CPUFUNC(op_e018_0), 0, 57368 }, /* ROR.B #,Dn */ -{ CPUFUNC(op_e020_0), 0, 57376 }, /* ASR.B Dn,Dn */ -{ CPUFUNC(op_e028_0), 0, 57384 }, /* LSR.B Dn,Dn */ -{ CPUFUNC(op_e030_0), 0, 57392 }, /* ROXR.B Dn,Dn */ -{ CPUFUNC(op_e038_0), 0, 57400 }, /* ROR.B Dn,Dn */ -{ CPUFUNC(op_e040_0), 0, 57408 }, /* ASR.W #,Dn */ -{ CPUFUNC(op_e048_0), 0, 57416 }, /* LSR.W #,Dn */ -{ CPUFUNC(op_e050_0), 0, 57424 }, /* ROXR.W #,Dn */ -{ CPUFUNC(op_e058_0), 0, 57432 }, /* ROR.W #,Dn */ -{ CPUFUNC(op_e060_0), 0, 57440 }, /* ASR.W Dn,Dn */ -{ CPUFUNC(op_e068_0), 0, 57448 }, /* LSR.W Dn,Dn */ -{ CPUFUNC(op_e070_0), 0, 57456 }, /* ROXR.W Dn,Dn */ -{ CPUFUNC(op_e078_0), 0, 57464 }, /* ROR.W Dn,Dn */ -{ CPUFUNC(op_e080_0), 0, 57472 }, /* ASR.L #,Dn */ -{ CPUFUNC(op_e088_0), 0, 57480 }, /* LSR.L #,Dn */ -{ CPUFUNC(op_e090_0), 0, 57488 }, /* ROXR.L #,Dn */ -{ CPUFUNC(op_e098_0), 0, 57496 }, /* ROR.L #,Dn */ -{ CPUFUNC(op_e0a0_0), 0, 57504 }, /* ASR.L Dn,Dn */ -{ CPUFUNC(op_e0a8_0), 0, 57512 }, /* LSR.L Dn,Dn */ -{ CPUFUNC(op_e0b0_0), 0, 57520 }, /* ROXR.L Dn,Dn */ -{ CPUFUNC(op_e0b8_0), 0, 57528 }, /* ROR.L Dn,Dn */ -{ CPUFUNC(op_e0d0_0), 0, 57552 }, /* ASRW.W (An) */ -{ CPUFUNC(op_e0d8_0), 0, 57560 }, /* ASRW.W (An)+ */ -{ CPUFUNC(op_e0e0_0), 0, 57568 }, /* ASRW.W -(An) */ -{ CPUFUNC(op_e0e8_0), 0, 57576 }, /* ASRW.W (d16,An) */ -{ CPUFUNC(op_e0f0_0), 0, 57584 }, /* ASRW.W (d8,An,Xn) */ -{ CPUFUNC(op_e0f8_0), 0, 57592 }, /* ASRW.W (xxx).W */ -{ CPUFUNC(op_e0f9_0), 0, 57593 }, /* ASRW.W (xxx).L */ -{ CPUFUNC(op_e100_0), 0, 57600 }, /* ASL.B #,Dn */ -{ CPUFUNC(op_e108_0), 0, 57608 }, /* LSL.B #,Dn */ -{ CPUFUNC(op_e110_0), 0, 57616 }, /* ROXL.B #,Dn */ -{ CPUFUNC(op_e118_0), 0, 57624 }, /* ROL.B #,Dn */ -{ CPUFUNC(op_e120_0), 0, 57632 }, /* ASL.B Dn,Dn */ -{ CPUFUNC(op_e128_0), 0, 57640 }, /* LSL.B Dn,Dn */ -{ CPUFUNC(op_e130_0), 0, 57648 }, /* ROXL.B Dn,Dn */ -{ CPUFUNC(op_e138_0), 0, 57656 }, /* ROL.B Dn,Dn */ -{ CPUFUNC(op_e140_0), 0, 57664 }, /* ASL.W #,Dn */ -{ CPUFUNC(op_e148_0), 0, 57672 }, /* LSL.W #,Dn */ -{ CPUFUNC(op_e150_0), 0, 57680 }, /* ROXL.W #,Dn */ -{ CPUFUNC(op_e158_0), 0, 57688 }, /* ROL.W #,Dn */ -{ CPUFUNC(op_e160_0), 0, 57696 }, /* ASL.W Dn,Dn */ -{ CPUFUNC(op_e168_0), 0, 57704 }, /* LSL.W Dn,Dn */ -{ CPUFUNC(op_e170_0), 0, 57712 }, /* ROXL.W Dn,Dn */ -{ CPUFUNC(op_e178_0), 0, 57720 }, /* ROL.W Dn,Dn */ -{ CPUFUNC(op_e180_0), 0, 57728 }, /* ASL.L #,Dn */ -{ CPUFUNC(op_e188_0), 0, 57736 }, /* LSL.L #,Dn */ -{ CPUFUNC(op_e190_0), 0, 57744 }, /* ROXL.L #,Dn */ -{ CPUFUNC(op_e198_0), 0, 57752 }, /* ROL.L #,Dn */ -{ CPUFUNC(op_e1a0_0), 0, 57760 }, /* ASL.L Dn,Dn */ -{ CPUFUNC(op_e1a8_0), 0, 57768 }, /* LSL.L Dn,Dn */ -{ CPUFUNC(op_e1b0_0), 0, 57776 }, /* ROXL.L Dn,Dn */ -{ CPUFUNC(op_e1b8_0), 0, 57784 }, /* ROL.L Dn,Dn */ -{ CPUFUNC(op_e1d0_0), 0, 57808 }, /* ASLW.W (An) */ -{ CPUFUNC(op_e1d8_0), 0, 57816 }, /* ASLW.W (An)+ */ -{ CPUFUNC(op_e1e0_0), 0, 57824 }, /* ASLW.W -(An) */ -{ CPUFUNC(op_e1e8_0), 0, 57832 }, /* ASLW.W (d16,An) */ -{ CPUFUNC(op_e1f0_0), 0, 57840 }, /* ASLW.W (d8,An,Xn) */ -{ CPUFUNC(op_e1f8_0), 0, 57848 }, /* ASLW.W (xxx).W */ -{ CPUFUNC(op_e1f9_0), 0, 57849 }, /* ASLW.W (xxx).L */ -{ CPUFUNC(op_e2d0_0), 0, 58064 }, /* LSRW.W (An) */ -{ CPUFUNC(op_e2d8_0), 0, 58072 }, /* LSRW.W (An)+ */ -{ CPUFUNC(op_e2e0_0), 0, 58080 }, /* LSRW.W -(An) */ -{ CPUFUNC(op_e2e8_0), 0, 58088 }, /* LSRW.W (d16,An) */ -{ CPUFUNC(op_e2f0_0), 0, 58096 }, /* LSRW.W (d8,An,Xn) */ -{ CPUFUNC(op_e2f8_0), 0, 58104 }, /* LSRW.W (xxx).W */ -{ CPUFUNC(op_e2f9_0), 0, 58105 }, /* LSRW.W (xxx).L */ -{ CPUFUNC(op_e3d0_0), 0, 58320 }, /* LSLW.W (An) */ -{ CPUFUNC(op_e3d8_0), 0, 58328 }, /* LSLW.W (An)+ */ -{ CPUFUNC(op_e3e0_0), 0, 58336 }, /* LSLW.W -(An) */ -{ CPUFUNC(op_e3e8_0), 0, 58344 }, /* LSLW.W (d16,An) */ -{ CPUFUNC(op_e3f0_0), 0, 58352 }, /* LSLW.W (d8,An,Xn) */ -{ CPUFUNC(op_e3f8_0), 0, 58360 }, /* LSLW.W (xxx).W */ -{ CPUFUNC(op_e3f9_0), 0, 58361 }, /* LSLW.W (xxx).L */ -{ CPUFUNC(op_e4d0_0), 0, 58576 }, /* ROXRW.W (An) */ -{ CPUFUNC(op_e4d8_0), 0, 58584 }, /* ROXRW.W (An)+ */ -{ CPUFUNC(op_e4e0_0), 0, 58592 }, /* ROXRW.W -(An) */ -{ CPUFUNC(op_e4e8_0), 0, 58600 }, /* ROXRW.W (d16,An) */ -{ CPUFUNC(op_e4f0_0), 0, 58608 }, /* ROXRW.W (d8,An,Xn) */ -{ CPUFUNC(op_e4f8_0), 0, 58616 }, /* ROXRW.W (xxx).W */ -{ CPUFUNC(op_e4f9_0), 0, 58617 }, /* ROXRW.W (xxx).L */ -{ CPUFUNC(op_e5d0_0), 0, 58832 }, /* ROXLW.W (An) */ -{ CPUFUNC(op_e5d8_0), 0, 58840 }, /* ROXLW.W (An)+ */ -{ CPUFUNC(op_e5e0_0), 0, 58848 }, /* ROXLW.W -(An) */ -{ CPUFUNC(op_e5e8_0), 0, 58856 }, /* ROXLW.W (d16,An) */ -{ CPUFUNC(op_e5f0_0), 0, 58864 }, /* ROXLW.W (d8,An,Xn) */ -{ CPUFUNC(op_e5f8_0), 0, 58872 }, /* ROXLW.W (xxx).W */ -{ CPUFUNC(op_e5f9_0), 0, 58873 }, /* ROXLW.W (xxx).L */ -{ CPUFUNC(op_e6d0_0), 0, 59088 }, /* RORW.W (An) */ -{ CPUFUNC(op_e6d8_0), 0, 59096 }, /* RORW.W (An)+ */ -{ CPUFUNC(op_e6e0_0), 0, 59104 }, /* RORW.W -(An) */ -{ CPUFUNC(op_e6e8_0), 0, 59112 }, /* RORW.W (d16,An) */ -{ CPUFUNC(op_e6f0_0), 0, 59120 }, /* RORW.W (d8,An,Xn) */ -{ CPUFUNC(op_e6f8_0), 0, 59128 }, /* RORW.W (xxx).W */ -{ CPUFUNC(op_e6f9_0), 0, 59129 }, /* RORW.W (xxx).L */ -{ CPUFUNC(op_e7d0_0), 0, 59344 }, /* ROLW.W (An) */ -{ CPUFUNC(op_e7d8_0), 0, 59352 }, /* ROLW.W (An)+ */ -{ CPUFUNC(op_e7e0_0), 0, 59360 }, /* ROLW.W -(An) */ -{ CPUFUNC(op_e7e8_0), 0, 59368 }, /* ROLW.W (d16,An) */ -{ CPUFUNC(op_e7f0_0), 0, 59376 }, /* ROLW.W (d8,An,Xn) */ -{ CPUFUNC(op_e7f8_0), 0, 59384 }, /* ROLW.W (xxx).W */ -{ CPUFUNC(op_e7f9_0), 0, 59385 }, /* ROLW.W (xxx).L */ -{ CPUFUNC(op_e8c0_0), 0, 59584 }, /* BFTST.L #.W,Dn */ -{ CPUFUNC(op_e8d0_0), 0, 59600 }, /* BFTST.L #.W,(An) */ -{ CPUFUNC(op_e8e8_0), 0, 59624 }, /* BFTST.L #.W,(d16,An) */ -{ CPUFUNC(op_e8f0_0), 0, 59632 }, /* BFTST.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_e8f8_0), 0, 59640 }, /* BFTST.L #.W,(xxx).W */ -{ CPUFUNC(op_e8f9_0), 0, 59641 }, /* BFTST.L #.W,(xxx).L */ -{ CPUFUNC(op_e8fa_0), 0, 59642 }, /* BFTST.L #.W,(d16,PC) */ -{ CPUFUNC(op_e8fb_0), 0, 59643 }, /* BFTST.L #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_e9c0_0), 0, 59840 }, /* BFEXTU.L #.W,Dn */ -{ CPUFUNC(op_e9d0_0), 0, 59856 }, /* BFEXTU.L #.W,(An) */ -{ CPUFUNC(op_e9e8_0), 0, 59880 }, /* BFEXTU.L #.W,(d16,An) */ -{ CPUFUNC(op_e9f0_0), 0, 59888 }, /* BFEXTU.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_e9f8_0), 0, 59896 }, /* BFEXTU.L #.W,(xxx).W */ -{ CPUFUNC(op_e9f9_0), 0, 59897 }, /* BFEXTU.L #.W,(xxx).L */ -{ CPUFUNC(op_e9fa_0), 0, 59898 }, /* BFEXTU.L #.W,(d16,PC) */ -{ CPUFUNC(op_e9fb_0), 0, 59899 }, /* BFEXTU.L #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_eac0_0), 0, 60096 }, /* BFCHG.L #.W,Dn */ -{ CPUFUNC(op_ead0_0), 0, 60112 }, /* BFCHG.L #.W,(An) */ -{ CPUFUNC(op_eae8_0), 0, 60136 }, /* BFCHG.L #.W,(d16,An) */ -{ CPUFUNC(op_eaf0_0), 0, 60144 }, /* BFCHG.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_eaf8_0), 0, 60152 }, /* BFCHG.L #.W,(xxx).W */ -{ CPUFUNC(op_eaf9_0), 0, 60153 }, /* BFCHG.L #.W,(xxx).L */ -{ CPUFUNC(op_ebc0_0), 0, 60352 }, /* BFEXTS.L #.W,Dn */ -{ CPUFUNC(op_ebd0_0), 0, 60368 }, /* BFEXTS.L #.W,(An) */ -{ CPUFUNC(op_ebe8_0), 0, 60392 }, /* BFEXTS.L #.W,(d16,An) */ -{ CPUFUNC(op_ebf0_0), 0, 60400 }, /* BFEXTS.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_ebf8_0), 0, 60408 }, /* BFEXTS.L #.W,(xxx).W */ -{ CPUFUNC(op_ebf9_0), 0, 60409 }, /* BFEXTS.L #.W,(xxx).L */ -{ CPUFUNC(op_ebfa_0), 0, 60410 }, /* BFEXTS.L #.W,(d16,PC) */ -{ CPUFUNC(op_ebfb_0), 0, 60411 }, /* BFEXTS.L #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_ecc0_0), 0, 60608 }, /* BFCLR.L #.W,Dn */ -{ CPUFUNC(op_ecd0_0), 0, 60624 }, /* BFCLR.L #.W,(An) */ -{ CPUFUNC(op_ece8_0), 0, 60648 }, /* BFCLR.L #.W,(d16,An) */ -{ CPUFUNC(op_ecf0_0), 0, 60656 }, /* BFCLR.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_ecf8_0), 0, 60664 }, /* BFCLR.L #.W,(xxx).W */ -{ CPUFUNC(op_ecf9_0), 0, 60665 }, /* BFCLR.L #.W,(xxx).L */ -{ CPUFUNC(op_edc0_0), 0, 60864 }, /* BFFFO.L #.W,Dn */ -{ CPUFUNC(op_edd0_0), 0, 60880 }, /* BFFFO.L #.W,(An) */ -{ CPUFUNC(op_ede8_0), 0, 60904 }, /* BFFFO.L #.W,(d16,An) */ -{ CPUFUNC(op_edf0_0), 0, 60912 }, /* BFFFO.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_edf8_0), 0, 60920 }, /* BFFFO.L #.W,(xxx).W */ -{ CPUFUNC(op_edf9_0), 0, 60921 }, /* BFFFO.L #.W,(xxx).L */ -{ CPUFUNC(op_edfa_0), 0, 60922 }, /* BFFFO.L #.W,(d16,PC) */ -{ CPUFUNC(op_edfb_0), 0, 60923 }, /* BFFFO.L #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_eec0_0), 0, 61120 }, /* BFSET.L #.W,Dn */ -{ CPUFUNC(op_eed0_0), 0, 61136 }, /* BFSET.L #.W,(An) */ -{ CPUFUNC(op_eee8_0), 0, 61160 }, /* BFSET.L #.W,(d16,An) */ -{ CPUFUNC(op_eef0_0), 0, 61168 }, /* BFSET.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_eef8_0), 0, 61176 }, /* BFSET.L #.W,(xxx).W */ -{ CPUFUNC(op_eef9_0), 0, 61177 }, /* BFSET.L #.W,(xxx).L */ -{ CPUFUNC(op_efc0_0), 0, 61376 }, /* BFINS.L #.W,Dn */ -{ CPUFUNC(op_efd0_0), 0, 61392 }, /* BFINS.L #.W,(An) */ -{ CPUFUNC(op_efe8_0), 0, 61416 }, /* BFINS.L #.W,(d16,An) */ -{ CPUFUNC(op_eff0_0), 0, 61424 }, /* BFINS.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_eff8_0), 0, 61432 }, /* BFINS.L #.W,(xxx).W */ -{ CPUFUNC(op_eff9_0), 0, 61433 }, /* BFINS.L #.W,(xxx).L */ -{ CPUFUNC_FF(op_f200_0), 0, 61952 }, /* FPP.L #.W,Dn */ -{ CPUFUNC_FF(op_f208_0), 0, 61960 }, /* FPP.L #.W,An */ -{ CPUFUNC_FF(op_f210_0), 0, 61968 }, /* FPP.L #.W,(An) */ -{ CPUFUNC_FF(op_f218_0), 0, 61976 }, /* FPP.L #.W,(An)+ */ -{ CPUFUNC_FF(op_f220_0), 0, 61984 }, /* FPP.L #.W,-(An) */ -{ CPUFUNC_FF(op_f228_0), 0, 61992 }, /* FPP.L #.W,(d16,An) */ -{ CPUFUNC_FF(op_f230_0), 0, 62000 }, /* FPP.L #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_f238_0), 0, 62008 }, /* FPP.L #.W,(xxx).W */ -{ CPUFUNC_FF(op_f239_0), 0, 62009 }, /* FPP.L #.W,(xxx).L */ -{ CPUFUNC_FF(op_f23a_0), 0, 62010 }, /* FPP.L #.W,(d16,PC) */ -{ CPUFUNC_FF(op_f23b_0), 0, 62011 }, /* FPP.L #.W,(d8,PC,Xn) */ -{ CPUFUNC_FF(op_f23c_0), 0, 62012 }, /* FPP.L #.W,#.L */ -{ CPUFUNC_FF(op_f240_0), 0, 62016 }, /* FScc.L #.W,Dn */ -{ CPUFUNC_FF(op_f248_0), 0, 62024 }, /* FDBcc.L #.W,Dn */ -{ CPUFUNC_FF(op_f250_0), 0, 62032 }, /* FScc.L #.W,(An) */ -{ CPUFUNC_FF(op_f258_0), 0, 62040 }, /* FScc.L #.W,(An)+ */ -{ CPUFUNC_FF(op_f260_0), 0, 62048 }, /* FScc.L #.W,-(An) */ -{ CPUFUNC_FF(op_f268_0), 0, 62056 }, /* FScc.L #.W,(d16,An) */ -{ CPUFUNC_FF(op_f270_0), 0, 62064 }, /* FScc.L #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_f278_0), 0, 62072 }, /* FScc.L #.W,(xxx).W */ -{ CPUFUNC_FF(op_f279_0), 0, 62073 }, /* FScc.L #.W,(xxx).L */ -{ CPUFUNC_FF(op_f27a_0), 0, 62074 }, /* FTRAPcc.L #.W */ -{ CPUFUNC_FF(op_f27b_0), 0, 62075 }, /* FTRAPcc.L #.L */ -{ CPUFUNC_FF(op_f27c_0), 0, 62076 }, /* FTRAPcc.L */ -{ CPUFUNC_FF(op_f280_0), 0, 62080 }, /* FBcc.L #,#.W */ -{ CPUFUNC_FF(op_f2c0_0), 0, 62144 }, /* FBcc.L #,#.L */ -{ CPUFUNC_FF(op_f310_0), 0, 62224 }, /* FSAVE.L (An) */ -{ CPUFUNC_FF(op_f320_0), 0, 62240 }, /* FSAVE.L -(An) */ -{ CPUFUNC_FF(op_f328_0), 0, 62248 }, /* FSAVE.L (d16,An) */ -{ CPUFUNC_FF(op_f330_0), 0, 62256 }, /* FSAVE.L (d8,An,Xn) */ -{ CPUFUNC_FF(op_f338_0), 0, 62264 }, /* FSAVE.L (xxx).W */ -{ CPUFUNC_FF(op_f339_0), 0, 62265 }, /* FSAVE.L (xxx).L */ -{ CPUFUNC_FF(op_f350_0), 0, 62288 }, /* FRESTORE.L (An) */ -{ CPUFUNC_FF(op_f358_0), 0, 62296 }, /* FRESTORE.L (An)+ */ -{ CPUFUNC_FF(op_f368_0), 0, 62312 }, /* FRESTORE.L (d16,An) */ -{ CPUFUNC_FF(op_f370_0), 0, 62320 }, /* FRESTORE.L (d8,An,Xn) */ -{ CPUFUNC_FF(op_f378_0), 0, 62328 }, /* FRESTORE.L (xxx).W */ -{ CPUFUNC_FF(op_f379_0), 0, 62329 }, /* FRESTORE.L (xxx).L */ -{ CPUFUNC_FF(op_f37a_0), 0, 62330 }, /* FRESTORE.L (d16,PC) */ -{ CPUFUNC_FF(op_f37b_0), 0, 62331 }, /* FRESTORE.L (d8,PC,Xn) */ -{ 0, 0, 0 }}; -struct cputbl CPUFUNC(op_smalltbl_2)[] = { -{ CPUFUNC(op_0_0), 0, 0 }, /* OR.B #.B,Dn */ -{ CPUFUNC(op_10_0), 0, 16 }, /* OR.B #.B,(An) */ -{ CPUFUNC(op_18_0), 0, 24 }, /* OR.B #.B,(An)+ */ -{ CPUFUNC(op_20_0), 0, 32 }, /* OR.B #.B,-(An) */ -{ CPUFUNC(op_28_0), 0, 40 }, /* OR.B #.B,(d16,An) */ -{ CPUFUNC(op_30_0), 0, 48 }, /* OR.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_38_0), 0, 56 }, /* OR.B #.B,(xxx).W */ -{ CPUFUNC(op_39_0), 0, 57 }, /* OR.B #.B,(xxx).L */ -{ CPUFUNC(op_3c_0), 0, 60 }, /* ORSR.B #.W */ -{ CPUFUNC(op_40_0), 0, 64 }, /* OR.W #.W,Dn */ -{ CPUFUNC(op_50_0), 0, 80 }, /* OR.W #.W,(An) */ -{ CPUFUNC(op_58_0), 0, 88 }, /* OR.W #.W,(An)+ */ -{ CPUFUNC(op_60_0), 0, 96 }, /* OR.W #.W,-(An) */ -{ CPUFUNC(op_68_0), 0, 104 }, /* OR.W #.W,(d16,An) */ -{ CPUFUNC(op_70_0), 0, 112 }, /* OR.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_78_0), 0, 120 }, /* OR.W #.W,(xxx).W */ -{ CPUFUNC(op_79_0), 0, 121 }, /* OR.W #.W,(xxx).L */ -{ CPUFUNC(op_7c_0), 0, 124 }, /* ORSR.W #.W */ -{ CPUFUNC(op_80_0), 0, 128 }, /* OR.L #.L,Dn */ -{ CPUFUNC(op_90_0), 0, 144 }, /* OR.L #.L,(An) */ -{ CPUFUNC(op_98_0), 0, 152 }, /* OR.L #.L,(An)+ */ -{ CPUFUNC(op_a0_0), 0, 160 }, /* OR.L #.L,-(An) */ -{ CPUFUNC(op_a8_0), 0, 168 }, /* OR.L #.L,(d16,An) */ -{ CPUFUNC(op_b0_0), 0, 176 }, /* OR.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_b8_0), 0, 184 }, /* OR.L #.L,(xxx).W */ -{ CPUFUNC(op_b9_0), 0, 185 }, /* OR.L #.L,(xxx).L */ -{ CPUFUNC(op_d0_0), 0, 208 }, /* CHK2.B #.W,(An) */ -{ CPUFUNC(op_e8_0), 0, 232 }, /* CHK2.B #.W,(d16,An) */ -{ CPUFUNC(op_f0_0), 0, 240 }, /* CHK2.B #.W,(d8,An,Xn) */ -{ CPUFUNC(op_f8_0), 0, 248 }, /* CHK2.B #.W,(xxx).W */ -{ CPUFUNC(op_f9_0), 0, 249 }, /* CHK2.B #.W,(xxx).L */ -{ CPUFUNC(op_fa_0), 0, 250 }, /* CHK2.B #.W,(d16,PC) */ -{ CPUFUNC(op_fb_0), 0, 251 }, /* CHK2.B #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_100_0), 0, 256 }, /* BTST.L Dn,Dn */ -{ CPUFUNC_FF(op_108_0), 0, 264 }, /* MVPMR.W (d16,An),Dn */ -{ CPUFUNC(op_110_0), 0, 272 }, /* BTST.B Dn,(An) */ -{ CPUFUNC(op_118_0), 0, 280 }, /* BTST.B Dn,(An)+ */ -{ CPUFUNC(op_120_0), 0, 288 }, /* BTST.B Dn,-(An) */ -{ CPUFUNC(op_128_0), 0, 296 }, /* BTST.B Dn,(d16,An) */ -{ CPUFUNC(op_130_0), 0, 304 }, /* BTST.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_138_0), 0, 312 }, /* BTST.B Dn,(xxx).W */ -{ CPUFUNC(op_139_0), 0, 313 }, /* BTST.B Dn,(xxx).L */ -{ CPUFUNC(op_13a_0), 0, 314 }, /* BTST.B Dn,(d16,PC) */ -{ CPUFUNC(op_13b_0), 0, 315 }, /* BTST.B Dn,(d8,PC,Xn) */ -{ CPUFUNC(op_13c_0), 0, 316 }, /* BTST.B Dn,#.B */ -{ CPUFUNC(op_140_0), 0, 320 }, /* BCHG.L Dn,Dn */ -{ CPUFUNC_FF(op_148_0), 0, 328 }, /* MVPMR.L (d16,An),Dn */ -{ CPUFUNC(op_150_0), 0, 336 }, /* BCHG.B Dn,(An) */ -{ CPUFUNC(op_158_0), 0, 344 }, /* BCHG.B Dn,(An)+ */ -{ CPUFUNC(op_160_0), 0, 352 }, /* BCHG.B Dn,-(An) */ -{ CPUFUNC(op_168_0), 0, 360 }, /* BCHG.B Dn,(d16,An) */ -{ CPUFUNC(op_170_0), 0, 368 }, /* BCHG.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_178_0), 0, 376 }, /* BCHG.B Dn,(xxx).W */ -{ CPUFUNC(op_179_0), 0, 377 }, /* BCHG.B Dn,(xxx).L */ -{ CPUFUNC(op_17a_0), 0, 378 }, /* BCHG.B Dn,(d16,PC) */ -{ CPUFUNC(op_17b_0), 0, 379 }, /* BCHG.B Dn,(d8,PC,Xn) */ -{ CPUFUNC(op_180_0), 0, 384 }, /* BCLR.L Dn,Dn */ -{ CPUFUNC_FF(op_188_0), 0, 392 }, /* MVPRM.W Dn,(d16,An) */ -{ CPUFUNC(op_190_0), 0, 400 }, /* BCLR.B Dn,(An) */ -{ CPUFUNC(op_198_0), 0, 408 }, /* BCLR.B Dn,(An)+ */ -{ CPUFUNC(op_1a0_0), 0, 416 }, /* BCLR.B Dn,-(An) */ -{ CPUFUNC(op_1a8_0), 0, 424 }, /* BCLR.B Dn,(d16,An) */ -{ CPUFUNC(op_1b0_0), 0, 432 }, /* BCLR.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_1b8_0), 0, 440 }, /* BCLR.B Dn,(xxx).W */ -{ CPUFUNC(op_1b9_0), 0, 441 }, /* BCLR.B Dn,(xxx).L */ -{ CPUFUNC(op_1ba_0), 0, 442 }, /* BCLR.B Dn,(d16,PC) */ -{ CPUFUNC(op_1bb_0), 0, 443 }, /* BCLR.B Dn,(d8,PC,Xn) */ -{ CPUFUNC(op_1c0_0), 0, 448 }, /* BSET.L Dn,Dn */ -{ CPUFUNC_FF(op_1c8_0), 0, 456 }, /* MVPRM.L Dn,(d16,An) */ -{ CPUFUNC(op_1d0_0), 0, 464 }, /* BSET.B Dn,(An) */ -{ CPUFUNC(op_1d8_0), 0, 472 }, /* BSET.B Dn,(An)+ */ -{ CPUFUNC(op_1e0_0), 0, 480 }, /* BSET.B Dn,-(An) */ -{ CPUFUNC(op_1e8_0), 0, 488 }, /* BSET.B Dn,(d16,An) */ -{ CPUFUNC(op_1f0_0), 0, 496 }, /* BSET.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_1f8_0), 0, 504 }, /* BSET.B Dn,(xxx).W */ -{ CPUFUNC(op_1f9_0), 0, 505 }, /* BSET.B Dn,(xxx).L */ -{ CPUFUNC(op_1fa_0), 0, 506 }, /* BSET.B Dn,(d16,PC) */ -{ CPUFUNC(op_1fb_0), 0, 507 }, /* BSET.B Dn,(d8,PC,Xn) */ -{ CPUFUNC(op_200_0), 0, 512 }, /* AND.B #.B,Dn */ -{ CPUFUNC(op_210_0), 0, 528 }, /* AND.B #.B,(An) */ -{ CPUFUNC(op_218_0), 0, 536 }, /* AND.B #.B,(An)+ */ -{ CPUFUNC(op_220_0), 0, 544 }, /* AND.B #.B,-(An) */ -{ CPUFUNC(op_228_0), 0, 552 }, /* AND.B #.B,(d16,An) */ -{ CPUFUNC(op_230_0), 0, 560 }, /* AND.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_238_0), 0, 568 }, /* AND.B #.B,(xxx).W */ -{ CPUFUNC(op_239_0), 0, 569 }, /* AND.B #.B,(xxx).L */ -{ CPUFUNC(op_23c_0), 0, 572 }, /* ANDSR.B #.W */ -{ CPUFUNC(op_240_0), 0, 576 }, /* AND.W #.W,Dn */ -{ CPUFUNC(op_250_0), 0, 592 }, /* AND.W #.W,(An) */ -{ CPUFUNC(op_258_0), 0, 600 }, /* AND.W #.W,(An)+ */ -{ CPUFUNC(op_260_0), 0, 608 }, /* AND.W #.W,-(An) */ -{ CPUFUNC(op_268_0), 0, 616 }, /* AND.W #.W,(d16,An) */ -{ CPUFUNC(op_270_0), 0, 624 }, /* AND.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_278_0), 0, 632 }, /* AND.W #.W,(xxx).W */ -{ CPUFUNC(op_279_0), 0, 633 }, /* AND.W #.W,(xxx).L */ -{ CPUFUNC(op_27c_0), 0, 636 }, /* ANDSR.W #.W */ -{ CPUFUNC(op_280_0), 0, 640 }, /* AND.L #.L,Dn */ -{ CPUFUNC(op_290_0), 0, 656 }, /* AND.L #.L,(An) */ -{ CPUFUNC(op_298_0), 0, 664 }, /* AND.L #.L,(An)+ */ -{ CPUFUNC(op_2a0_0), 0, 672 }, /* AND.L #.L,-(An) */ -{ CPUFUNC(op_2a8_0), 0, 680 }, /* AND.L #.L,(d16,An) */ -{ CPUFUNC(op_2b0_0), 0, 688 }, /* AND.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_2b8_0), 0, 696 }, /* AND.L #.L,(xxx).W */ -{ CPUFUNC(op_2b9_0), 0, 697 }, /* AND.L #.L,(xxx).L */ -{ CPUFUNC(op_2d0_0), 0, 720 }, /* CHK2.W #.W,(An) */ -{ CPUFUNC(op_2e8_0), 0, 744 }, /* CHK2.W #.W,(d16,An) */ -{ CPUFUNC(op_2f0_0), 0, 752 }, /* CHK2.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_2f8_0), 0, 760 }, /* CHK2.W #.W,(xxx).W */ -{ CPUFUNC(op_2f9_0), 0, 761 }, /* CHK2.W #.W,(xxx).L */ -{ CPUFUNC(op_2fa_0), 0, 762 }, /* CHK2.W #.W,(d16,PC) */ -{ CPUFUNC(op_2fb_0), 0, 763 }, /* CHK2.W #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_400_0), 0, 1024 }, /* SUB.B #.B,Dn */ -{ CPUFUNC(op_410_0), 0, 1040 }, /* SUB.B #.B,(An) */ -{ CPUFUNC(op_418_0), 0, 1048 }, /* SUB.B #.B,(An)+ */ -{ CPUFUNC(op_420_0), 0, 1056 }, /* SUB.B #.B,-(An) */ -{ CPUFUNC(op_428_0), 0, 1064 }, /* SUB.B #.B,(d16,An) */ -{ CPUFUNC(op_430_0), 0, 1072 }, /* SUB.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_438_0), 0, 1080 }, /* SUB.B #.B,(xxx).W */ -{ CPUFUNC(op_439_0), 0, 1081 }, /* SUB.B #.B,(xxx).L */ -{ CPUFUNC(op_440_0), 0, 1088 }, /* SUB.W #.W,Dn */ -{ CPUFUNC(op_450_0), 0, 1104 }, /* SUB.W #.W,(An) */ -{ CPUFUNC(op_458_0), 0, 1112 }, /* SUB.W #.W,(An)+ */ -{ CPUFUNC(op_460_0), 0, 1120 }, /* SUB.W #.W,-(An) */ -{ CPUFUNC(op_468_0), 0, 1128 }, /* SUB.W #.W,(d16,An) */ -{ CPUFUNC(op_470_0), 0, 1136 }, /* SUB.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_478_0), 0, 1144 }, /* SUB.W #.W,(xxx).W */ -{ CPUFUNC(op_479_0), 0, 1145 }, /* SUB.W #.W,(xxx).L */ -{ CPUFUNC(op_480_0), 0, 1152 }, /* SUB.L #.L,Dn */ -{ CPUFUNC(op_490_0), 0, 1168 }, /* SUB.L #.L,(An) */ -{ CPUFUNC(op_498_0), 0, 1176 }, /* SUB.L #.L,(An)+ */ -{ CPUFUNC(op_4a0_0), 0, 1184 }, /* SUB.L #.L,-(An) */ -{ CPUFUNC(op_4a8_0), 0, 1192 }, /* SUB.L #.L,(d16,An) */ -{ CPUFUNC(op_4b0_0), 0, 1200 }, /* SUB.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_4b8_0), 0, 1208 }, /* SUB.L #.L,(xxx).W */ -{ CPUFUNC(op_4b9_0), 0, 1209 }, /* SUB.L #.L,(xxx).L */ -{ CPUFUNC(op_4d0_0), 0, 1232 }, /* CHK2.L #.W,(An) */ -{ CPUFUNC(op_4e8_0), 0, 1256 }, /* CHK2.L #.W,(d16,An) */ -{ CPUFUNC(op_4f0_0), 0, 1264 }, /* CHK2.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_4f8_0), 0, 1272 }, /* CHK2.L #.W,(xxx).W */ -{ CPUFUNC(op_4f9_0), 0, 1273 }, /* CHK2.L #.W,(xxx).L */ -{ CPUFUNC(op_4fa_0), 0, 1274 }, /* CHK2.L #.W,(d16,PC) */ -{ CPUFUNC(op_4fb_0), 0, 1275 }, /* CHK2.L #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_600_0), 0, 1536 }, /* ADD.B #.B,Dn */ -{ CPUFUNC(op_610_0), 0, 1552 }, /* ADD.B #.B,(An) */ -{ CPUFUNC(op_618_0), 0, 1560 }, /* ADD.B #.B,(An)+ */ -{ CPUFUNC(op_620_0), 0, 1568 }, /* ADD.B #.B,-(An) */ -{ CPUFUNC(op_628_0), 0, 1576 }, /* ADD.B #.B,(d16,An) */ -{ CPUFUNC(op_630_0), 0, 1584 }, /* ADD.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_638_0), 0, 1592 }, /* ADD.B #.B,(xxx).W */ -{ CPUFUNC(op_639_0), 0, 1593 }, /* ADD.B #.B,(xxx).L */ -{ CPUFUNC(op_640_0), 0, 1600 }, /* ADD.W #.W,Dn */ -{ CPUFUNC(op_650_0), 0, 1616 }, /* ADD.W #.W,(An) */ -{ CPUFUNC(op_658_0), 0, 1624 }, /* ADD.W #.W,(An)+ */ -{ CPUFUNC(op_660_0), 0, 1632 }, /* ADD.W #.W,-(An) */ -{ CPUFUNC(op_668_0), 0, 1640 }, /* ADD.W #.W,(d16,An) */ -{ CPUFUNC(op_670_0), 0, 1648 }, /* ADD.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_678_0), 0, 1656 }, /* ADD.W #.W,(xxx).W */ -{ CPUFUNC(op_679_0), 0, 1657 }, /* ADD.W #.W,(xxx).L */ -{ CPUFUNC(op_680_0), 0, 1664 }, /* ADD.L #.L,Dn */ -{ CPUFUNC(op_690_0), 0, 1680 }, /* ADD.L #.L,(An) */ -{ CPUFUNC(op_698_0), 0, 1688 }, /* ADD.L #.L,(An)+ */ -{ CPUFUNC(op_6a0_0), 0, 1696 }, /* ADD.L #.L,-(An) */ -{ CPUFUNC(op_6a8_0), 0, 1704 }, /* ADD.L #.L,(d16,An) */ -{ CPUFUNC(op_6b0_0), 0, 1712 }, /* ADD.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_6b8_0), 0, 1720 }, /* ADD.L #.L,(xxx).W */ -{ CPUFUNC(op_6b9_0), 0, 1721 }, /* ADD.L #.L,(xxx).L */ -{ CPUFUNC(op_6c0_0), 0, 1728 }, /* RTM.L Dn */ -{ CPUFUNC(op_6c8_0), 0, 1736 }, /* RTM.L An */ -{ CPUFUNC_FF(op_6d0_0), 0, 1744 }, /* CALLM.L (An) */ -{ CPUFUNC_FF(op_6e8_0), 0, 1768 }, /* CALLM.L (d16,An) */ -{ CPUFUNC_FF(op_6f0_0), 0, 1776 }, /* CALLM.L (d8,An,Xn) */ -{ CPUFUNC_FF(op_6f8_0), 0, 1784 }, /* CALLM.L (xxx).W */ -{ CPUFUNC_FF(op_6f9_0), 0, 1785 }, /* CALLM.L (xxx).L */ -{ CPUFUNC_FF(op_6fa_0), 0, 1786 }, /* CALLM.L (d16,PC) */ -{ CPUFUNC_FF(op_6fb_0), 0, 1787 }, /* CALLM.L (d8,PC,Xn) */ -{ CPUFUNC(op_800_0), 0, 2048 }, /* BTST.L #.W,Dn */ -{ CPUFUNC(op_810_0), 0, 2064 }, /* BTST.B #.W,(An) */ -{ CPUFUNC(op_818_0), 0, 2072 }, /* BTST.B #.W,(An)+ */ -{ CPUFUNC(op_820_0), 0, 2080 }, /* BTST.B #.W,-(An) */ -{ CPUFUNC(op_828_0), 0, 2088 }, /* BTST.B #.W,(d16,An) */ -{ CPUFUNC(op_830_0), 0, 2096 }, /* BTST.B #.W,(d8,An,Xn) */ -{ CPUFUNC(op_838_0), 0, 2104 }, /* BTST.B #.W,(xxx).W */ -{ CPUFUNC(op_839_0), 0, 2105 }, /* BTST.B #.W,(xxx).L */ -{ CPUFUNC(op_83a_0), 0, 2106 }, /* BTST.B #.W,(d16,PC) */ -{ CPUFUNC(op_83b_0), 0, 2107 }, /* BTST.B #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_83c_0), 0, 2108 }, /* BTST.B #.W,#.B */ -{ CPUFUNC(op_840_0), 0, 2112 }, /* BCHG.L #.W,Dn */ -{ CPUFUNC(op_850_0), 0, 2128 }, /* BCHG.B #.W,(An) */ -{ CPUFUNC(op_858_0), 0, 2136 }, /* BCHG.B #.W,(An)+ */ -{ CPUFUNC(op_860_0), 0, 2144 }, /* BCHG.B #.W,-(An) */ -{ CPUFUNC(op_868_0), 0, 2152 }, /* BCHG.B #.W,(d16,An) */ -{ CPUFUNC(op_870_0), 0, 2160 }, /* BCHG.B #.W,(d8,An,Xn) */ -{ CPUFUNC(op_878_0), 0, 2168 }, /* BCHG.B #.W,(xxx).W */ -{ CPUFUNC(op_879_0), 0, 2169 }, /* BCHG.B #.W,(xxx).L */ -{ CPUFUNC(op_87a_0), 0, 2170 }, /* BCHG.B #.W,(d16,PC) */ -{ CPUFUNC(op_87b_0), 0, 2171 }, /* BCHG.B #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_880_0), 0, 2176 }, /* BCLR.L #.W,Dn */ -{ CPUFUNC(op_890_0), 0, 2192 }, /* BCLR.B #.W,(An) */ -{ CPUFUNC(op_898_0), 0, 2200 }, /* BCLR.B #.W,(An)+ */ -{ CPUFUNC(op_8a0_0), 0, 2208 }, /* BCLR.B #.W,-(An) */ -{ CPUFUNC(op_8a8_0), 0, 2216 }, /* BCLR.B #.W,(d16,An) */ -{ CPUFUNC(op_8b0_0), 0, 2224 }, /* BCLR.B #.W,(d8,An,Xn) */ -{ CPUFUNC(op_8b8_0), 0, 2232 }, /* BCLR.B #.W,(xxx).W */ -{ CPUFUNC(op_8b9_0), 0, 2233 }, /* BCLR.B #.W,(xxx).L */ -{ CPUFUNC(op_8ba_0), 0, 2234 }, /* BCLR.B #.W,(d16,PC) */ -{ CPUFUNC(op_8bb_0), 0, 2235 }, /* BCLR.B #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_8c0_0), 0, 2240 }, /* BSET.L #.W,Dn */ -{ CPUFUNC(op_8d0_0), 0, 2256 }, /* BSET.B #.W,(An) */ -{ CPUFUNC(op_8d8_0), 0, 2264 }, /* BSET.B #.W,(An)+ */ -{ CPUFUNC(op_8e0_0), 0, 2272 }, /* BSET.B #.W,-(An) */ -{ CPUFUNC(op_8e8_0), 0, 2280 }, /* BSET.B #.W,(d16,An) */ -{ CPUFUNC(op_8f0_0), 0, 2288 }, /* BSET.B #.W,(d8,An,Xn) */ -{ CPUFUNC(op_8f8_0), 0, 2296 }, /* BSET.B #.W,(xxx).W */ -{ CPUFUNC(op_8f9_0), 0, 2297 }, /* BSET.B #.W,(xxx).L */ -{ CPUFUNC(op_8fa_0), 0, 2298 }, /* BSET.B #.W,(d16,PC) */ -{ CPUFUNC(op_8fb_0), 0, 2299 }, /* BSET.B #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_a00_0), 0, 2560 }, /* EOR.B #.B,Dn */ -{ CPUFUNC(op_a10_0), 0, 2576 }, /* EOR.B #.B,(An) */ -{ CPUFUNC(op_a18_0), 0, 2584 }, /* EOR.B #.B,(An)+ */ -{ CPUFUNC(op_a20_0), 0, 2592 }, /* EOR.B #.B,-(An) */ -{ CPUFUNC(op_a28_0), 0, 2600 }, /* EOR.B #.B,(d16,An) */ -{ CPUFUNC(op_a30_0), 0, 2608 }, /* EOR.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_a38_0), 0, 2616 }, /* EOR.B #.B,(xxx).W */ -{ CPUFUNC(op_a39_0), 0, 2617 }, /* EOR.B #.B,(xxx).L */ -{ CPUFUNC(op_a3c_0), 0, 2620 }, /* EORSR.B #.W */ -{ CPUFUNC(op_a40_0), 0, 2624 }, /* EOR.W #.W,Dn */ -{ CPUFUNC(op_a50_0), 0, 2640 }, /* EOR.W #.W,(An) */ -{ CPUFUNC(op_a58_0), 0, 2648 }, /* EOR.W #.W,(An)+ */ -{ CPUFUNC(op_a60_0), 0, 2656 }, /* EOR.W #.W,-(An) */ -{ CPUFUNC(op_a68_0), 0, 2664 }, /* EOR.W #.W,(d16,An) */ -{ CPUFUNC(op_a70_0), 0, 2672 }, /* EOR.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_a78_0), 0, 2680 }, /* EOR.W #.W,(xxx).W */ -{ CPUFUNC(op_a79_0), 0, 2681 }, /* EOR.W #.W,(xxx).L */ -{ CPUFUNC(op_a7c_0), 0, 2684 }, /* EORSR.W #.W */ -{ CPUFUNC(op_a80_0), 0, 2688 }, /* EOR.L #.L,Dn */ -{ CPUFUNC(op_a90_0), 0, 2704 }, /* EOR.L #.L,(An) */ -{ CPUFUNC(op_a98_0), 0, 2712 }, /* EOR.L #.L,(An)+ */ -{ CPUFUNC(op_aa0_0), 0, 2720 }, /* EOR.L #.L,-(An) */ -{ CPUFUNC(op_aa8_0), 0, 2728 }, /* EOR.L #.L,(d16,An) */ -{ CPUFUNC(op_ab0_0), 0, 2736 }, /* EOR.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_ab8_0), 0, 2744 }, /* EOR.L #.L,(xxx).W */ -{ CPUFUNC(op_ab9_0), 0, 2745 }, /* EOR.L #.L,(xxx).L */ -{ CPUFUNC(op_ad0_0), 0, 2768 }, /* CAS.B #.W,(An) */ -{ CPUFUNC(op_ad8_0), 0, 2776 }, /* CAS.B #.W,(An)+ */ -{ CPUFUNC(op_ae0_0), 0, 2784 }, /* CAS.B #.W,-(An) */ -{ CPUFUNC(op_ae8_0), 0, 2792 }, /* CAS.B #.W,(d16,An) */ -{ CPUFUNC(op_af0_0), 0, 2800 }, /* CAS.B #.W,(d8,An,Xn) */ -{ CPUFUNC(op_af8_0), 0, 2808 }, /* CAS.B #.W,(xxx).W */ -{ CPUFUNC(op_af9_0), 0, 2809 }, /* CAS.B #.W,(xxx).L */ -{ CPUFUNC(op_c00_0), 0, 3072 }, /* CMP.B #.B,Dn */ -{ CPUFUNC(op_c10_0), 0, 3088 }, /* CMP.B #.B,(An) */ -{ CPUFUNC(op_c18_0), 0, 3096 }, /* CMP.B #.B,(An)+ */ -{ CPUFUNC(op_c20_0), 0, 3104 }, /* CMP.B #.B,-(An) */ -{ CPUFUNC(op_c28_0), 0, 3112 }, /* CMP.B #.B,(d16,An) */ -{ CPUFUNC(op_c30_0), 0, 3120 }, /* CMP.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_c38_0), 0, 3128 }, /* CMP.B #.B,(xxx).W */ -{ CPUFUNC(op_c39_0), 0, 3129 }, /* CMP.B #.B,(xxx).L */ -{ CPUFUNC(op_c3a_0), 0, 3130 }, /* CMP.B #.B,(d16,PC) */ -{ CPUFUNC(op_c3b_0), 0, 3131 }, /* CMP.B #.B,(d8,PC,Xn) */ -{ CPUFUNC(op_c40_0), 0, 3136 }, /* CMP.W #.W,Dn */ -{ CPUFUNC(op_c50_0), 0, 3152 }, /* CMP.W #.W,(An) */ -{ CPUFUNC(op_c58_0), 0, 3160 }, /* CMP.W #.W,(An)+ */ -{ CPUFUNC(op_c60_0), 0, 3168 }, /* CMP.W #.W,-(An) */ -{ CPUFUNC(op_c68_0), 0, 3176 }, /* CMP.W #.W,(d16,An) */ -{ CPUFUNC(op_c70_0), 0, 3184 }, /* CMP.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_c78_0), 0, 3192 }, /* CMP.W #.W,(xxx).W */ -{ CPUFUNC(op_c79_0), 0, 3193 }, /* CMP.W #.W,(xxx).L */ -{ CPUFUNC(op_c7a_0), 0, 3194 }, /* CMP.W #.W,(d16,PC) */ -{ CPUFUNC(op_c7b_0), 0, 3195 }, /* CMP.W #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_c80_0), 0, 3200 }, /* CMP.L #.L,Dn */ -{ CPUFUNC(op_c90_0), 0, 3216 }, /* CMP.L #.L,(An) */ -{ CPUFUNC(op_c98_0), 0, 3224 }, /* CMP.L #.L,(An)+ */ -{ CPUFUNC(op_ca0_0), 0, 3232 }, /* CMP.L #.L,-(An) */ -{ CPUFUNC(op_ca8_0), 0, 3240 }, /* CMP.L #.L,(d16,An) */ -{ CPUFUNC(op_cb0_0), 0, 3248 }, /* CMP.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_cb8_0), 0, 3256 }, /* CMP.L #.L,(xxx).W */ -{ CPUFUNC(op_cb9_0), 0, 3257 }, /* CMP.L #.L,(xxx).L */ -{ CPUFUNC(op_cba_0), 0, 3258 }, /* CMP.L #.L,(d16,PC) */ -{ CPUFUNC(op_cbb_0), 0, 3259 }, /* CMP.L #.L,(d8,PC,Xn) */ -{ CPUFUNC(op_cd0_0), 0, 3280 }, /* CAS.W #.W,(An) */ -{ CPUFUNC(op_cd8_0), 0, 3288 }, /* CAS.W #.W,(An)+ */ -{ CPUFUNC(op_ce0_0), 0, 3296 }, /* CAS.W #.W,-(An) */ -{ CPUFUNC(op_ce8_0), 0, 3304 }, /* CAS.W #.W,(d16,An) */ -{ CPUFUNC(op_cf0_0), 0, 3312 }, /* CAS.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_cf8_0), 0, 3320 }, /* CAS.W #.W,(xxx).W */ -{ CPUFUNC(op_cf9_0), 0, 3321 }, /* CAS.W #.W,(xxx).L */ -{ CPUFUNC(op_cfc_0), 0, 3324 }, /* CAS2.W #.L */ -{ CPUFUNC_FF(op_e10_0), 0, 3600 }, /* MOVES.B #.W,(An) */ -{ CPUFUNC_FF(op_e18_0), 0, 3608 }, /* MOVES.B #.W,(An)+ */ -{ CPUFUNC_FF(op_e20_0), 0, 3616 }, /* MOVES.B #.W,-(An) */ -{ CPUFUNC_FF(op_e28_0), 0, 3624 }, /* MOVES.B #.W,(d16,An) */ -{ CPUFUNC_FF(op_e30_0), 0, 3632 }, /* MOVES.B #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_e38_0), 0, 3640 }, /* MOVES.B #.W,(xxx).W */ -{ CPUFUNC_FF(op_e39_0), 0, 3641 }, /* MOVES.B #.W,(xxx).L */ -{ CPUFUNC_FF(op_e50_0), 0, 3664 }, /* MOVES.W #.W,(An) */ -{ CPUFUNC_FF(op_e58_0), 0, 3672 }, /* MOVES.W #.W,(An)+ */ -{ CPUFUNC_FF(op_e60_0), 0, 3680 }, /* MOVES.W #.W,-(An) */ -{ CPUFUNC_FF(op_e68_0), 0, 3688 }, /* MOVES.W #.W,(d16,An) */ -{ CPUFUNC_FF(op_e70_0), 0, 3696 }, /* MOVES.W #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_e78_0), 0, 3704 }, /* MOVES.W #.W,(xxx).W */ -{ CPUFUNC_FF(op_e79_0), 0, 3705 }, /* MOVES.W #.W,(xxx).L */ -{ CPUFUNC_FF(op_e90_0), 0, 3728 }, /* MOVES.L #.W,(An) */ -{ CPUFUNC_FF(op_e98_0), 0, 3736 }, /* MOVES.L #.W,(An)+ */ -{ CPUFUNC_FF(op_ea0_0), 0, 3744 }, /* MOVES.L #.W,-(An) */ -{ CPUFUNC_FF(op_ea8_0), 0, 3752 }, /* MOVES.L #.W,(d16,An) */ -{ CPUFUNC_FF(op_eb0_0), 0, 3760 }, /* MOVES.L #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_eb8_0), 0, 3768 }, /* MOVES.L #.W,(xxx).W */ -{ CPUFUNC_FF(op_eb9_0), 0, 3769 }, /* MOVES.L #.W,(xxx).L */ -{ CPUFUNC(op_ed0_0), 0, 3792 }, /* CAS.L #.W,(An) */ -{ CPUFUNC(op_ed8_0), 0, 3800 }, /* CAS.L #.W,(An)+ */ -{ CPUFUNC(op_ee0_0), 0, 3808 }, /* CAS.L #.W,-(An) */ -{ CPUFUNC(op_ee8_0), 0, 3816 }, /* CAS.L #.W,(d16,An) */ -{ CPUFUNC(op_ef0_0), 0, 3824 }, /* CAS.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_ef8_0), 0, 3832 }, /* CAS.L #.W,(xxx).W */ -{ CPUFUNC(op_ef9_0), 0, 3833 }, /* CAS.L #.W,(xxx).L */ -{ CPUFUNC(op_efc_0), 0, 3836 }, /* CAS2.L #.L */ -{ CPUFUNC(op_1000_0), 0, 4096 }, /* MOVE.B Dn,Dn */ -{ CPUFUNC(op_1010_0), 0, 4112 }, /* MOVE.B (An),Dn */ -{ CPUFUNC(op_1018_0), 0, 4120 }, /* MOVE.B (An)+,Dn */ -{ CPUFUNC(op_1020_0), 0, 4128 }, /* MOVE.B -(An),Dn */ -{ CPUFUNC(op_1028_0), 0, 4136 }, /* MOVE.B (d16,An),Dn */ -{ CPUFUNC(op_1030_0), 0, 4144 }, /* MOVE.B (d8,An,Xn),Dn */ -{ CPUFUNC(op_1038_0), 0, 4152 }, /* MOVE.B (xxx).W,Dn */ -{ CPUFUNC(op_1039_0), 0, 4153 }, /* MOVE.B (xxx).L,Dn */ -{ CPUFUNC(op_103a_0), 0, 4154 }, /* MOVE.B (d16,PC),Dn */ -{ CPUFUNC(op_103b_0), 0, 4155 }, /* MOVE.B (d8,PC,Xn),Dn */ -{ CPUFUNC(op_103c_0), 0, 4156 }, /* MOVE.B #.B,Dn */ -{ CPUFUNC(op_1080_0), 0, 4224 }, /* MOVE.B Dn,(An) */ -{ CPUFUNC(op_1090_0), 0, 4240 }, /* MOVE.B (An),(An) */ -{ CPUFUNC(op_1098_0), 0, 4248 }, /* MOVE.B (An)+,(An) */ -{ CPUFUNC(op_10a0_0), 0, 4256 }, /* MOVE.B -(An),(An) */ -{ CPUFUNC(op_10a8_0), 0, 4264 }, /* MOVE.B (d16,An),(An) */ -{ CPUFUNC(op_10b0_0), 0, 4272 }, /* MOVE.B (d8,An,Xn),(An) */ -{ CPUFUNC(op_10b8_0), 0, 4280 }, /* MOVE.B (xxx).W,(An) */ -{ CPUFUNC(op_10b9_0), 0, 4281 }, /* MOVE.B (xxx).L,(An) */ -{ CPUFUNC(op_10ba_0), 0, 4282 }, /* MOVE.B (d16,PC),(An) */ -{ CPUFUNC(op_10bb_0), 0, 4283 }, /* MOVE.B (d8,PC,Xn),(An) */ -{ CPUFUNC(op_10bc_0), 0, 4284 }, /* MOVE.B #.B,(An) */ -{ CPUFUNC(op_10c0_0), 0, 4288 }, /* MOVE.B Dn,(An)+ */ -{ CPUFUNC(op_10d0_0), 0, 4304 }, /* MOVE.B (An),(An)+ */ -{ CPUFUNC(op_10d8_0), 0, 4312 }, /* MOVE.B (An)+,(An)+ */ -{ CPUFUNC(op_10e0_0), 0, 4320 }, /* MOVE.B -(An),(An)+ */ -{ CPUFUNC(op_10e8_0), 0, 4328 }, /* MOVE.B (d16,An),(An)+ */ -{ CPUFUNC(op_10f0_0), 0, 4336 }, /* MOVE.B (d8,An,Xn),(An)+ */ -{ CPUFUNC(op_10f8_0), 0, 4344 }, /* MOVE.B (xxx).W,(An)+ */ -{ CPUFUNC(op_10f9_0), 0, 4345 }, /* MOVE.B (xxx).L,(An)+ */ -{ CPUFUNC(op_10fa_0), 0, 4346 }, /* MOVE.B (d16,PC),(An)+ */ -{ CPUFUNC(op_10fb_0), 0, 4347 }, /* MOVE.B (d8,PC,Xn),(An)+ */ -{ CPUFUNC(op_10fc_0), 0, 4348 }, /* MOVE.B #.B,(An)+ */ -{ CPUFUNC(op_1100_0), 0, 4352 }, /* MOVE.B Dn,-(An) */ -{ CPUFUNC(op_1110_0), 0, 4368 }, /* MOVE.B (An),-(An) */ -{ CPUFUNC(op_1118_0), 0, 4376 }, /* MOVE.B (An)+,-(An) */ -{ CPUFUNC(op_1120_0), 0, 4384 }, /* MOVE.B -(An),-(An) */ -{ CPUFUNC(op_1128_0), 0, 4392 }, /* MOVE.B (d16,An),-(An) */ -{ CPUFUNC(op_1130_0), 0, 4400 }, /* MOVE.B (d8,An,Xn),-(An) */ -{ CPUFUNC(op_1138_0), 0, 4408 }, /* MOVE.B (xxx).W,-(An) */ -{ CPUFUNC(op_1139_0), 0, 4409 }, /* MOVE.B (xxx).L,-(An) */ -{ CPUFUNC(op_113a_0), 0, 4410 }, /* MOVE.B (d16,PC),-(An) */ -{ CPUFUNC(op_113b_0), 0, 4411 }, /* MOVE.B (d8,PC,Xn),-(An) */ -{ CPUFUNC(op_113c_0), 0, 4412 }, /* MOVE.B #.B,-(An) */ -{ CPUFUNC(op_1140_0), 0, 4416 }, /* MOVE.B Dn,(d16,An) */ -{ CPUFUNC(op_1150_0), 0, 4432 }, /* MOVE.B (An),(d16,An) */ -{ CPUFUNC(op_1158_0), 0, 4440 }, /* MOVE.B (An)+,(d16,An) */ -{ CPUFUNC(op_1160_0), 0, 4448 }, /* MOVE.B -(An),(d16,An) */ -{ CPUFUNC(op_1168_0), 0, 4456 }, /* MOVE.B (d16,An),(d16,An) */ -{ CPUFUNC(op_1170_0), 0, 4464 }, /* MOVE.B (d8,An,Xn),(d16,An) */ -{ CPUFUNC(op_1178_0), 0, 4472 }, /* MOVE.B (xxx).W,(d16,An) */ -{ CPUFUNC(op_1179_0), 0, 4473 }, /* MOVE.B (xxx).L,(d16,An) */ -{ CPUFUNC(op_117a_0), 0, 4474 }, /* MOVE.B (d16,PC),(d16,An) */ -{ CPUFUNC(op_117b_0), 0, 4475 }, /* MOVE.B (d8,PC,Xn),(d16,An) */ -{ CPUFUNC(op_117c_0), 0, 4476 }, /* MOVE.B #.B,(d16,An) */ -{ CPUFUNC(op_1180_0), 0, 4480 }, /* MOVE.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_1190_0), 0, 4496 }, /* MOVE.B (An),(d8,An,Xn) */ -{ CPUFUNC(op_1198_0), 0, 4504 }, /* MOVE.B (An)+,(d8,An,Xn) */ -{ CPUFUNC(op_11a0_0), 0, 4512 }, /* MOVE.B -(An),(d8,An,Xn) */ -{ CPUFUNC(op_11a8_0), 0, 4520 }, /* MOVE.B (d16,An),(d8,An,Xn) */ -{ CPUFUNC(op_11b0_0), 0, 4528 }, /* MOVE.B (d8,An,Xn),(d8,An,Xn) */ -{ CPUFUNC(op_11b8_0), 0, 4536 }, /* MOVE.B (xxx).W,(d8,An,Xn) */ -{ CPUFUNC(op_11b9_0), 0, 4537 }, /* MOVE.B (xxx).L,(d8,An,Xn) */ -{ CPUFUNC(op_11ba_0), 0, 4538 }, /* MOVE.B (d16,PC),(d8,An,Xn) */ -{ CPUFUNC(op_11bb_0), 0, 4539 }, /* MOVE.B (d8,PC,Xn),(d8,An,Xn) */ -{ CPUFUNC(op_11bc_0), 0, 4540 }, /* MOVE.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_11c0_0), 0, 4544 }, /* MOVE.B Dn,(xxx).W */ -{ CPUFUNC(op_11d0_0), 0, 4560 }, /* MOVE.B (An),(xxx).W */ -{ CPUFUNC(op_11d8_0), 0, 4568 }, /* MOVE.B (An)+,(xxx).W */ -{ CPUFUNC(op_11e0_0), 0, 4576 }, /* MOVE.B -(An),(xxx).W */ -{ CPUFUNC(op_11e8_0), 0, 4584 }, /* MOVE.B (d16,An),(xxx).W */ -{ CPUFUNC(op_11f0_0), 0, 4592 }, /* MOVE.B (d8,An,Xn),(xxx).W */ -{ CPUFUNC(op_11f8_0), 0, 4600 }, /* MOVE.B (xxx).W,(xxx).W */ -{ CPUFUNC(op_11f9_0), 0, 4601 }, /* MOVE.B (xxx).L,(xxx).W */ -{ CPUFUNC(op_11fa_0), 0, 4602 }, /* MOVE.B (d16,PC),(xxx).W */ -{ CPUFUNC(op_11fb_0), 0, 4603 }, /* MOVE.B (d8,PC,Xn),(xxx).W */ -{ CPUFUNC(op_11fc_0), 0, 4604 }, /* MOVE.B #.B,(xxx).W */ -{ CPUFUNC(op_13c0_0), 0, 5056 }, /* MOVE.B Dn,(xxx).L */ -{ CPUFUNC(op_13d0_0), 0, 5072 }, /* MOVE.B (An),(xxx).L */ -{ CPUFUNC(op_13d8_0), 0, 5080 }, /* MOVE.B (An)+,(xxx).L */ -{ CPUFUNC(op_13e0_0), 0, 5088 }, /* MOVE.B -(An),(xxx).L */ -{ CPUFUNC(op_13e8_0), 0, 5096 }, /* MOVE.B (d16,An),(xxx).L */ -{ CPUFUNC(op_13f0_0), 0, 5104 }, /* MOVE.B (d8,An,Xn),(xxx).L */ -{ CPUFUNC(op_13f8_0), 0, 5112 }, /* MOVE.B (xxx).W,(xxx).L */ -{ CPUFUNC(op_13f9_0), 0, 5113 }, /* MOVE.B (xxx).L,(xxx).L */ -{ CPUFUNC(op_13fa_0), 0, 5114 }, /* MOVE.B (d16,PC),(xxx).L */ -{ CPUFUNC(op_13fb_0), 0, 5115 }, /* MOVE.B (d8,PC,Xn),(xxx).L */ -{ CPUFUNC(op_13fc_0), 0, 5116 }, /* MOVE.B #.B,(xxx).L */ -{ CPUFUNC(op_2000_0), 0, 8192 }, /* MOVE.L Dn,Dn */ -{ CPUFUNC(op_2008_0), 0, 8200 }, /* MOVE.L An,Dn */ -{ CPUFUNC(op_2010_0), 0, 8208 }, /* MOVE.L (An),Dn */ -{ CPUFUNC(op_2018_0), 0, 8216 }, /* MOVE.L (An)+,Dn */ -{ CPUFUNC(op_2020_0), 0, 8224 }, /* MOVE.L -(An),Dn */ -{ CPUFUNC(op_2028_0), 0, 8232 }, /* MOVE.L (d16,An),Dn */ -{ CPUFUNC(op_2030_0), 0, 8240 }, /* MOVE.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_2038_0), 0, 8248 }, /* MOVE.L (xxx).W,Dn */ -{ CPUFUNC(op_2039_0), 0, 8249 }, /* MOVE.L (xxx).L,Dn */ -{ CPUFUNC(op_203a_0), 0, 8250 }, /* MOVE.L (d16,PC),Dn */ -{ CPUFUNC(op_203b_0), 0, 8251 }, /* MOVE.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_203c_0), 0, 8252 }, /* MOVE.L #.L,Dn */ -{ CPUFUNC_FF(op_2040_0), 0, 8256 }, /* MOVEA.L Dn,An */ -{ CPUFUNC_FF(op_2048_0), 0, 8264 }, /* MOVEA.L An,An */ -{ CPUFUNC_FF(op_2050_0), 0, 8272 }, /* MOVEA.L (An),An */ -{ CPUFUNC_FF(op_2058_0), 0, 8280 }, /* MOVEA.L (An)+,An */ -{ CPUFUNC_FF(op_2060_0), 0, 8288 }, /* MOVEA.L -(An),An */ -{ CPUFUNC_FF(op_2068_0), 0, 8296 }, /* MOVEA.L (d16,An),An */ -{ CPUFUNC_FF(op_2070_0), 0, 8304 }, /* MOVEA.L (d8,An,Xn),An */ -{ CPUFUNC_FF(op_2078_0), 0, 8312 }, /* MOVEA.L (xxx).W,An */ -{ CPUFUNC_FF(op_2079_0), 0, 8313 }, /* MOVEA.L (xxx).L,An */ -{ CPUFUNC_FF(op_207a_0), 0, 8314 }, /* MOVEA.L (d16,PC),An */ -{ CPUFUNC_FF(op_207b_0), 0, 8315 }, /* MOVEA.L (d8,PC,Xn),An */ -{ CPUFUNC_FF(op_207c_0), 0, 8316 }, /* MOVEA.L #.L,An */ -{ CPUFUNC(op_2080_0), 0, 8320 }, /* MOVE.L Dn,(An) */ -{ CPUFUNC(op_2088_0), 0, 8328 }, /* MOVE.L An,(An) */ -{ CPUFUNC(op_2090_0), 0, 8336 }, /* MOVE.L (An),(An) */ -{ CPUFUNC(op_2098_0), 0, 8344 }, /* MOVE.L (An)+,(An) */ -{ CPUFUNC(op_20a0_0), 0, 8352 }, /* MOVE.L -(An),(An) */ -{ CPUFUNC(op_20a8_0), 0, 8360 }, /* MOVE.L (d16,An),(An) */ -{ CPUFUNC(op_20b0_0), 0, 8368 }, /* MOVE.L (d8,An,Xn),(An) */ -{ CPUFUNC(op_20b8_0), 0, 8376 }, /* MOVE.L (xxx).W,(An) */ -{ CPUFUNC(op_20b9_0), 0, 8377 }, /* MOVE.L (xxx).L,(An) */ -{ CPUFUNC(op_20ba_0), 0, 8378 }, /* MOVE.L (d16,PC),(An) */ -{ CPUFUNC(op_20bb_0), 0, 8379 }, /* MOVE.L (d8,PC,Xn),(An) */ -{ CPUFUNC(op_20bc_0), 0, 8380 }, /* MOVE.L #.L,(An) */ -{ CPUFUNC(op_20c0_0), 0, 8384 }, /* MOVE.L Dn,(An)+ */ -{ CPUFUNC(op_20c8_0), 0, 8392 }, /* MOVE.L An,(An)+ */ -{ CPUFUNC(op_20d0_0), 0, 8400 }, /* MOVE.L (An),(An)+ */ -{ CPUFUNC(op_20d8_0), 0, 8408 }, /* MOVE.L (An)+,(An)+ */ -{ CPUFUNC(op_20e0_0), 0, 8416 }, /* MOVE.L -(An),(An)+ */ -{ CPUFUNC(op_20e8_0), 0, 8424 }, /* MOVE.L (d16,An),(An)+ */ -{ CPUFUNC(op_20f0_0), 0, 8432 }, /* MOVE.L (d8,An,Xn),(An)+ */ -{ CPUFUNC(op_20f8_0), 0, 8440 }, /* MOVE.L (xxx).W,(An)+ */ -{ CPUFUNC(op_20f9_0), 0, 8441 }, /* MOVE.L (xxx).L,(An)+ */ -{ CPUFUNC(op_20fa_0), 0, 8442 }, /* MOVE.L (d16,PC),(An)+ */ -{ CPUFUNC(op_20fb_0), 0, 8443 }, /* MOVE.L (d8,PC,Xn),(An)+ */ -{ CPUFUNC(op_20fc_0), 0, 8444 }, /* MOVE.L #.L,(An)+ */ -{ CPUFUNC(op_2100_0), 0, 8448 }, /* MOVE.L Dn,-(An) */ -{ CPUFUNC(op_2108_0), 0, 8456 }, /* MOVE.L An,-(An) */ -{ CPUFUNC(op_2110_0), 0, 8464 }, /* MOVE.L (An),-(An) */ -{ CPUFUNC(op_2118_0), 0, 8472 }, /* MOVE.L (An)+,-(An) */ -{ CPUFUNC(op_2120_0), 0, 8480 }, /* MOVE.L -(An),-(An) */ -{ CPUFUNC(op_2128_0), 0, 8488 }, /* MOVE.L (d16,An),-(An) */ -{ CPUFUNC(op_2130_0), 0, 8496 }, /* MOVE.L (d8,An,Xn),-(An) */ -{ CPUFUNC(op_2138_0), 0, 8504 }, /* MOVE.L (xxx).W,-(An) */ -{ CPUFUNC(op_2139_0), 0, 8505 }, /* MOVE.L (xxx).L,-(An) */ -{ CPUFUNC(op_213a_0), 0, 8506 }, /* MOVE.L (d16,PC),-(An) */ -{ CPUFUNC(op_213b_0), 0, 8507 }, /* MOVE.L (d8,PC,Xn),-(An) */ -{ CPUFUNC(op_213c_0), 0, 8508 }, /* MOVE.L #.L,-(An) */ -{ CPUFUNC(op_2140_0), 0, 8512 }, /* MOVE.L Dn,(d16,An) */ -{ CPUFUNC(op_2148_0), 0, 8520 }, /* MOVE.L An,(d16,An) */ -{ CPUFUNC(op_2150_0), 0, 8528 }, /* MOVE.L (An),(d16,An) */ -{ CPUFUNC(op_2158_0), 0, 8536 }, /* MOVE.L (An)+,(d16,An) */ -{ CPUFUNC(op_2160_0), 0, 8544 }, /* MOVE.L -(An),(d16,An) */ -{ CPUFUNC(op_2168_0), 0, 8552 }, /* MOVE.L (d16,An),(d16,An) */ -{ CPUFUNC(op_2170_0), 0, 8560 }, /* MOVE.L (d8,An,Xn),(d16,An) */ -{ CPUFUNC(op_2178_0), 0, 8568 }, /* MOVE.L (xxx).W,(d16,An) */ -{ CPUFUNC(op_2179_0), 0, 8569 }, /* MOVE.L (xxx).L,(d16,An) */ -{ CPUFUNC(op_217a_0), 0, 8570 }, /* MOVE.L (d16,PC),(d16,An) */ -{ CPUFUNC(op_217b_0), 0, 8571 }, /* MOVE.L (d8,PC,Xn),(d16,An) */ -{ CPUFUNC(op_217c_0), 0, 8572 }, /* MOVE.L #.L,(d16,An) */ -{ CPUFUNC(op_2180_0), 0, 8576 }, /* MOVE.L Dn,(d8,An,Xn) */ -{ CPUFUNC(op_2188_0), 0, 8584 }, /* MOVE.L An,(d8,An,Xn) */ -{ CPUFUNC(op_2190_0), 0, 8592 }, /* MOVE.L (An),(d8,An,Xn) */ -{ CPUFUNC(op_2198_0), 0, 8600 }, /* MOVE.L (An)+,(d8,An,Xn) */ -{ CPUFUNC(op_21a0_0), 0, 8608 }, /* MOVE.L -(An),(d8,An,Xn) */ -{ CPUFUNC(op_21a8_0), 0, 8616 }, /* MOVE.L (d16,An),(d8,An,Xn) */ -{ CPUFUNC(op_21b0_0), 0, 8624 }, /* MOVE.L (d8,An,Xn),(d8,An,Xn) */ -{ CPUFUNC(op_21b8_0), 0, 8632 }, /* MOVE.L (xxx).W,(d8,An,Xn) */ -{ CPUFUNC(op_21b9_0), 0, 8633 }, /* MOVE.L (xxx).L,(d8,An,Xn) */ -{ CPUFUNC(op_21ba_0), 0, 8634 }, /* MOVE.L (d16,PC),(d8,An,Xn) */ -{ CPUFUNC(op_21bb_0), 0, 8635 }, /* MOVE.L (d8,PC,Xn),(d8,An,Xn) */ -{ CPUFUNC(op_21bc_0), 0, 8636 }, /* MOVE.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_21c0_0), 0, 8640 }, /* MOVE.L Dn,(xxx).W */ -{ CPUFUNC(op_21c8_0), 0, 8648 }, /* MOVE.L An,(xxx).W */ -{ CPUFUNC(op_21d0_0), 0, 8656 }, /* MOVE.L (An),(xxx).W */ -{ CPUFUNC(op_21d8_0), 0, 8664 }, /* MOVE.L (An)+,(xxx).W */ -{ CPUFUNC(op_21e0_0), 0, 8672 }, /* MOVE.L -(An),(xxx).W */ -{ CPUFUNC(op_21e8_0), 0, 8680 }, /* MOVE.L (d16,An),(xxx).W */ -{ CPUFUNC(op_21f0_0), 0, 8688 }, /* MOVE.L (d8,An,Xn),(xxx).W */ -{ CPUFUNC(op_21f8_0), 0, 8696 }, /* MOVE.L (xxx).W,(xxx).W */ -{ CPUFUNC(op_21f9_0), 0, 8697 }, /* MOVE.L (xxx).L,(xxx).W */ -{ CPUFUNC(op_21fa_0), 0, 8698 }, /* MOVE.L (d16,PC),(xxx).W */ -{ CPUFUNC(op_21fb_0), 0, 8699 }, /* MOVE.L (d8,PC,Xn),(xxx).W */ -{ CPUFUNC(op_21fc_0), 0, 8700 }, /* MOVE.L #.L,(xxx).W */ -{ CPUFUNC(op_23c0_0), 0, 9152 }, /* MOVE.L Dn,(xxx).L */ -{ CPUFUNC(op_23c8_0), 0, 9160 }, /* MOVE.L An,(xxx).L */ -{ CPUFUNC(op_23d0_0), 0, 9168 }, /* MOVE.L (An),(xxx).L */ -{ CPUFUNC(op_23d8_0), 0, 9176 }, /* MOVE.L (An)+,(xxx).L */ -{ CPUFUNC(op_23e0_0), 0, 9184 }, /* MOVE.L -(An),(xxx).L */ -{ CPUFUNC(op_23e8_0), 0, 9192 }, /* MOVE.L (d16,An),(xxx).L */ -{ CPUFUNC(op_23f0_0), 0, 9200 }, /* MOVE.L (d8,An,Xn),(xxx).L */ -{ CPUFUNC(op_23f8_0), 0, 9208 }, /* MOVE.L (xxx).W,(xxx).L */ -{ CPUFUNC(op_23f9_0), 0, 9209 }, /* MOVE.L (xxx).L,(xxx).L */ -{ CPUFUNC(op_23fa_0), 0, 9210 }, /* MOVE.L (d16,PC),(xxx).L */ -{ CPUFUNC(op_23fb_0), 0, 9211 }, /* MOVE.L (d8,PC,Xn),(xxx).L */ -{ CPUFUNC(op_23fc_0), 0, 9212 }, /* MOVE.L #.L,(xxx).L */ -{ CPUFUNC(op_3000_0), 0, 12288 }, /* MOVE.W Dn,Dn */ -{ CPUFUNC(op_3008_0), 0, 12296 }, /* MOVE.W An,Dn */ -{ CPUFUNC(op_3010_0), 0, 12304 }, /* MOVE.W (An),Dn */ -{ CPUFUNC(op_3018_0), 0, 12312 }, /* MOVE.W (An)+,Dn */ -{ CPUFUNC(op_3020_0), 0, 12320 }, /* MOVE.W -(An),Dn */ -{ CPUFUNC(op_3028_0), 0, 12328 }, /* MOVE.W (d16,An),Dn */ -{ CPUFUNC(op_3030_0), 0, 12336 }, /* MOVE.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_3038_0), 0, 12344 }, /* MOVE.W (xxx).W,Dn */ -{ CPUFUNC(op_3039_0), 0, 12345 }, /* MOVE.W (xxx).L,Dn */ -{ CPUFUNC(op_303a_0), 0, 12346 }, /* MOVE.W (d16,PC),Dn */ -{ CPUFUNC(op_303b_0), 0, 12347 }, /* MOVE.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_303c_0), 0, 12348 }, /* MOVE.W #.W,Dn */ -{ CPUFUNC_FF(op_3040_0), 0, 12352 }, /* MOVEA.W Dn,An */ -{ CPUFUNC_FF(op_3048_0), 0, 12360 }, /* MOVEA.W An,An */ -{ CPUFUNC_FF(op_3050_0), 0, 12368 }, /* MOVEA.W (An),An */ -{ CPUFUNC_FF(op_3058_0), 0, 12376 }, /* MOVEA.W (An)+,An */ -{ CPUFUNC_FF(op_3060_0), 0, 12384 }, /* MOVEA.W -(An),An */ -{ CPUFUNC_FF(op_3068_0), 0, 12392 }, /* MOVEA.W (d16,An),An */ -{ CPUFUNC_FF(op_3070_0), 0, 12400 }, /* MOVEA.W (d8,An,Xn),An */ -{ CPUFUNC_FF(op_3078_0), 0, 12408 }, /* MOVEA.W (xxx).W,An */ -{ CPUFUNC_FF(op_3079_0), 0, 12409 }, /* MOVEA.W (xxx).L,An */ -{ CPUFUNC_FF(op_307a_0), 0, 12410 }, /* MOVEA.W (d16,PC),An */ -{ CPUFUNC_FF(op_307b_0), 0, 12411 }, /* MOVEA.W (d8,PC,Xn),An */ -{ CPUFUNC_FF(op_307c_0), 0, 12412 }, /* MOVEA.W #.W,An */ -{ CPUFUNC(op_3080_0), 0, 12416 }, /* MOVE.W Dn,(An) */ -{ CPUFUNC(op_3088_0), 0, 12424 }, /* MOVE.W An,(An) */ -{ CPUFUNC(op_3090_0), 0, 12432 }, /* MOVE.W (An),(An) */ -{ CPUFUNC(op_3098_0), 0, 12440 }, /* MOVE.W (An)+,(An) */ -{ CPUFUNC(op_30a0_0), 0, 12448 }, /* MOVE.W -(An),(An) */ -{ CPUFUNC(op_30a8_0), 0, 12456 }, /* MOVE.W (d16,An),(An) */ -{ CPUFUNC(op_30b0_0), 0, 12464 }, /* MOVE.W (d8,An,Xn),(An) */ -{ CPUFUNC(op_30b8_0), 0, 12472 }, /* MOVE.W (xxx).W,(An) */ -{ CPUFUNC(op_30b9_0), 0, 12473 }, /* MOVE.W (xxx).L,(An) */ -{ CPUFUNC(op_30ba_0), 0, 12474 }, /* MOVE.W (d16,PC),(An) */ -{ CPUFUNC(op_30bb_0), 0, 12475 }, /* MOVE.W (d8,PC,Xn),(An) */ -{ CPUFUNC(op_30bc_0), 0, 12476 }, /* MOVE.W #.W,(An) */ -{ CPUFUNC(op_30c0_0), 0, 12480 }, /* MOVE.W Dn,(An)+ */ -{ CPUFUNC(op_30c8_0), 0, 12488 }, /* MOVE.W An,(An)+ */ -{ CPUFUNC(op_30d0_0), 0, 12496 }, /* MOVE.W (An),(An)+ */ -{ CPUFUNC(op_30d8_0), 0, 12504 }, /* MOVE.W (An)+,(An)+ */ -{ CPUFUNC(op_30e0_0), 0, 12512 }, /* MOVE.W -(An),(An)+ */ -{ CPUFUNC(op_30e8_0), 0, 12520 }, /* MOVE.W (d16,An),(An)+ */ -{ CPUFUNC(op_30f0_0), 0, 12528 }, /* MOVE.W (d8,An,Xn),(An)+ */ -{ CPUFUNC(op_30f8_0), 0, 12536 }, /* MOVE.W (xxx).W,(An)+ */ -{ CPUFUNC(op_30f9_0), 0, 12537 }, /* MOVE.W (xxx).L,(An)+ */ -{ CPUFUNC(op_30fa_0), 0, 12538 }, /* MOVE.W (d16,PC),(An)+ */ -{ CPUFUNC(op_30fb_0), 0, 12539 }, /* MOVE.W (d8,PC,Xn),(An)+ */ -{ CPUFUNC(op_30fc_0), 0, 12540 }, /* MOVE.W #.W,(An)+ */ -{ CPUFUNC(op_3100_0), 0, 12544 }, /* MOVE.W Dn,-(An) */ -{ CPUFUNC(op_3108_0), 0, 12552 }, /* MOVE.W An,-(An) */ -{ CPUFUNC(op_3110_0), 0, 12560 }, /* MOVE.W (An),-(An) */ -{ CPUFUNC(op_3118_0), 0, 12568 }, /* MOVE.W (An)+,-(An) */ -{ CPUFUNC(op_3120_0), 0, 12576 }, /* MOVE.W -(An),-(An) */ -{ CPUFUNC(op_3128_0), 0, 12584 }, /* MOVE.W (d16,An),-(An) */ -{ CPUFUNC(op_3130_0), 0, 12592 }, /* MOVE.W (d8,An,Xn),-(An) */ -{ CPUFUNC(op_3138_0), 0, 12600 }, /* MOVE.W (xxx).W,-(An) */ -{ CPUFUNC(op_3139_0), 0, 12601 }, /* MOVE.W (xxx).L,-(An) */ -{ CPUFUNC(op_313a_0), 0, 12602 }, /* MOVE.W (d16,PC),-(An) */ -{ CPUFUNC(op_313b_0), 0, 12603 }, /* MOVE.W (d8,PC,Xn),-(An) */ -{ CPUFUNC(op_313c_0), 0, 12604 }, /* MOVE.W #.W,-(An) */ -{ CPUFUNC(op_3140_0), 0, 12608 }, /* MOVE.W Dn,(d16,An) */ -{ CPUFUNC(op_3148_0), 0, 12616 }, /* MOVE.W An,(d16,An) */ -{ CPUFUNC(op_3150_0), 0, 12624 }, /* MOVE.W (An),(d16,An) */ -{ CPUFUNC(op_3158_0), 0, 12632 }, /* MOVE.W (An)+,(d16,An) */ -{ CPUFUNC(op_3160_0), 0, 12640 }, /* MOVE.W -(An),(d16,An) */ -{ CPUFUNC(op_3168_0), 0, 12648 }, /* MOVE.W (d16,An),(d16,An) */ -{ CPUFUNC(op_3170_0), 0, 12656 }, /* MOVE.W (d8,An,Xn),(d16,An) */ -{ CPUFUNC(op_3178_0), 0, 12664 }, /* MOVE.W (xxx).W,(d16,An) */ -{ CPUFUNC(op_3179_0), 0, 12665 }, /* MOVE.W (xxx).L,(d16,An) */ -{ CPUFUNC(op_317a_0), 0, 12666 }, /* MOVE.W (d16,PC),(d16,An) */ -{ CPUFUNC(op_317b_0), 0, 12667 }, /* MOVE.W (d8,PC,Xn),(d16,An) */ -{ CPUFUNC(op_317c_0), 0, 12668 }, /* MOVE.W #.W,(d16,An) */ -{ CPUFUNC(op_3180_0), 0, 12672 }, /* MOVE.W Dn,(d8,An,Xn) */ -{ CPUFUNC(op_3188_0), 0, 12680 }, /* MOVE.W An,(d8,An,Xn) */ -{ CPUFUNC(op_3190_0), 0, 12688 }, /* MOVE.W (An),(d8,An,Xn) */ -{ CPUFUNC(op_3198_0), 0, 12696 }, /* MOVE.W (An)+,(d8,An,Xn) */ -{ CPUFUNC(op_31a0_0), 0, 12704 }, /* MOVE.W -(An),(d8,An,Xn) */ -{ CPUFUNC(op_31a8_0), 0, 12712 }, /* MOVE.W (d16,An),(d8,An,Xn) */ -{ CPUFUNC(op_31b0_0), 0, 12720 }, /* MOVE.W (d8,An,Xn),(d8,An,Xn) */ -{ CPUFUNC(op_31b8_0), 0, 12728 }, /* MOVE.W (xxx).W,(d8,An,Xn) */ -{ CPUFUNC(op_31b9_0), 0, 12729 }, /* MOVE.W (xxx).L,(d8,An,Xn) */ -{ CPUFUNC(op_31ba_0), 0, 12730 }, /* MOVE.W (d16,PC),(d8,An,Xn) */ -{ CPUFUNC(op_31bb_0), 0, 12731 }, /* MOVE.W (d8,PC,Xn),(d8,An,Xn) */ -{ CPUFUNC(op_31bc_0), 0, 12732 }, /* MOVE.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_31c0_0), 0, 12736 }, /* MOVE.W Dn,(xxx).W */ -{ CPUFUNC(op_31c8_0), 0, 12744 }, /* MOVE.W An,(xxx).W */ -{ CPUFUNC(op_31d0_0), 0, 12752 }, /* MOVE.W (An),(xxx).W */ -{ CPUFUNC(op_31d8_0), 0, 12760 }, /* MOVE.W (An)+,(xxx).W */ -{ CPUFUNC(op_31e0_0), 0, 12768 }, /* MOVE.W -(An),(xxx).W */ -{ CPUFUNC(op_31e8_0), 0, 12776 }, /* MOVE.W (d16,An),(xxx).W */ -{ CPUFUNC(op_31f0_0), 0, 12784 }, /* MOVE.W (d8,An,Xn),(xxx).W */ -{ CPUFUNC(op_31f8_0), 0, 12792 }, /* MOVE.W (xxx).W,(xxx).W */ -{ CPUFUNC(op_31f9_0), 0, 12793 }, /* MOVE.W (xxx).L,(xxx).W */ -{ CPUFUNC(op_31fa_0), 0, 12794 }, /* MOVE.W (d16,PC),(xxx).W */ -{ CPUFUNC(op_31fb_0), 0, 12795 }, /* MOVE.W (d8,PC,Xn),(xxx).W */ -{ CPUFUNC(op_31fc_0), 0, 12796 }, /* MOVE.W #.W,(xxx).W */ -{ CPUFUNC(op_33c0_0), 0, 13248 }, /* MOVE.W Dn,(xxx).L */ -{ CPUFUNC(op_33c8_0), 0, 13256 }, /* MOVE.W An,(xxx).L */ -{ CPUFUNC(op_33d0_0), 0, 13264 }, /* MOVE.W (An),(xxx).L */ -{ CPUFUNC(op_33d8_0), 0, 13272 }, /* MOVE.W (An)+,(xxx).L */ -{ CPUFUNC(op_33e0_0), 0, 13280 }, /* MOVE.W -(An),(xxx).L */ -{ CPUFUNC(op_33e8_0), 0, 13288 }, /* MOVE.W (d16,An),(xxx).L */ -{ CPUFUNC(op_33f0_0), 0, 13296 }, /* MOVE.W (d8,An,Xn),(xxx).L */ -{ CPUFUNC(op_33f8_0), 0, 13304 }, /* MOVE.W (xxx).W,(xxx).L */ -{ CPUFUNC(op_33f9_0), 0, 13305 }, /* MOVE.W (xxx).L,(xxx).L */ -{ CPUFUNC(op_33fa_0), 0, 13306 }, /* MOVE.W (d16,PC),(xxx).L */ -{ CPUFUNC(op_33fb_0), 0, 13307 }, /* MOVE.W (d8,PC,Xn),(xxx).L */ -{ CPUFUNC(op_33fc_0), 0, 13308 }, /* MOVE.W #.W,(xxx).L */ -{ CPUFUNC(op_4000_0), 0, 16384 }, /* NEGX.B Dn */ -{ CPUFUNC(op_4010_0), 0, 16400 }, /* NEGX.B (An) */ -{ CPUFUNC(op_4018_0), 0, 16408 }, /* NEGX.B (An)+ */ -{ CPUFUNC(op_4020_0), 0, 16416 }, /* NEGX.B -(An) */ -{ CPUFUNC(op_4028_0), 0, 16424 }, /* NEGX.B (d16,An) */ -{ CPUFUNC(op_4030_0), 0, 16432 }, /* NEGX.B (d8,An,Xn) */ -{ CPUFUNC(op_4038_0), 0, 16440 }, /* NEGX.B (xxx).W */ -{ CPUFUNC(op_4039_0), 0, 16441 }, /* NEGX.B (xxx).L */ -{ CPUFUNC(op_4040_0), 0, 16448 }, /* NEGX.W Dn */ -{ CPUFUNC(op_4050_0), 0, 16464 }, /* NEGX.W (An) */ -{ CPUFUNC(op_4058_0), 0, 16472 }, /* NEGX.W (An)+ */ -{ CPUFUNC(op_4060_0), 0, 16480 }, /* NEGX.W -(An) */ -{ CPUFUNC(op_4068_0), 0, 16488 }, /* NEGX.W (d16,An) */ -{ CPUFUNC(op_4070_0), 0, 16496 }, /* NEGX.W (d8,An,Xn) */ -{ CPUFUNC(op_4078_0), 0, 16504 }, /* NEGX.W (xxx).W */ -{ CPUFUNC(op_4079_0), 0, 16505 }, /* NEGX.W (xxx).L */ -{ CPUFUNC(op_4080_0), 0, 16512 }, /* NEGX.L Dn */ -{ CPUFUNC(op_4090_0), 0, 16528 }, /* NEGX.L (An) */ -{ CPUFUNC(op_4098_0), 0, 16536 }, /* NEGX.L (An)+ */ -{ CPUFUNC(op_40a0_0), 0, 16544 }, /* NEGX.L -(An) */ -{ CPUFUNC(op_40a8_0), 0, 16552 }, /* NEGX.L (d16,An) */ -{ CPUFUNC(op_40b0_0), 0, 16560 }, /* NEGX.L (d8,An,Xn) */ -{ CPUFUNC(op_40b8_0), 0, 16568 }, /* NEGX.L (xxx).W */ -{ CPUFUNC(op_40b9_0), 0, 16569 }, /* NEGX.L (xxx).L */ -{ CPUFUNC_FF(op_40c0_0), 0, 16576 }, /* MVSR2.W Dn */ -{ CPUFUNC_FF(op_40d0_0), 0, 16592 }, /* MVSR2.W (An) */ -{ CPUFUNC_FF(op_40d8_0), 0, 16600 }, /* MVSR2.W (An)+ */ -{ CPUFUNC_FF(op_40e0_0), 0, 16608 }, /* MVSR2.W -(An) */ -{ CPUFUNC_FF(op_40e8_0), 0, 16616 }, /* MVSR2.W (d16,An) */ -{ CPUFUNC_FF(op_40f0_0), 0, 16624 }, /* MVSR2.W (d8,An,Xn) */ -{ CPUFUNC_FF(op_40f8_0), 0, 16632 }, /* MVSR2.W (xxx).W */ -{ CPUFUNC_FF(op_40f9_0), 0, 16633 }, /* MVSR2.W (xxx).L */ -{ CPUFUNC(op_4100_0), 0, 16640 }, /* CHK.L Dn,Dn */ -{ CPUFUNC(op_4110_0), 0, 16656 }, /* CHK.L (An),Dn */ -{ CPUFUNC(op_4118_0), 0, 16664 }, /* CHK.L (An)+,Dn */ -{ CPUFUNC(op_4120_0), 0, 16672 }, /* CHK.L -(An),Dn */ -{ CPUFUNC(op_4128_0), 0, 16680 }, /* CHK.L (d16,An),Dn */ -{ CPUFUNC(op_4130_0), 0, 16688 }, /* CHK.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_4138_0), 0, 16696 }, /* CHK.L (xxx).W,Dn */ -{ CPUFUNC(op_4139_0), 0, 16697 }, /* CHK.L (xxx).L,Dn */ -{ CPUFUNC(op_413a_0), 0, 16698 }, /* CHK.L (d16,PC),Dn */ -{ CPUFUNC(op_413b_0), 0, 16699 }, /* CHK.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_413c_0), 0, 16700 }, /* CHK.L #.L,Dn */ -{ CPUFUNC(op_4180_0), 0, 16768 }, /* CHK.W Dn,Dn */ -{ CPUFUNC(op_4190_0), 0, 16784 }, /* CHK.W (An),Dn */ -{ CPUFUNC(op_4198_0), 0, 16792 }, /* CHK.W (An)+,Dn */ -{ CPUFUNC(op_41a0_0), 0, 16800 }, /* CHK.W -(An),Dn */ -{ CPUFUNC(op_41a8_0), 0, 16808 }, /* CHK.W (d16,An),Dn */ -{ CPUFUNC(op_41b0_0), 0, 16816 }, /* CHK.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_41b8_0), 0, 16824 }, /* CHK.W (xxx).W,Dn */ -{ CPUFUNC(op_41b9_0), 0, 16825 }, /* CHK.W (xxx).L,Dn */ -{ CPUFUNC(op_41ba_0), 0, 16826 }, /* CHK.W (d16,PC),Dn */ -{ CPUFUNC(op_41bb_0), 0, 16827 }, /* CHK.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_41bc_0), 0, 16828 }, /* CHK.W #.W,Dn */ -{ CPUFUNC_FF(op_41d0_0), 0, 16848 }, /* LEA.L (An),An */ -{ CPUFUNC_FF(op_41e8_0), 0, 16872 }, /* LEA.L (d16,An),An */ -{ CPUFUNC_FF(op_41f0_0), 0, 16880 }, /* LEA.L (d8,An,Xn),An */ -{ CPUFUNC_FF(op_41f8_0), 0, 16888 }, /* LEA.L (xxx).W,An */ -{ CPUFUNC_FF(op_41f9_0), 0, 16889 }, /* LEA.L (xxx).L,An */ -{ CPUFUNC_FF(op_41fa_0), 0, 16890 }, /* LEA.L (d16,PC),An */ -{ CPUFUNC_FF(op_41fb_0), 0, 16891 }, /* LEA.L (d8,PC,Xn),An */ -{ CPUFUNC(op_4200_0), 0, 16896 }, /* CLR.B Dn */ -{ CPUFUNC(op_4210_0), 0, 16912 }, /* CLR.B (An) */ -{ CPUFUNC(op_4218_0), 0, 16920 }, /* CLR.B (An)+ */ -{ CPUFUNC(op_4220_0), 0, 16928 }, /* CLR.B -(An) */ -{ CPUFUNC(op_4228_0), 0, 16936 }, /* CLR.B (d16,An) */ -{ CPUFUNC(op_4230_0), 0, 16944 }, /* CLR.B (d8,An,Xn) */ -{ CPUFUNC(op_4238_0), 0, 16952 }, /* CLR.B (xxx).W */ -{ CPUFUNC(op_4239_0), 0, 16953 }, /* CLR.B (xxx).L */ -{ CPUFUNC(op_4240_0), 0, 16960 }, /* CLR.W Dn */ -{ CPUFUNC(op_4250_0), 0, 16976 }, /* CLR.W (An) */ -{ CPUFUNC(op_4258_0), 0, 16984 }, /* CLR.W (An)+ */ -{ CPUFUNC(op_4260_0), 0, 16992 }, /* CLR.W -(An) */ -{ CPUFUNC(op_4268_0), 0, 17000 }, /* CLR.W (d16,An) */ -{ CPUFUNC(op_4270_0), 0, 17008 }, /* CLR.W (d8,An,Xn) */ -{ CPUFUNC(op_4278_0), 0, 17016 }, /* CLR.W (xxx).W */ -{ CPUFUNC(op_4279_0), 0, 17017 }, /* CLR.W (xxx).L */ -{ CPUFUNC(op_4280_0), 0, 17024 }, /* CLR.L Dn */ -{ CPUFUNC(op_4290_0), 0, 17040 }, /* CLR.L (An) */ -{ CPUFUNC(op_4298_0), 0, 17048 }, /* CLR.L (An)+ */ -{ CPUFUNC(op_42a0_0), 0, 17056 }, /* CLR.L -(An) */ -{ CPUFUNC(op_42a8_0), 0, 17064 }, /* CLR.L (d16,An) */ -{ CPUFUNC(op_42b0_0), 0, 17072 }, /* CLR.L (d8,An,Xn) */ -{ CPUFUNC(op_42b8_0), 0, 17080 }, /* CLR.L (xxx).W */ -{ CPUFUNC(op_42b9_0), 0, 17081 }, /* CLR.L (xxx).L */ -{ CPUFUNC_FF(op_42c0_0), 0, 17088 }, /* MVSR2.B Dn */ -{ CPUFUNC_FF(op_42d0_0), 0, 17104 }, /* MVSR2.B (An) */ -{ CPUFUNC_FF(op_42d8_0), 0, 17112 }, /* MVSR2.B (An)+ */ -{ CPUFUNC_FF(op_42e0_0), 0, 17120 }, /* MVSR2.B -(An) */ -{ CPUFUNC_FF(op_42e8_0), 0, 17128 }, /* MVSR2.B (d16,An) */ -{ CPUFUNC_FF(op_42f0_0), 0, 17136 }, /* MVSR2.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_42f8_0), 0, 17144 }, /* MVSR2.B (xxx).W */ -{ CPUFUNC_FF(op_42f9_0), 0, 17145 }, /* MVSR2.B (xxx).L */ -{ CPUFUNC(op_4400_0), 0, 17408 }, /* NEG.B Dn */ -{ CPUFUNC(op_4410_0), 0, 17424 }, /* NEG.B (An) */ -{ CPUFUNC(op_4418_0), 0, 17432 }, /* NEG.B (An)+ */ -{ CPUFUNC(op_4420_0), 0, 17440 }, /* NEG.B -(An) */ -{ CPUFUNC(op_4428_0), 0, 17448 }, /* NEG.B (d16,An) */ -{ CPUFUNC(op_4430_0), 0, 17456 }, /* NEG.B (d8,An,Xn) */ -{ CPUFUNC(op_4438_0), 0, 17464 }, /* NEG.B (xxx).W */ -{ CPUFUNC(op_4439_0), 0, 17465 }, /* NEG.B (xxx).L */ -{ CPUFUNC(op_4440_0), 0, 17472 }, /* NEG.W Dn */ -{ CPUFUNC(op_4450_0), 0, 17488 }, /* NEG.W (An) */ -{ CPUFUNC(op_4458_0), 0, 17496 }, /* NEG.W (An)+ */ -{ CPUFUNC(op_4460_0), 0, 17504 }, /* NEG.W -(An) */ -{ CPUFUNC(op_4468_0), 0, 17512 }, /* NEG.W (d16,An) */ -{ CPUFUNC(op_4470_0), 0, 17520 }, /* NEG.W (d8,An,Xn) */ -{ CPUFUNC(op_4478_0), 0, 17528 }, /* NEG.W (xxx).W */ -{ CPUFUNC(op_4479_0), 0, 17529 }, /* NEG.W (xxx).L */ -{ CPUFUNC(op_4480_0), 0, 17536 }, /* NEG.L Dn */ -{ CPUFUNC(op_4490_0), 0, 17552 }, /* NEG.L (An) */ -{ CPUFUNC(op_4498_0), 0, 17560 }, /* NEG.L (An)+ */ -{ CPUFUNC(op_44a0_0), 0, 17568 }, /* NEG.L -(An) */ -{ CPUFUNC(op_44a8_0), 0, 17576 }, /* NEG.L (d16,An) */ -{ CPUFUNC(op_44b0_0), 0, 17584 }, /* NEG.L (d8,An,Xn) */ -{ CPUFUNC(op_44b8_0), 0, 17592 }, /* NEG.L (xxx).W */ -{ CPUFUNC(op_44b9_0), 0, 17593 }, /* NEG.L (xxx).L */ -{ CPUFUNC(op_44c0_0), 0, 17600 }, /* MV2SR.B Dn */ -{ CPUFUNC(op_44d0_0), 0, 17616 }, /* MV2SR.B (An) */ -{ CPUFUNC(op_44d8_0), 0, 17624 }, /* MV2SR.B (An)+ */ -{ CPUFUNC(op_44e0_0), 0, 17632 }, /* MV2SR.B -(An) */ -{ CPUFUNC(op_44e8_0), 0, 17640 }, /* MV2SR.B (d16,An) */ -{ CPUFUNC(op_44f0_0), 0, 17648 }, /* MV2SR.B (d8,An,Xn) */ -{ CPUFUNC(op_44f8_0), 0, 17656 }, /* MV2SR.B (xxx).W */ -{ CPUFUNC(op_44f9_0), 0, 17657 }, /* MV2SR.B (xxx).L */ -{ CPUFUNC(op_44fa_0), 0, 17658 }, /* MV2SR.B (d16,PC) */ -{ CPUFUNC(op_44fb_0), 0, 17659 }, /* MV2SR.B (d8,PC,Xn) */ -{ CPUFUNC(op_44fc_0), 0, 17660 }, /* MV2SR.B #.B */ -{ CPUFUNC(op_4600_0), 0, 17920 }, /* NOT.B Dn */ -{ CPUFUNC(op_4610_0), 0, 17936 }, /* NOT.B (An) */ -{ CPUFUNC(op_4618_0), 0, 17944 }, /* NOT.B (An)+ */ -{ CPUFUNC(op_4620_0), 0, 17952 }, /* NOT.B -(An) */ -{ CPUFUNC(op_4628_0), 0, 17960 }, /* NOT.B (d16,An) */ -{ CPUFUNC(op_4630_0), 0, 17968 }, /* NOT.B (d8,An,Xn) */ -{ CPUFUNC(op_4638_0), 0, 17976 }, /* NOT.B (xxx).W */ -{ CPUFUNC(op_4639_0), 0, 17977 }, /* NOT.B (xxx).L */ -{ CPUFUNC(op_4640_0), 0, 17984 }, /* NOT.W Dn */ -{ CPUFUNC(op_4650_0), 0, 18000 }, /* NOT.W (An) */ -{ CPUFUNC(op_4658_0), 0, 18008 }, /* NOT.W (An)+ */ -{ CPUFUNC(op_4660_0), 0, 18016 }, /* NOT.W -(An) */ -{ CPUFUNC(op_4668_0), 0, 18024 }, /* NOT.W (d16,An) */ -{ CPUFUNC(op_4670_0), 0, 18032 }, /* NOT.W (d8,An,Xn) */ -{ CPUFUNC(op_4678_0), 0, 18040 }, /* NOT.W (xxx).W */ -{ CPUFUNC(op_4679_0), 0, 18041 }, /* NOT.W (xxx).L */ -{ CPUFUNC(op_4680_0), 0, 18048 }, /* NOT.L Dn */ -{ CPUFUNC(op_4690_0), 0, 18064 }, /* NOT.L (An) */ -{ CPUFUNC(op_4698_0), 0, 18072 }, /* NOT.L (An)+ */ -{ CPUFUNC(op_46a0_0), 0, 18080 }, /* NOT.L -(An) */ -{ CPUFUNC(op_46a8_0), 0, 18088 }, /* NOT.L (d16,An) */ -{ CPUFUNC(op_46b0_0), 0, 18096 }, /* NOT.L (d8,An,Xn) */ -{ CPUFUNC(op_46b8_0), 0, 18104 }, /* NOT.L (xxx).W */ -{ CPUFUNC(op_46b9_0), 0, 18105 }, /* NOT.L (xxx).L */ -{ CPUFUNC(op_46c0_0), 0, 18112 }, /* MV2SR.W Dn */ -{ CPUFUNC(op_46d0_0), 0, 18128 }, /* MV2SR.W (An) */ -{ CPUFUNC(op_46d8_0), 0, 18136 }, /* MV2SR.W (An)+ */ -{ CPUFUNC(op_46e0_0), 0, 18144 }, /* MV2SR.W -(An) */ -{ CPUFUNC(op_46e8_0), 0, 18152 }, /* MV2SR.W (d16,An) */ -{ CPUFUNC(op_46f0_0), 0, 18160 }, /* MV2SR.W (d8,An,Xn) */ -{ CPUFUNC(op_46f8_0), 0, 18168 }, /* MV2SR.W (xxx).W */ -{ CPUFUNC(op_46f9_0), 0, 18169 }, /* MV2SR.W (xxx).L */ -{ CPUFUNC(op_46fa_0), 0, 18170 }, /* MV2SR.W (d16,PC) */ -{ CPUFUNC(op_46fb_0), 0, 18171 }, /* MV2SR.W (d8,PC,Xn) */ -{ CPUFUNC(op_46fc_0), 0, 18172 }, /* MV2SR.W #.W */ -{ CPUFUNC(op_4800_1), 0, 18432 }, /* NBCD.B Dn */ -{ CPUFUNC_FF(op_4808_0), 0, 18440 }, /* LINK.L An,#.L */ -{ CPUFUNC(op_4810_1), 0, 18448 }, /* NBCD.B (An) */ -{ CPUFUNC(op_4818_1), 0, 18456 }, /* NBCD.B (An)+ */ -{ CPUFUNC(op_4820_1), 0, 18464 }, /* NBCD.B -(An) */ -{ CPUFUNC(op_4828_1), 0, 18472 }, /* NBCD.B (d16,An) */ -{ CPUFUNC(op_4830_1), 0, 18480 }, /* NBCD.B (d8,An,Xn) */ -{ CPUFUNC(op_4838_1), 0, 18488 }, /* NBCD.B (xxx).W */ -{ CPUFUNC(op_4839_1), 0, 18489 }, /* NBCD.B (xxx).L */ -{ CPUFUNC(op_4840_0), 0, 18496 }, /* SWAP.W Dn */ -{ CPUFUNC_FF(op_4848_0), 0, 18504 }, /* BKPT.L # */ -{ CPUFUNC_FF(op_4850_0), 0, 18512 }, /* PEA.L (An) */ -{ CPUFUNC_FF(op_4868_0), 0, 18536 }, /* PEA.L (d16,An) */ -{ CPUFUNC_FF(op_4870_0), 0, 18544 }, /* PEA.L (d8,An,Xn) */ -{ CPUFUNC_FF(op_4878_0), 0, 18552 }, /* PEA.L (xxx).W */ -{ CPUFUNC_FF(op_4879_0), 0, 18553 }, /* PEA.L (xxx).L */ -{ CPUFUNC_FF(op_487a_0), 0, 18554 }, /* PEA.L (d16,PC) */ -{ CPUFUNC_FF(op_487b_0), 0, 18555 }, /* PEA.L (d8,PC,Xn) */ -{ CPUFUNC(op_4880_0), 0, 18560 }, /* EXT.W Dn */ -{ CPUFUNC_FF(op_4890_0), 0, 18576 }, /* MVMLE.W #.W,(An) */ -{ CPUFUNC_FF(op_48a0_0), 0, 18592 }, /* MVMLE.W #.W,-(An) */ -{ CPUFUNC_FF(op_48a8_0), 0, 18600 }, /* MVMLE.W #.W,(d16,An) */ -{ CPUFUNC_FF(op_48b0_0), 0, 18608 }, /* MVMLE.W #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_48b8_0), 0, 18616 }, /* MVMLE.W #.W,(xxx).W */ -{ CPUFUNC_FF(op_48b9_0), 0, 18617 }, /* MVMLE.W #.W,(xxx).L */ -{ CPUFUNC(op_48c0_0), 0, 18624 }, /* EXT.L Dn */ -{ CPUFUNC_FF(op_48d0_0), 0, 18640 }, /* MVMLE.L #.W,(An) */ -{ CPUFUNC_FF(op_48e0_0), 0, 18656 }, /* MVMLE.L #.W,-(An) */ -{ CPUFUNC_FF(op_48e8_0), 0, 18664 }, /* MVMLE.L #.W,(d16,An) */ -{ CPUFUNC_FF(op_48f0_0), 0, 18672 }, /* MVMLE.L #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_48f8_0), 0, 18680 }, /* MVMLE.L #.W,(xxx).W */ -{ CPUFUNC_FF(op_48f9_0), 0, 18681 }, /* MVMLE.L #.W,(xxx).L */ -{ CPUFUNC(op_49c0_0), 0, 18880 }, /* EXT.B Dn */ -{ CPUFUNC(op_4a00_0), 0, 18944 }, /* TST.B Dn */ -{ CPUFUNC(op_4a10_0), 0, 18960 }, /* TST.B (An) */ -{ CPUFUNC(op_4a18_0), 0, 18968 }, /* TST.B (An)+ */ -{ CPUFUNC(op_4a20_0), 0, 18976 }, /* TST.B -(An) */ -{ CPUFUNC(op_4a28_0), 0, 18984 }, /* TST.B (d16,An) */ -{ CPUFUNC(op_4a30_0), 0, 18992 }, /* TST.B (d8,An,Xn) */ -{ CPUFUNC(op_4a38_0), 0, 19000 }, /* TST.B (xxx).W */ -{ CPUFUNC(op_4a39_0), 0, 19001 }, /* TST.B (xxx).L */ -{ CPUFUNC(op_4a3a_0), 0, 19002 }, /* TST.B (d16,PC) */ -{ CPUFUNC(op_4a3b_0), 0, 19003 }, /* TST.B (d8,PC,Xn) */ -{ CPUFUNC(op_4a3c_0), 0, 19004 }, /* TST.B #.B */ -{ CPUFUNC(op_4a40_0), 0, 19008 }, /* TST.W Dn */ -{ CPUFUNC(op_4a48_0), 0, 19016 }, /* TST.W An */ -{ CPUFUNC(op_4a50_0), 0, 19024 }, /* TST.W (An) */ -{ CPUFUNC(op_4a58_0), 0, 19032 }, /* TST.W (An)+ */ -{ CPUFUNC(op_4a60_0), 0, 19040 }, /* TST.W -(An) */ -{ CPUFUNC(op_4a68_0), 0, 19048 }, /* TST.W (d16,An) */ -{ CPUFUNC(op_4a70_0), 0, 19056 }, /* TST.W (d8,An,Xn) */ -{ CPUFUNC(op_4a78_0), 0, 19064 }, /* TST.W (xxx).W */ -{ CPUFUNC(op_4a79_0), 0, 19065 }, /* TST.W (xxx).L */ -{ CPUFUNC(op_4a7a_0), 0, 19066 }, /* TST.W (d16,PC) */ -{ CPUFUNC(op_4a7b_0), 0, 19067 }, /* TST.W (d8,PC,Xn) */ -{ CPUFUNC(op_4a7c_0), 0, 19068 }, /* TST.W #.W */ -{ CPUFUNC(op_4a80_0), 0, 19072 }, /* TST.L Dn */ -{ CPUFUNC(op_4a88_0), 0, 19080 }, /* TST.L An */ -{ CPUFUNC(op_4a90_0), 0, 19088 }, /* TST.L (An) */ -{ CPUFUNC(op_4a98_0), 0, 19096 }, /* TST.L (An)+ */ -{ CPUFUNC(op_4aa0_0), 0, 19104 }, /* TST.L -(An) */ -{ CPUFUNC(op_4aa8_0), 0, 19112 }, /* TST.L (d16,An) */ -{ CPUFUNC(op_4ab0_0), 0, 19120 }, /* TST.L (d8,An,Xn) */ -{ CPUFUNC(op_4ab8_0), 0, 19128 }, /* TST.L (xxx).W */ -{ CPUFUNC(op_4ab9_0), 0, 19129 }, /* TST.L (xxx).L */ -{ CPUFUNC(op_4aba_0), 0, 19130 }, /* TST.L (d16,PC) */ -{ CPUFUNC(op_4abb_0), 0, 19131 }, /* TST.L (d8,PC,Xn) */ -{ CPUFUNC(op_4abc_0), 0, 19132 }, /* TST.L #.L */ -{ CPUFUNC(op_4ac0_0), 0, 19136 }, /* TAS.B Dn */ -{ CPUFUNC(op_4ad0_0), 0, 19152 }, /* TAS.B (An) */ -{ CPUFUNC(op_4ad8_0), 0, 19160 }, /* TAS.B (An)+ */ -{ CPUFUNC(op_4ae0_0), 0, 19168 }, /* TAS.B -(An) */ -{ CPUFUNC(op_4ae8_0), 0, 19176 }, /* TAS.B (d16,An) */ -{ CPUFUNC(op_4af0_0), 0, 19184 }, /* TAS.B (d8,An,Xn) */ -{ CPUFUNC(op_4af8_0), 0, 19192 }, /* TAS.B (xxx).W */ -{ CPUFUNC(op_4af9_0), 0, 19193 }, /* TAS.B (xxx).L */ -{ CPUFUNC(op_4c00_0), 0, 19456 }, /* MULL.L #.W,Dn */ -{ CPUFUNC(op_4c10_0), 0, 19472 }, /* MULL.L #.W,(An) */ -{ CPUFUNC(op_4c18_0), 0, 19480 }, /* MULL.L #.W,(An)+ */ -{ CPUFUNC(op_4c20_0), 0, 19488 }, /* MULL.L #.W,-(An) */ -{ CPUFUNC(op_4c28_0), 0, 19496 }, /* MULL.L #.W,(d16,An) */ -{ CPUFUNC(op_4c30_0), 0, 19504 }, /* MULL.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_4c38_0), 0, 19512 }, /* MULL.L #.W,(xxx).W */ -{ CPUFUNC(op_4c39_0), 0, 19513 }, /* MULL.L #.W,(xxx).L */ -{ CPUFUNC(op_4c3a_0), 0, 19514 }, /* MULL.L #.W,(d16,PC) */ -{ CPUFUNC(op_4c3b_0), 0, 19515 }, /* MULL.L #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_4c3c_0), 0, 19516 }, /* MULL.L #.W,#.L */ -{ CPUFUNC(op_4c40_0), 0, 19520 }, /* DIVL.L #.W,Dn */ -{ CPUFUNC(op_4c50_0), 0, 19536 }, /* DIVL.L #.W,(An) */ -{ CPUFUNC(op_4c58_0), 0, 19544 }, /* DIVL.L #.W,(An)+ */ -{ CPUFUNC(op_4c60_0), 0, 19552 }, /* DIVL.L #.W,-(An) */ -{ CPUFUNC(op_4c68_0), 0, 19560 }, /* DIVL.L #.W,(d16,An) */ -{ CPUFUNC(op_4c70_0), 0, 19568 }, /* DIVL.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_4c78_0), 0, 19576 }, /* DIVL.L #.W,(xxx).W */ -{ CPUFUNC(op_4c79_0), 0, 19577 }, /* DIVL.L #.W,(xxx).L */ -{ CPUFUNC(op_4c7a_0), 0, 19578 }, /* DIVL.L #.W,(d16,PC) */ -{ CPUFUNC(op_4c7b_0), 0, 19579 }, /* DIVL.L #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_4c7c_0), 0, 19580 }, /* DIVL.L #.W,#.L */ -{ CPUFUNC_FF(op_4c90_0), 0, 19600 }, /* MVMEL.W #.W,(An) */ -{ CPUFUNC_FF(op_4c98_0), 0, 19608 }, /* MVMEL.W #.W,(An)+ */ -{ CPUFUNC_FF(op_4ca8_0), 0, 19624 }, /* MVMEL.W #.W,(d16,An) */ -{ CPUFUNC_FF(op_4cb0_0), 0, 19632 }, /* MVMEL.W #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_4cb8_0), 0, 19640 }, /* MVMEL.W #.W,(xxx).W */ -{ CPUFUNC_FF(op_4cb9_0), 0, 19641 }, /* MVMEL.W #.W,(xxx).L */ -{ CPUFUNC_FF(op_4cba_0), 0, 19642 }, /* MVMEL.W #.W,(d16,PC) */ -{ CPUFUNC_FF(op_4cbb_0), 0, 19643 }, /* MVMEL.W #.W,(d8,PC,Xn) */ -{ CPUFUNC_FF(op_4cd0_0), 0, 19664 }, /* MVMEL.L #.W,(An) */ -{ CPUFUNC_FF(op_4cd8_0), 0, 19672 }, /* MVMEL.L #.W,(An)+ */ -{ CPUFUNC_FF(op_4ce8_0), 0, 19688 }, /* MVMEL.L #.W,(d16,An) */ -{ CPUFUNC_FF(op_4cf0_0), 0, 19696 }, /* MVMEL.L #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_4cf8_0), 0, 19704 }, /* MVMEL.L #.W,(xxx).W */ -{ CPUFUNC_FF(op_4cf9_0), 0, 19705 }, /* MVMEL.L #.W,(xxx).L */ -{ CPUFUNC_FF(op_4cfa_0), 0, 19706 }, /* MVMEL.L #.W,(d16,PC) */ -{ CPUFUNC_FF(op_4cfb_0), 0, 19707 }, /* MVMEL.L #.W,(d8,PC,Xn) */ -{ CPUFUNC_FF(op_4e40_0), 0, 20032 }, /* TRAP.L # */ -{ CPUFUNC_FF(op_4e50_0), 0, 20048 }, /* LINK.W An,#.W */ -{ CPUFUNC_FF(op_4e58_0), 0, 20056 }, /* UNLK.L An */ -{ CPUFUNC_FF(op_4e60_0), 0, 20064 }, /* MVR2USP.L An */ -{ CPUFUNC_FF(op_4e68_0), 0, 20072 }, /* MVUSP2R.L An */ -{ CPUFUNC_FF(op_4e70_0), 0, 20080 }, /* RESET.L */ -{ CPUFUNC_FF(op_4e71_0), 0, 20081 }, /* NOP.L */ -{ CPUFUNC(op_4e72_0), 0, 20082 }, /* STOP.L #.W */ -{ CPUFUNC(op_4e73_0), 0, 20083 }, /* RTE.L */ -{ CPUFUNC_FF(op_4e74_0), 0, 20084 }, /* RTD.L #.W */ -{ CPUFUNC_FF(op_4e75_0), 0, 20085 }, /* RTS.L */ -{ CPUFUNC_FF(op_4e76_0), 0, 20086 }, /* TRAPV.L */ -{ CPUFUNC(op_4e77_0), 0, 20087 }, /* RTR.L */ -{ CPUFUNC_FF(op_4e7a_0), 0, 20090 }, /* MOVEC2.L #.W */ -{ CPUFUNC_FF(op_4e7b_0), 0, 20091 }, /* MOVE2C.L #.W */ -{ CPUFUNC_FF(op_4e90_0), 0, 20112 }, /* JSR.L (An) */ -{ CPUFUNC_FF(op_4ea8_0), 0, 20136 }, /* JSR.L (d16,An) */ -{ CPUFUNC_FF(op_4eb0_0), 0, 20144 }, /* JSR.L (d8,An,Xn) */ -{ CPUFUNC_FF(op_4eb8_0), 0, 20152 }, /* JSR.L (xxx).W */ -{ CPUFUNC_FF(op_4eb9_0), 0, 20153 }, /* JSR.L (xxx).L */ -{ CPUFUNC_FF(op_4eba_0), 0, 20154 }, /* JSR.L (d16,PC) */ -{ CPUFUNC_FF(op_4ebb_0), 0, 20155 }, /* JSR.L (d8,PC,Xn) */ -{ CPUFUNC_FF(op_4ed0_0), 0, 20176 }, /* JMP.L (An) */ -{ CPUFUNC_FF(op_4ee8_0), 0, 20200 }, /* JMP.L (d16,An) */ -{ CPUFUNC_FF(op_4ef0_0), 0, 20208 }, /* JMP.L (d8,An,Xn) */ -{ CPUFUNC_FF(op_4ef8_0), 0, 20216 }, /* JMP.L (xxx).W */ -{ CPUFUNC_FF(op_4ef9_0), 0, 20217 }, /* JMP.L (xxx).L */ -{ CPUFUNC_FF(op_4efa_0), 0, 20218 }, /* JMP.L (d16,PC) */ -{ CPUFUNC_FF(op_4efb_0), 0, 20219 }, /* JMP.L (d8,PC,Xn) */ -{ CPUFUNC(op_5000_0), 0, 20480 }, /* ADD.B #,Dn */ -{ CPUFUNC(op_5010_0), 0, 20496 }, /* ADD.B #,(An) */ -{ CPUFUNC(op_5018_0), 0, 20504 }, /* ADD.B #,(An)+ */ -{ CPUFUNC(op_5020_0), 0, 20512 }, /* ADD.B #,-(An) */ -{ CPUFUNC(op_5028_0), 0, 20520 }, /* ADD.B #,(d16,An) */ -{ CPUFUNC(op_5030_0), 0, 20528 }, /* ADD.B #,(d8,An,Xn) */ -{ CPUFUNC(op_5038_0), 0, 20536 }, /* ADD.B #,(xxx).W */ -{ CPUFUNC(op_5039_0), 0, 20537 }, /* ADD.B #,(xxx).L */ -{ CPUFUNC(op_5040_0), 0, 20544 }, /* ADD.W #,Dn */ -{ CPUFUNC_FF(op_5048_0), 0, 20552 }, /* ADDA.W #,An */ -{ CPUFUNC(op_5050_0), 0, 20560 }, /* ADD.W #,(An) */ -{ CPUFUNC(op_5058_0), 0, 20568 }, /* ADD.W #,(An)+ */ -{ CPUFUNC(op_5060_0), 0, 20576 }, /* ADD.W #,-(An) */ -{ CPUFUNC(op_5068_0), 0, 20584 }, /* ADD.W #,(d16,An) */ -{ CPUFUNC(op_5070_0), 0, 20592 }, /* ADD.W #,(d8,An,Xn) */ -{ CPUFUNC(op_5078_0), 0, 20600 }, /* ADD.W #,(xxx).W */ -{ CPUFUNC(op_5079_0), 0, 20601 }, /* ADD.W #,(xxx).L */ -{ CPUFUNC(op_5080_0), 0, 20608 }, /* ADD.L #,Dn */ -{ CPUFUNC_FF(op_5088_0), 0, 20616 }, /* ADDA.L #,An */ -{ CPUFUNC(op_5090_0), 0, 20624 }, /* ADD.L #,(An) */ -{ CPUFUNC(op_5098_0), 0, 20632 }, /* ADD.L #,(An)+ */ -{ CPUFUNC(op_50a0_0), 0, 20640 }, /* ADD.L #,-(An) */ -{ CPUFUNC(op_50a8_0), 0, 20648 }, /* ADD.L #,(d16,An) */ -{ CPUFUNC(op_50b0_0), 0, 20656 }, /* ADD.L #,(d8,An,Xn) */ -{ CPUFUNC(op_50b8_0), 0, 20664 }, /* ADD.L #,(xxx).W */ -{ CPUFUNC(op_50b9_0), 0, 20665 }, /* ADD.L #,(xxx).L */ -{ CPUFUNC_FF(op_50c0_0), 0, 20672 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_50c8_0), 0, 20680 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_50d0_0), 0, 20688 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_50d8_0), 0, 20696 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_50e0_0), 0, 20704 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_50e8_0), 0, 20712 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_50f0_0), 0, 20720 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_50f8_0), 0, 20728 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_50f9_0), 0, 20729 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_50fa_0), 0, 20730 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_50fb_0), 0, 20731 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_50fc_0), 0, 20732 }, /* TRAPcc.L */ -{ CPUFUNC(op_5100_0), 0, 20736 }, /* SUB.B #,Dn */ -{ CPUFUNC(op_5110_0), 0, 20752 }, /* SUB.B #,(An) */ -{ CPUFUNC(op_5118_0), 0, 20760 }, /* SUB.B #,(An)+ */ -{ CPUFUNC(op_5120_0), 0, 20768 }, /* SUB.B #,-(An) */ -{ CPUFUNC(op_5128_0), 0, 20776 }, /* SUB.B #,(d16,An) */ -{ CPUFUNC(op_5130_0), 0, 20784 }, /* SUB.B #,(d8,An,Xn) */ -{ CPUFUNC(op_5138_0), 0, 20792 }, /* SUB.B #,(xxx).W */ -{ CPUFUNC(op_5139_0), 0, 20793 }, /* SUB.B #,(xxx).L */ -{ CPUFUNC(op_5140_0), 0, 20800 }, /* SUB.W #,Dn */ -{ CPUFUNC_FF(op_5148_0), 0, 20808 }, /* SUBA.W #,An */ -{ CPUFUNC(op_5150_0), 0, 20816 }, /* SUB.W #,(An) */ -{ CPUFUNC(op_5158_0), 0, 20824 }, /* SUB.W #,(An)+ */ -{ CPUFUNC(op_5160_0), 0, 20832 }, /* SUB.W #,-(An) */ -{ CPUFUNC(op_5168_0), 0, 20840 }, /* SUB.W #,(d16,An) */ -{ CPUFUNC(op_5170_0), 0, 20848 }, /* SUB.W #,(d8,An,Xn) */ -{ CPUFUNC(op_5178_0), 0, 20856 }, /* SUB.W #,(xxx).W */ -{ CPUFUNC(op_5179_0), 0, 20857 }, /* SUB.W #,(xxx).L */ -{ CPUFUNC(op_5180_0), 0, 20864 }, /* SUB.L #,Dn */ -{ CPUFUNC_FF(op_5188_0), 0, 20872 }, /* SUBA.L #,An */ -{ CPUFUNC(op_5190_0), 0, 20880 }, /* SUB.L #,(An) */ -{ CPUFUNC(op_5198_0), 0, 20888 }, /* SUB.L #,(An)+ */ -{ CPUFUNC(op_51a0_0), 0, 20896 }, /* SUB.L #,-(An) */ -{ CPUFUNC(op_51a8_0), 0, 20904 }, /* SUB.L #,(d16,An) */ -{ CPUFUNC(op_51b0_0), 0, 20912 }, /* SUB.L #,(d8,An,Xn) */ -{ CPUFUNC(op_51b8_0), 0, 20920 }, /* SUB.L #,(xxx).W */ -{ CPUFUNC(op_51b9_0), 0, 20921 }, /* SUB.L #,(xxx).L */ -{ CPUFUNC_FF(op_51c0_0), 0, 20928 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_51c8_0), 0, 20936 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_51d0_0), 0, 20944 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_51d8_0), 0, 20952 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_51e0_0), 0, 20960 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_51e8_0), 0, 20968 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_51f0_0), 0, 20976 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_51f8_0), 0, 20984 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_51f9_0), 0, 20985 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_51fa_0), 0, 20986 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_51fb_0), 0, 20987 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_51fc_0), 0, 20988 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_52c0_0), 0, 21184 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_52c8_0), 0, 21192 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_52d0_0), 0, 21200 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_52d8_0), 0, 21208 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_52e0_0), 0, 21216 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_52e8_0), 0, 21224 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_52f0_0), 0, 21232 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_52f8_0), 0, 21240 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_52f9_0), 0, 21241 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_52fa_0), 0, 21242 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_52fb_0), 0, 21243 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_52fc_0), 0, 21244 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_53c0_0), 0, 21440 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_53c8_0), 0, 21448 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_53d0_0), 0, 21456 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_53d8_0), 0, 21464 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_53e0_0), 0, 21472 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_53e8_0), 0, 21480 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_53f0_0), 0, 21488 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_53f8_0), 0, 21496 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_53f9_0), 0, 21497 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_53fa_0), 0, 21498 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_53fb_0), 0, 21499 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_53fc_0), 0, 21500 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_54c0_0), 0, 21696 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_54c8_0), 0, 21704 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_54d0_0), 0, 21712 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_54d8_0), 0, 21720 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_54e0_0), 0, 21728 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_54e8_0), 0, 21736 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_54f0_0), 0, 21744 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_54f8_0), 0, 21752 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_54f9_0), 0, 21753 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_54fa_0), 0, 21754 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_54fb_0), 0, 21755 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_54fc_0), 0, 21756 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_55c0_0), 0, 21952 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_55c8_0), 0, 21960 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_55d0_0), 0, 21968 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_55d8_0), 0, 21976 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_55e0_0), 0, 21984 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_55e8_0), 0, 21992 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_55f0_0), 0, 22000 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_55f8_0), 0, 22008 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_55f9_0), 0, 22009 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_55fa_0), 0, 22010 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_55fb_0), 0, 22011 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_55fc_0), 0, 22012 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_56c0_0), 0, 22208 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_56c8_0), 0, 22216 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_56d0_0), 0, 22224 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_56d8_0), 0, 22232 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_56e0_0), 0, 22240 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_56e8_0), 0, 22248 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_56f0_0), 0, 22256 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_56f8_0), 0, 22264 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_56f9_0), 0, 22265 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_56fa_0), 0, 22266 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_56fb_0), 0, 22267 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_56fc_0), 0, 22268 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_57c0_0), 0, 22464 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_57c8_0), 0, 22472 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_57d0_0), 0, 22480 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_57d8_0), 0, 22488 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_57e0_0), 0, 22496 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_57e8_0), 0, 22504 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_57f0_0), 0, 22512 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_57f8_0), 0, 22520 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_57f9_0), 0, 22521 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_57fa_0), 0, 22522 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_57fb_0), 0, 22523 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_57fc_0), 0, 22524 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_58c0_0), 0, 22720 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_58c8_0), 0, 22728 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_58d0_0), 0, 22736 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_58d8_0), 0, 22744 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_58e0_0), 0, 22752 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_58e8_0), 0, 22760 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_58f0_0), 0, 22768 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_58f8_0), 0, 22776 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_58f9_0), 0, 22777 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_58fa_0), 0, 22778 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_58fb_0), 0, 22779 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_58fc_0), 0, 22780 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_59c0_0), 0, 22976 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_59c8_0), 0, 22984 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_59d0_0), 0, 22992 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_59d8_0), 0, 23000 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_59e0_0), 0, 23008 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_59e8_0), 0, 23016 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_59f0_0), 0, 23024 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_59f8_0), 0, 23032 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_59f9_0), 0, 23033 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_59fa_0), 0, 23034 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_59fb_0), 0, 23035 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_59fc_0), 0, 23036 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_5ac0_0), 0, 23232 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_5ac8_0), 0, 23240 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_5ad0_0), 0, 23248 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_5ad8_0), 0, 23256 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_5ae0_0), 0, 23264 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_5ae8_0), 0, 23272 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_5af0_0), 0, 23280 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_5af8_0), 0, 23288 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_5af9_0), 0, 23289 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_5afa_0), 0, 23290 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_5afb_0), 0, 23291 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_5afc_0), 0, 23292 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_5bc0_0), 0, 23488 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_5bc8_0), 0, 23496 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_5bd0_0), 0, 23504 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_5bd8_0), 0, 23512 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_5be0_0), 0, 23520 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_5be8_0), 0, 23528 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_5bf0_0), 0, 23536 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_5bf8_0), 0, 23544 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_5bf9_0), 0, 23545 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_5bfa_0), 0, 23546 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_5bfb_0), 0, 23547 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_5bfc_0), 0, 23548 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_5cc0_0), 0, 23744 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_5cc8_0), 0, 23752 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_5cd0_0), 0, 23760 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_5cd8_0), 0, 23768 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_5ce0_0), 0, 23776 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_5ce8_0), 0, 23784 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_5cf0_0), 0, 23792 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_5cf8_0), 0, 23800 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_5cf9_0), 0, 23801 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_5cfa_0), 0, 23802 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_5cfb_0), 0, 23803 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_5cfc_0), 0, 23804 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_5dc0_0), 0, 24000 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_5dc8_0), 0, 24008 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_5dd0_0), 0, 24016 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_5dd8_0), 0, 24024 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_5de0_0), 0, 24032 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_5de8_0), 0, 24040 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_5df0_0), 0, 24048 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_5df8_0), 0, 24056 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_5df9_0), 0, 24057 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_5dfa_0), 0, 24058 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_5dfb_0), 0, 24059 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_5dfc_0), 0, 24060 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_5ec0_0), 0, 24256 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_5ec8_0), 0, 24264 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_5ed0_0), 0, 24272 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_5ed8_0), 0, 24280 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_5ee0_0), 0, 24288 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_5ee8_0), 0, 24296 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_5ef0_0), 0, 24304 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_5ef8_0), 0, 24312 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_5ef9_0), 0, 24313 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_5efa_0), 0, 24314 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_5efb_0), 0, 24315 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_5efc_0), 0, 24316 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_5fc0_0), 0, 24512 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_5fc8_0), 0, 24520 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_5fd0_0), 0, 24528 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_5fd8_0), 0, 24536 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_5fe0_0), 0, 24544 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_5fe8_0), 0, 24552 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_5ff0_0), 0, 24560 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_5ff8_0), 0, 24568 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_5ff9_0), 0, 24569 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_5ffa_0), 0, 24570 }, /* TRAPcc.L #.W */ -{ CPUFUNC_FF(op_5ffb_0), 0, 24571 }, /* TRAPcc.L #.L */ -{ CPUFUNC_FF(op_5ffc_0), 0, 24572 }, /* TRAPcc.L */ -{ CPUFUNC_FF(op_6000_0), 0, 24576 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6001_0), 0, 24577 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_60ff_0), 0, 24831 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6100_0), 0, 24832 }, /* BSR.W #.W */ -{ CPUFUNC_FF(op_6101_0), 0, 24833 }, /* BSR.B # */ -{ CPUFUNC_FF(op_61ff_0), 0, 25087 }, /* BSR.L #.L */ -{ CPUFUNC_FF(op_6200_0), 0, 25088 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6201_0), 0, 25089 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_62ff_0), 0, 25343 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6300_0), 0, 25344 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6301_0), 0, 25345 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_63ff_0), 0, 25599 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6400_0), 0, 25600 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6401_0), 0, 25601 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_64ff_0), 0, 25855 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6500_0), 0, 25856 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6501_0), 0, 25857 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_65ff_0), 0, 26111 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6600_0), 0, 26112 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6601_0), 0, 26113 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_66ff_0), 0, 26367 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6700_0), 0, 26368 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6701_0), 0, 26369 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_67ff_0), 0, 26623 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6800_0), 0, 26624 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6801_0), 0, 26625 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_68ff_0), 0, 26879 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6900_0), 0, 26880 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6901_0), 0, 26881 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_69ff_0), 0, 27135 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6a00_0), 0, 27136 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6a01_0), 0, 27137 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_6aff_0), 0, 27391 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6b00_0), 0, 27392 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6b01_0), 0, 27393 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_6bff_0), 0, 27647 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6c00_0), 0, 27648 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6c01_0), 0, 27649 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_6cff_0), 0, 27903 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6d00_0), 0, 27904 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6d01_0), 0, 27905 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_6dff_0), 0, 28159 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6e00_0), 0, 28160 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6e01_0), 0, 28161 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_6eff_0), 0, 28415 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6f00_0), 0, 28416 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6f01_0), 0, 28417 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_6fff_0), 0, 28671 }, /* Bcc.L #.L */ -{ CPUFUNC(op_7000_0), 0, 28672 }, /* MOVE.L #,Dn */ -{ CPUFUNC_FF(op_7100_0), 0, 28928 }, /* EMULOP_RETURN.L */ -{ CPUFUNC_FF(op_7101_0), 0, 28929 }, /* EMULOP.L # */ -{ CPUFUNC(op_8000_0), 0, 32768 }, /* OR.B Dn,Dn */ -{ CPUFUNC(op_8010_0), 0, 32784 }, /* OR.B (An),Dn */ -{ CPUFUNC(op_8018_0), 0, 32792 }, /* OR.B (An)+,Dn */ -{ CPUFUNC(op_8020_0), 0, 32800 }, /* OR.B -(An),Dn */ -{ CPUFUNC(op_8028_0), 0, 32808 }, /* OR.B (d16,An),Dn */ -{ CPUFUNC(op_8030_0), 0, 32816 }, /* OR.B (d8,An,Xn),Dn */ -{ CPUFUNC(op_8038_0), 0, 32824 }, /* OR.B (xxx).W,Dn */ -{ CPUFUNC(op_8039_0), 0, 32825 }, /* OR.B (xxx).L,Dn */ -{ CPUFUNC(op_803a_0), 0, 32826 }, /* OR.B (d16,PC),Dn */ -{ CPUFUNC(op_803b_0), 0, 32827 }, /* OR.B (d8,PC,Xn),Dn */ -{ CPUFUNC(op_803c_0), 0, 32828 }, /* OR.B #.B,Dn */ -{ CPUFUNC(op_8040_0), 0, 32832 }, /* OR.W Dn,Dn */ -{ CPUFUNC(op_8050_0), 0, 32848 }, /* OR.W (An),Dn */ -{ CPUFUNC(op_8058_0), 0, 32856 }, /* OR.W (An)+,Dn */ -{ CPUFUNC(op_8060_0), 0, 32864 }, /* OR.W -(An),Dn */ -{ CPUFUNC(op_8068_0), 0, 32872 }, /* OR.W (d16,An),Dn */ -{ CPUFUNC(op_8070_0), 0, 32880 }, /* OR.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_8078_0), 0, 32888 }, /* OR.W (xxx).W,Dn */ -{ CPUFUNC(op_8079_0), 0, 32889 }, /* OR.W (xxx).L,Dn */ -{ CPUFUNC(op_807a_0), 0, 32890 }, /* OR.W (d16,PC),Dn */ -{ CPUFUNC(op_807b_0), 0, 32891 }, /* OR.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_807c_0), 0, 32892 }, /* OR.W #.W,Dn */ -{ CPUFUNC(op_8080_0), 0, 32896 }, /* OR.L Dn,Dn */ -{ CPUFUNC(op_8090_0), 0, 32912 }, /* OR.L (An),Dn */ -{ CPUFUNC(op_8098_0), 0, 32920 }, /* OR.L (An)+,Dn */ -{ CPUFUNC(op_80a0_0), 0, 32928 }, /* OR.L -(An),Dn */ -{ CPUFUNC(op_80a8_0), 0, 32936 }, /* OR.L (d16,An),Dn */ -{ CPUFUNC(op_80b0_0), 0, 32944 }, /* OR.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_80b8_0), 0, 32952 }, /* OR.L (xxx).W,Dn */ -{ CPUFUNC(op_80b9_0), 0, 32953 }, /* OR.L (xxx).L,Dn */ -{ CPUFUNC(op_80ba_0), 0, 32954 }, /* OR.L (d16,PC),Dn */ -{ CPUFUNC(op_80bb_0), 0, 32955 }, /* OR.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_80bc_0), 0, 32956 }, /* OR.L #.L,Dn */ -{ CPUFUNC(op_80c0_0), 0, 32960 }, /* DIVU.W Dn,Dn */ -{ CPUFUNC(op_80d0_0), 0, 32976 }, /* DIVU.W (An),Dn */ -{ CPUFUNC(op_80d8_0), 0, 32984 }, /* DIVU.W (An)+,Dn */ -{ CPUFUNC(op_80e0_0), 0, 32992 }, /* DIVU.W -(An),Dn */ -{ CPUFUNC(op_80e8_0), 0, 33000 }, /* DIVU.W (d16,An),Dn */ -{ CPUFUNC(op_80f0_0), 0, 33008 }, /* DIVU.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_80f8_0), 0, 33016 }, /* DIVU.W (xxx).W,Dn */ -{ CPUFUNC(op_80f9_0), 0, 33017 }, /* DIVU.W (xxx).L,Dn */ -{ CPUFUNC(op_80fa_0), 0, 33018 }, /* DIVU.W (d16,PC),Dn */ -{ CPUFUNC(op_80fb_0), 0, 33019 }, /* DIVU.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_80fc_0), 0, 33020 }, /* DIVU.W #.W,Dn */ -{ CPUFUNC(op_8100_1), 0, 33024 }, /* SBCD.B Dn,Dn */ -{ CPUFUNC(op_8108_1), 0, 33032 }, /* SBCD.B -(An),-(An) */ -{ CPUFUNC(op_8110_0), 0, 33040 }, /* OR.B Dn,(An) */ -{ CPUFUNC(op_8118_0), 0, 33048 }, /* OR.B Dn,(An)+ */ -{ CPUFUNC(op_8120_0), 0, 33056 }, /* OR.B Dn,-(An) */ -{ CPUFUNC(op_8128_0), 0, 33064 }, /* OR.B Dn,(d16,An) */ -{ CPUFUNC(op_8130_0), 0, 33072 }, /* OR.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_8138_0), 0, 33080 }, /* OR.B Dn,(xxx).W */ -{ CPUFUNC(op_8139_0), 0, 33081 }, /* OR.B Dn,(xxx).L */ -{ CPUFUNC_FF(op_8140_0), 0, 33088 }, /* PACK.L Dn,Dn */ -{ CPUFUNC_FF(op_8148_0), 0, 33096 }, /* PACK.L -(An),-(An) */ -{ CPUFUNC(op_8150_0), 0, 33104 }, /* OR.W Dn,(An) */ -{ CPUFUNC(op_8158_0), 0, 33112 }, /* OR.W Dn,(An)+ */ -{ CPUFUNC(op_8160_0), 0, 33120 }, /* OR.W Dn,-(An) */ -{ CPUFUNC(op_8168_0), 0, 33128 }, /* OR.W Dn,(d16,An) */ -{ CPUFUNC(op_8170_0), 0, 33136 }, /* OR.W Dn,(d8,An,Xn) */ -{ CPUFUNC(op_8178_0), 0, 33144 }, /* OR.W Dn,(xxx).W */ -{ CPUFUNC(op_8179_0), 0, 33145 }, /* OR.W Dn,(xxx).L */ -{ CPUFUNC_FF(op_8180_0), 0, 33152 }, /* UNPK.L Dn,Dn */ -{ CPUFUNC_FF(op_8188_0), 0, 33160 }, /* UNPK.L -(An),-(An) */ -{ CPUFUNC(op_8190_0), 0, 33168 }, /* OR.L Dn,(An) */ -{ CPUFUNC(op_8198_0), 0, 33176 }, /* OR.L Dn,(An)+ */ -{ CPUFUNC(op_81a0_0), 0, 33184 }, /* OR.L Dn,-(An) */ -{ CPUFUNC(op_81a8_0), 0, 33192 }, /* OR.L Dn,(d16,An) */ -{ CPUFUNC(op_81b0_0), 0, 33200 }, /* OR.L Dn,(d8,An,Xn) */ -{ CPUFUNC(op_81b8_0), 0, 33208 }, /* OR.L Dn,(xxx).W */ -{ CPUFUNC(op_81b9_0), 0, 33209 }, /* OR.L Dn,(xxx).L */ -{ CPUFUNC(op_81c0_0), 0, 33216 }, /* DIVS.W Dn,Dn */ -{ CPUFUNC(op_81d0_0), 0, 33232 }, /* DIVS.W (An),Dn */ -{ CPUFUNC(op_81d8_0), 0, 33240 }, /* DIVS.W (An)+,Dn */ -{ CPUFUNC(op_81e0_0), 0, 33248 }, /* DIVS.W -(An),Dn */ -{ CPUFUNC(op_81e8_0), 0, 33256 }, /* DIVS.W (d16,An),Dn */ -{ CPUFUNC(op_81f0_0), 0, 33264 }, /* DIVS.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_81f8_0), 0, 33272 }, /* DIVS.W (xxx).W,Dn */ -{ CPUFUNC(op_81f9_0), 0, 33273 }, /* DIVS.W (xxx).L,Dn */ -{ CPUFUNC(op_81fa_0), 0, 33274 }, /* DIVS.W (d16,PC),Dn */ -{ CPUFUNC(op_81fb_0), 0, 33275 }, /* DIVS.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_81fc_0), 0, 33276 }, /* DIVS.W #.W,Dn */ -{ CPUFUNC(op_9000_0), 0, 36864 }, /* SUB.B Dn,Dn */ -{ CPUFUNC(op_9010_0), 0, 36880 }, /* SUB.B (An),Dn */ -{ CPUFUNC(op_9018_0), 0, 36888 }, /* SUB.B (An)+,Dn */ -{ CPUFUNC(op_9020_0), 0, 36896 }, /* SUB.B -(An),Dn */ -{ CPUFUNC(op_9028_0), 0, 36904 }, /* SUB.B (d16,An),Dn */ -{ CPUFUNC(op_9030_0), 0, 36912 }, /* SUB.B (d8,An,Xn),Dn */ -{ CPUFUNC(op_9038_0), 0, 36920 }, /* SUB.B (xxx).W,Dn */ -{ CPUFUNC(op_9039_0), 0, 36921 }, /* SUB.B (xxx).L,Dn */ -{ CPUFUNC(op_903a_0), 0, 36922 }, /* SUB.B (d16,PC),Dn */ -{ CPUFUNC(op_903b_0), 0, 36923 }, /* SUB.B (d8,PC,Xn),Dn */ -{ CPUFUNC(op_903c_0), 0, 36924 }, /* SUB.B #.B,Dn */ -{ CPUFUNC(op_9040_0), 0, 36928 }, /* SUB.W Dn,Dn */ -{ CPUFUNC(op_9048_0), 0, 36936 }, /* SUB.W An,Dn */ -{ CPUFUNC(op_9050_0), 0, 36944 }, /* SUB.W (An),Dn */ -{ CPUFUNC(op_9058_0), 0, 36952 }, /* SUB.W (An)+,Dn */ -{ CPUFUNC(op_9060_0), 0, 36960 }, /* SUB.W -(An),Dn */ -{ CPUFUNC(op_9068_0), 0, 36968 }, /* SUB.W (d16,An),Dn */ -{ CPUFUNC(op_9070_0), 0, 36976 }, /* SUB.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_9078_0), 0, 36984 }, /* SUB.W (xxx).W,Dn */ -{ CPUFUNC(op_9079_0), 0, 36985 }, /* SUB.W (xxx).L,Dn */ -{ CPUFUNC(op_907a_0), 0, 36986 }, /* SUB.W (d16,PC),Dn */ -{ CPUFUNC(op_907b_0), 0, 36987 }, /* SUB.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_907c_0), 0, 36988 }, /* SUB.W #.W,Dn */ -{ CPUFUNC(op_9080_0), 0, 36992 }, /* SUB.L Dn,Dn */ -{ CPUFUNC(op_9088_0), 0, 37000 }, /* SUB.L An,Dn */ -{ CPUFUNC(op_9090_0), 0, 37008 }, /* SUB.L (An),Dn */ -{ CPUFUNC(op_9098_0), 0, 37016 }, /* SUB.L (An)+,Dn */ -{ CPUFUNC(op_90a0_0), 0, 37024 }, /* SUB.L -(An),Dn */ -{ CPUFUNC(op_90a8_0), 0, 37032 }, /* SUB.L (d16,An),Dn */ -{ CPUFUNC(op_90b0_0), 0, 37040 }, /* SUB.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_90b8_0), 0, 37048 }, /* SUB.L (xxx).W,Dn */ -{ CPUFUNC(op_90b9_0), 0, 37049 }, /* SUB.L (xxx).L,Dn */ -{ CPUFUNC(op_90ba_0), 0, 37050 }, /* SUB.L (d16,PC),Dn */ -{ CPUFUNC(op_90bb_0), 0, 37051 }, /* SUB.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_90bc_0), 0, 37052 }, /* SUB.L #.L,Dn */ -{ CPUFUNC_FF(op_90c0_0), 0, 37056 }, /* SUBA.W Dn,An */ -{ CPUFUNC_FF(op_90c8_0), 0, 37064 }, /* SUBA.W An,An */ -{ CPUFUNC_FF(op_90d0_0), 0, 37072 }, /* SUBA.W (An),An */ -{ CPUFUNC_FF(op_90d8_0), 0, 37080 }, /* SUBA.W (An)+,An */ -{ CPUFUNC_FF(op_90e0_0), 0, 37088 }, /* SUBA.W -(An),An */ -{ CPUFUNC_FF(op_90e8_0), 0, 37096 }, /* SUBA.W (d16,An),An */ -{ CPUFUNC_FF(op_90f0_0), 0, 37104 }, /* SUBA.W (d8,An,Xn),An */ -{ CPUFUNC_FF(op_90f8_0), 0, 37112 }, /* SUBA.W (xxx).W,An */ -{ CPUFUNC_FF(op_90f9_0), 0, 37113 }, /* SUBA.W (xxx).L,An */ -{ CPUFUNC_FF(op_90fa_0), 0, 37114 }, /* SUBA.W (d16,PC),An */ -{ CPUFUNC_FF(op_90fb_0), 0, 37115 }, /* SUBA.W (d8,PC,Xn),An */ -{ CPUFUNC_FF(op_90fc_0), 0, 37116 }, /* SUBA.W #.W,An */ -{ CPUFUNC(op_9100_0), 0, 37120 }, /* SUBX.B Dn,Dn */ -{ CPUFUNC(op_9108_0), 0, 37128 }, /* SUBX.B -(An),-(An) */ -{ CPUFUNC(op_9110_0), 0, 37136 }, /* SUB.B Dn,(An) */ -{ CPUFUNC(op_9118_0), 0, 37144 }, /* SUB.B Dn,(An)+ */ -{ CPUFUNC(op_9120_0), 0, 37152 }, /* SUB.B Dn,-(An) */ -{ CPUFUNC(op_9128_0), 0, 37160 }, /* SUB.B Dn,(d16,An) */ -{ CPUFUNC(op_9130_0), 0, 37168 }, /* SUB.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_9138_0), 0, 37176 }, /* SUB.B Dn,(xxx).W */ -{ CPUFUNC(op_9139_0), 0, 37177 }, /* SUB.B Dn,(xxx).L */ -{ CPUFUNC(op_9140_0), 0, 37184 }, /* SUBX.W Dn,Dn */ -{ CPUFUNC(op_9148_0), 0, 37192 }, /* SUBX.W -(An),-(An) */ -{ CPUFUNC(op_9150_0), 0, 37200 }, /* SUB.W Dn,(An) */ -{ CPUFUNC(op_9158_0), 0, 37208 }, /* SUB.W Dn,(An)+ */ -{ CPUFUNC(op_9160_0), 0, 37216 }, /* SUB.W Dn,-(An) */ -{ CPUFUNC(op_9168_0), 0, 37224 }, /* SUB.W Dn,(d16,An) */ -{ CPUFUNC(op_9170_0), 0, 37232 }, /* SUB.W Dn,(d8,An,Xn) */ -{ CPUFUNC(op_9178_0), 0, 37240 }, /* SUB.W Dn,(xxx).W */ -{ CPUFUNC(op_9179_0), 0, 37241 }, /* SUB.W Dn,(xxx).L */ -{ CPUFUNC(op_9180_0), 0, 37248 }, /* SUBX.L Dn,Dn */ -{ CPUFUNC(op_9188_0), 0, 37256 }, /* SUBX.L -(An),-(An) */ -{ CPUFUNC(op_9190_0), 0, 37264 }, /* SUB.L Dn,(An) */ -{ CPUFUNC(op_9198_0), 0, 37272 }, /* SUB.L Dn,(An)+ */ -{ CPUFUNC(op_91a0_0), 0, 37280 }, /* SUB.L Dn,-(An) */ -{ CPUFUNC(op_91a8_0), 0, 37288 }, /* SUB.L Dn,(d16,An) */ -{ CPUFUNC(op_91b0_0), 0, 37296 }, /* SUB.L Dn,(d8,An,Xn) */ -{ CPUFUNC(op_91b8_0), 0, 37304 }, /* SUB.L Dn,(xxx).W */ -{ CPUFUNC(op_91b9_0), 0, 37305 }, /* SUB.L Dn,(xxx).L */ -{ CPUFUNC_FF(op_91c0_0), 0, 37312 }, /* SUBA.L Dn,An */ -{ CPUFUNC_FF(op_91c8_0), 0, 37320 }, /* SUBA.L An,An */ -{ CPUFUNC_FF(op_91d0_0), 0, 37328 }, /* SUBA.L (An),An */ -{ CPUFUNC_FF(op_91d8_0), 0, 37336 }, /* SUBA.L (An)+,An */ -{ CPUFUNC_FF(op_91e0_0), 0, 37344 }, /* SUBA.L -(An),An */ -{ CPUFUNC_FF(op_91e8_0), 0, 37352 }, /* SUBA.L (d16,An),An */ -{ CPUFUNC_FF(op_91f0_0), 0, 37360 }, /* SUBA.L (d8,An,Xn),An */ -{ CPUFUNC_FF(op_91f8_0), 0, 37368 }, /* SUBA.L (xxx).W,An */ -{ CPUFUNC_FF(op_91f9_0), 0, 37369 }, /* SUBA.L (xxx).L,An */ -{ CPUFUNC_FF(op_91fa_0), 0, 37370 }, /* SUBA.L (d16,PC),An */ -{ CPUFUNC_FF(op_91fb_0), 0, 37371 }, /* SUBA.L (d8,PC,Xn),An */ -{ CPUFUNC_FF(op_91fc_0), 0, 37372 }, /* SUBA.L #.L,An */ -{ CPUFUNC(op_b000_0), 0, 45056 }, /* CMP.B Dn,Dn */ -{ CPUFUNC(op_b010_0), 0, 45072 }, /* CMP.B (An),Dn */ -{ CPUFUNC(op_b018_0), 0, 45080 }, /* CMP.B (An)+,Dn */ -{ CPUFUNC(op_b020_0), 0, 45088 }, /* CMP.B -(An),Dn */ -{ CPUFUNC(op_b028_0), 0, 45096 }, /* CMP.B (d16,An),Dn */ -{ CPUFUNC(op_b030_0), 0, 45104 }, /* CMP.B (d8,An,Xn),Dn */ -{ CPUFUNC(op_b038_0), 0, 45112 }, /* CMP.B (xxx).W,Dn */ -{ CPUFUNC(op_b039_0), 0, 45113 }, /* CMP.B (xxx).L,Dn */ -{ CPUFUNC(op_b03a_0), 0, 45114 }, /* CMP.B (d16,PC),Dn */ -{ CPUFUNC(op_b03b_0), 0, 45115 }, /* CMP.B (d8,PC,Xn),Dn */ -{ CPUFUNC(op_b03c_0), 0, 45116 }, /* CMP.B #.B,Dn */ -{ CPUFUNC(op_b040_0), 0, 45120 }, /* CMP.W Dn,Dn */ -{ CPUFUNC(op_b048_0), 0, 45128 }, /* CMP.W An,Dn */ -{ CPUFUNC(op_b050_0), 0, 45136 }, /* CMP.W (An),Dn */ -{ CPUFUNC(op_b058_0), 0, 45144 }, /* CMP.W (An)+,Dn */ -{ CPUFUNC(op_b060_0), 0, 45152 }, /* CMP.W -(An),Dn */ -{ CPUFUNC(op_b068_0), 0, 45160 }, /* CMP.W (d16,An),Dn */ -{ CPUFUNC(op_b070_0), 0, 45168 }, /* CMP.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_b078_0), 0, 45176 }, /* CMP.W (xxx).W,Dn */ -{ CPUFUNC(op_b079_0), 0, 45177 }, /* CMP.W (xxx).L,Dn */ -{ CPUFUNC(op_b07a_0), 0, 45178 }, /* CMP.W (d16,PC),Dn */ -{ CPUFUNC(op_b07b_0), 0, 45179 }, /* CMP.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_b07c_0), 0, 45180 }, /* CMP.W #.W,Dn */ -{ CPUFUNC(op_b080_0), 0, 45184 }, /* CMP.L Dn,Dn */ -{ CPUFUNC(op_b088_0), 0, 45192 }, /* CMP.L An,Dn */ -{ CPUFUNC(op_b090_0), 0, 45200 }, /* CMP.L (An),Dn */ -{ CPUFUNC(op_b098_0), 0, 45208 }, /* CMP.L (An)+,Dn */ -{ CPUFUNC(op_b0a0_0), 0, 45216 }, /* CMP.L -(An),Dn */ -{ CPUFUNC(op_b0a8_0), 0, 45224 }, /* CMP.L (d16,An),Dn */ -{ CPUFUNC(op_b0b0_0), 0, 45232 }, /* CMP.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_b0b8_0), 0, 45240 }, /* CMP.L (xxx).W,Dn */ -{ CPUFUNC(op_b0b9_0), 0, 45241 }, /* CMP.L (xxx).L,Dn */ -{ CPUFUNC(op_b0ba_0), 0, 45242 }, /* CMP.L (d16,PC),Dn */ -{ CPUFUNC(op_b0bb_0), 0, 45243 }, /* CMP.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_b0bc_0), 0, 45244 }, /* CMP.L #.L,Dn */ -{ CPUFUNC(op_b0c0_0), 0, 45248 }, /* CMPA.W Dn,An */ -{ CPUFUNC(op_b0c8_0), 0, 45256 }, /* CMPA.W An,An */ -{ CPUFUNC(op_b0d0_0), 0, 45264 }, /* CMPA.W (An),An */ -{ CPUFUNC(op_b0d8_0), 0, 45272 }, /* CMPA.W (An)+,An */ -{ CPUFUNC(op_b0e0_0), 0, 45280 }, /* CMPA.W -(An),An */ -{ CPUFUNC(op_b0e8_0), 0, 45288 }, /* CMPA.W (d16,An),An */ -{ CPUFUNC(op_b0f0_0), 0, 45296 }, /* CMPA.W (d8,An,Xn),An */ -{ CPUFUNC(op_b0f8_0), 0, 45304 }, /* CMPA.W (xxx).W,An */ -{ CPUFUNC(op_b0f9_0), 0, 45305 }, /* CMPA.W (xxx).L,An */ -{ CPUFUNC(op_b0fa_0), 0, 45306 }, /* CMPA.W (d16,PC),An */ -{ CPUFUNC(op_b0fb_0), 0, 45307 }, /* CMPA.W (d8,PC,Xn),An */ -{ CPUFUNC(op_b0fc_0), 0, 45308 }, /* CMPA.W #.W,An */ -{ CPUFUNC(op_b100_0), 0, 45312 }, /* EOR.B Dn,Dn */ -{ CPUFUNC(op_b108_0), 0, 45320 }, /* CMPM.B (An)+,(An)+ */ -{ CPUFUNC(op_b110_0), 0, 45328 }, /* EOR.B Dn,(An) */ -{ CPUFUNC(op_b118_0), 0, 45336 }, /* EOR.B Dn,(An)+ */ -{ CPUFUNC(op_b120_0), 0, 45344 }, /* EOR.B Dn,-(An) */ -{ CPUFUNC(op_b128_0), 0, 45352 }, /* EOR.B Dn,(d16,An) */ -{ CPUFUNC(op_b130_0), 0, 45360 }, /* EOR.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_b138_0), 0, 45368 }, /* EOR.B Dn,(xxx).W */ -{ CPUFUNC(op_b139_0), 0, 45369 }, /* EOR.B Dn,(xxx).L */ -{ CPUFUNC(op_b140_0), 0, 45376 }, /* EOR.W Dn,Dn */ -{ CPUFUNC(op_b148_0), 0, 45384 }, /* CMPM.W (An)+,(An)+ */ -{ CPUFUNC(op_b150_0), 0, 45392 }, /* EOR.W Dn,(An) */ -{ CPUFUNC(op_b158_0), 0, 45400 }, /* EOR.W Dn,(An)+ */ -{ CPUFUNC(op_b160_0), 0, 45408 }, /* EOR.W Dn,-(An) */ -{ CPUFUNC(op_b168_0), 0, 45416 }, /* EOR.W Dn,(d16,An) */ -{ CPUFUNC(op_b170_0), 0, 45424 }, /* EOR.W Dn,(d8,An,Xn) */ -{ CPUFUNC(op_b178_0), 0, 45432 }, /* EOR.W Dn,(xxx).W */ -{ CPUFUNC(op_b179_0), 0, 45433 }, /* EOR.W Dn,(xxx).L */ -{ CPUFUNC(op_b180_0), 0, 45440 }, /* EOR.L Dn,Dn */ -{ CPUFUNC(op_b188_0), 0, 45448 }, /* CMPM.L (An)+,(An)+ */ -{ CPUFUNC(op_b190_0), 0, 45456 }, /* EOR.L Dn,(An) */ -{ CPUFUNC(op_b198_0), 0, 45464 }, /* EOR.L Dn,(An)+ */ -{ CPUFUNC(op_b1a0_0), 0, 45472 }, /* EOR.L Dn,-(An) */ -{ CPUFUNC(op_b1a8_0), 0, 45480 }, /* EOR.L Dn,(d16,An) */ -{ CPUFUNC(op_b1b0_0), 0, 45488 }, /* EOR.L Dn,(d8,An,Xn) */ -{ CPUFUNC(op_b1b8_0), 0, 45496 }, /* EOR.L Dn,(xxx).W */ -{ CPUFUNC(op_b1b9_0), 0, 45497 }, /* EOR.L Dn,(xxx).L */ -{ CPUFUNC(op_b1c0_0), 0, 45504 }, /* CMPA.L Dn,An */ -{ CPUFUNC(op_b1c8_0), 0, 45512 }, /* CMPA.L An,An */ -{ CPUFUNC(op_b1d0_0), 0, 45520 }, /* CMPA.L (An),An */ -{ CPUFUNC(op_b1d8_0), 0, 45528 }, /* CMPA.L (An)+,An */ -{ CPUFUNC(op_b1e0_0), 0, 45536 }, /* CMPA.L -(An),An */ -{ CPUFUNC(op_b1e8_0), 0, 45544 }, /* CMPA.L (d16,An),An */ -{ CPUFUNC(op_b1f0_0), 0, 45552 }, /* CMPA.L (d8,An,Xn),An */ -{ CPUFUNC(op_b1f8_0), 0, 45560 }, /* CMPA.L (xxx).W,An */ -{ CPUFUNC(op_b1f9_0), 0, 45561 }, /* CMPA.L (xxx).L,An */ -{ CPUFUNC(op_b1fa_0), 0, 45562 }, /* CMPA.L (d16,PC),An */ -{ CPUFUNC(op_b1fb_0), 0, 45563 }, /* CMPA.L (d8,PC,Xn),An */ -{ CPUFUNC(op_b1fc_0), 0, 45564 }, /* CMPA.L #.L,An */ -{ CPUFUNC(op_c000_0), 0, 49152 }, /* AND.B Dn,Dn */ -{ CPUFUNC(op_c010_0), 0, 49168 }, /* AND.B (An),Dn */ -{ CPUFUNC(op_c018_0), 0, 49176 }, /* AND.B (An)+,Dn */ -{ CPUFUNC(op_c020_0), 0, 49184 }, /* AND.B -(An),Dn */ -{ CPUFUNC(op_c028_0), 0, 49192 }, /* AND.B (d16,An),Dn */ -{ CPUFUNC(op_c030_0), 0, 49200 }, /* AND.B (d8,An,Xn),Dn */ -{ CPUFUNC(op_c038_0), 0, 49208 }, /* AND.B (xxx).W,Dn */ -{ CPUFUNC(op_c039_0), 0, 49209 }, /* AND.B (xxx).L,Dn */ -{ CPUFUNC(op_c03a_0), 0, 49210 }, /* AND.B (d16,PC),Dn */ -{ CPUFUNC(op_c03b_0), 0, 49211 }, /* AND.B (d8,PC,Xn),Dn */ -{ CPUFUNC(op_c03c_0), 0, 49212 }, /* AND.B #.B,Dn */ -{ CPUFUNC(op_c040_0), 0, 49216 }, /* AND.W Dn,Dn */ -{ CPUFUNC(op_c050_0), 0, 49232 }, /* AND.W (An),Dn */ -{ CPUFUNC(op_c058_0), 0, 49240 }, /* AND.W (An)+,Dn */ -{ CPUFUNC(op_c060_0), 0, 49248 }, /* AND.W -(An),Dn */ -{ CPUFUNC(op_c068_0), 0, 49256 }, /* AND.W (d16,An),Dn */ -{ CPUFUNC(op_c070_0), 0, 49264 }, /* AND.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_c078_0), 0, 49272 }, /* AND.W (xxx).W,Dn */ -{ CPUFUNC(op_c079_0), 0, 49273 }, /* AND.W (xxx).L,Dn */ -{ CPUFUNC(op_c07a_0), 0, 49274 }, /* AND.W (d16,PC),Dn */ -{ CPUFUNC(op_c07b_0), 0, 49275 }, /* AND.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_c07c_0), 0, 49276 }, /* AND.W #.W,Dn */ -{ CPUFUNC(op_c080_0), 0, 49280 }, /* AND.L Dn,Dn */ -{ CPUFUNC(op_c090_0), 0, 49296 }, /* AND.L (An),Dn */ -{ CPUFUNC(op_c098_0), 0, 49304 }, /* AND.L (An)+,Dn */ -{ CPUFUNC(op_c0a0_0), 0, 49312 }, /* AND.L -(An),Dn */ -{ CPUFUNC(op_c0a8_0), 0, 49320 }, /* AND.L (d16,An),Dn */ -{ CPUFUNC(op_c0b0_0), 0, 49328 }, /* AND.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_c0b8_0), 0, 49336 }, /* AND.L (xxx).W,Dn */ -{ CPUFUNC(op_c0b9_0), 0, 49337 }, /* AND.L (xxx).L,Dn */ -{ CPUFUNC(op_c0ba_0), 0, 49338 }, /* AND.L (d16,PC),Dn */ -{ CPUFUNC(op_c0bb_0), 0, 49339 }, /* AND.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_c0bc_0), 0, 49340 }, /* AND.L #.L,Dn */ -{ CPUFUNC(op_c0c0_0), 0, 49344 }, /* MULU.W Dn,Dn */ -{ CPUFUNC(op_c0d0_0), 0, 49360 }, /* MULU.W (An),Dn */ -{ CPUFUNC(op_c0d8_0), 0, 49368 }, /* MULU.W (An)+,Dn */ -{ CPUFUNC(op_c0e0_0), 0, 49376 }, /* MULU.W -(An),Dn */ -{ CPUFUNC(op_c0e8_0), 0, 49384 }, /* MULU.W (d16,An),Dn */ -{ CPUFUNC(op_c0f0_0), 0, 49392 }, /* MULU.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_c0f8_0), 0, 49400 }, /* MULU.W (xxx).W,Dn */ -{ CPUFUNC(op_c0f9_0), 0, 49401 }, /* MULU.W (xxx).L,Dn */ -{ CPUFUNC(op_c0fa_0), 0, 49402 }, /* MULU.W (d16,PC),Dn */ -{ CPUFUNC(op_c0fb_0), 0, 49403 }, /* MULU.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_c0fc_0), 0, 49404 }, /* MULU.W #.W,Dn */ -{ CPUFUNC(op_c100_1), 0, 49408 }, /* ABCD.B Dn,Dn */ -{ CPUFUNC(op_c108_1), 0, 49416 }, /* ABCD.B -(An),-(An) */ -{ CPUFUNC(op_c110_0), 0, 49424 }, /* AND.B Dn,(An) */ -{ CPUFUNC(op_c118_0), 0, 49432 }, /* AND.B Dn,(An)+ */ -{ CPUFUNC(op_c120_0), 0, 49440 }, /* AND.B Dn,-(An) */ -{ CPUFUNC(op_c128_0), 0, 49448 }, /* AND.B Dn,(d16,An) */ -{ CPUFUNC(op_c130_0), 0, 49456 }, /* AND.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_c138_0), 0, 49464 }, /* AND.B Dn,(xxx).W */ -{ CPUFUNC(op_c139_0), 0, 49465 }, /* AND.B Dn,(xxx).L */ -{ CPUFUNC_FF(op_c140_0), 0, 49472 }, /* EXG.L Dn,Dn */ -{ CPUFUNC_FF(op_c148_0), 0, 49480 }, /* EXG.L An,An */ -{ CPUFUNC(op_c150_0), 0, 49488 }, /* AND.W Dn,(An) */ -{ CPUFUNC(op_c158_0), 0, 49496 }, /* AND.W Dn,(An)+ */ -{ CPUFUNC(op_c160_0), 0, 49504 }, /* AND.W Dn,-(An) */ -{ CPUFUNC(op_c168_0), 0, 49512 }, /* AND.W Dn,(d16,An) */ -{ CPUFUNC(op_c170_0), 0, 49520 }, /* AND.W Dn,(d8,An,Xn) */ -{ CPUFUNC(op_c178_0), 0, 49528 }, /* AND.W Dn,(xxx).W */ -{ CPUFUNC(op_c179_0), 0, 49529 }, /* AND.W Dn,(xxx).L */ -{ CPUFUNC_FF(op_c188_0), 0, 49544 }, /* EXG.L Dn,An */ -{ CPUFUNC(op_c190_0), 0, 49552 }, /* AND.L Dn,(An) */ -{ CPUFUNC(op_c198_0), 0, 49560 }, /* AND.L Dn,(An)+ */ -{ CPUFUNC(op_c1a0_0), 0, 49568 }, /* AND.L Dn,-(An) */ -{ CPUFUNC(op_c1a8_0), 0, 49576 }, /* AND.L Dn,(d16,An) */ -{ CPUFUNC(op_c1b0_0), 0, 49584 }, /* AND.L Dn,(d8,An,Xn) */ -{ CPUFUNC(op_c1b8_0), 0, 49592 }, /* AND.L Dn,(xxx).W */ -{ CPUFUNC(op_c1b9_0), 0, 49593 }, /* AND.L Dn,(xxx).L */ -{ CPUFUNC(op_c1c0_0), 0, 49600 }, /* MULS.W Dn,Dn */ -{ CPUFUNC(op_c1d0_0), 0, 49616 }, /* MULS.W (An),Dn */ -{ CPUFUNC(op_c1d8_0), 0, 49624 }, /* MULS.W (An)+,Dn */ -{ CPUFUNC(op_c1e0_0), 0, 49632 }, /* MULS.W -(An),Dn */ -{ CPUFUNC(op_c1e8_0), 0, 49640 }, /* MULS.W (d16,An),Dn */ -{ CPUFUNC(op_c1f0_0), 0, 49648 }, /* MULS.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_c1f8_0), 0, 49656 }, /* MULS.W (xxx).W,Dn */ -{ CPUFUNC(op_c1f9_0), 0, 49657 }, /* MULS.W (xxx).L,Dn */ -{ CPUFUNC(op_c1fa_0), 0, 49658 }, /* MULS.W (d16,PC),Dn */ -{ CPUFUNC(op_c1fb_0), 0, 49659 }, /* MULS.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_c1fc_0), 0, 49660 }, /* MULS.W #.W,Dn */ -{ CPUFUNC(op_d000_0), 0, 53248 }, /* ADD.B Dn,Dn */ -{ CPUFUNC(op_d010_0), 0, 53264 }, /* ADD.B (An),Dn */ -{ CPUFUNC(op_d018_0), 0, 53272 }, /* ADD.B (An)+,Dn */ -{ CPUFUNC(op_d020_0), 0, 53280 }, /* ADD.B -(An),Dn */ -{ CPUFUNC(op_d028_0), 0, 53288 }, /* ADD.B (d16,An),Dn */ -{ CPUFUNC(op_d030_0), 0, 53296 }, /* ADD.B (d8,An,Xn),Dn */ -{ CPUFUNC(op_d038_0), 0, 53304 }, /* ADD.B (xxx).W,Dn */ -{ CPUFUNC(op_d039_0), 0, 53305 }, /* ADD.B (xxx).L,Dn */ -{ CPUFUNC(op_d03a_0), 0, 53306 }, /* ADD.B (d16,PC),Dn */ -{ CPUFUNC(op_d03b_0), 0, 53307 }, /* ADD.B (d8,PC,Xn),Dn */ -{ CPUFUNC(op_d03c_0), 0, 53308 }, /* ADD.B #.B,Dn */ -{ CPUFUNC(op_d040_0), 0, 53312 }, /* ADD.W Dn,Dn */ -{ CPUFUNC(op_d048_0), 0, 53320 }, /* ADD.W An,Dn */ -{ CPUFUNC(op_d050_0), 0, 53328 }, /* ADD.W (An),Dn */ -{ CPUFUNC(op_d058_0), 0, 53336 }, /* ADD.W (An)+,Dn */ -{ CPUFUNC(op_d060_0), 0, 53344 }, /* ADD.W -(An),Dn */ -{ CPUFUNC(op_d068_0), 0, 53352 }, /* ADD.W (d16,An),Dn */ -{ CPUFUNC(op_d070_0), 0, 53360 }, /* ADD.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_d078_0), 0, 53368 }, /* ADD.W (xxx).W,Dn */ -{ CPUFUNC(op_d079_0), 0, 53369 }, /* ADD.W (xxx).L,Dn */ -{ CPUFUNC(op_d07a_0), 0, 53370 }, /* ADD.W (d16,PC),Dn */ -{ CPUFUNC(op_d07b_0), 0, 53371 }, /* ADD.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_d07c_0), 0, 53372 }, /* ADD.W #.W,Dn */ -{ CPUFUNC(op_d080_0), 0, 53376 }, /* ADD.L Dn,Dn */ -{ CPUFUNC(op_d088_0), 0, 53384 }, /* ADD.L An,Dn */ -{ CPUFUNC(op_d090_0), 0, 53392 }, /* ADD.L (An),Dn */ -{ CPUFUNC(op_d098_0), 0, 53400 }, /* ADD.L (An)+,Dn */ -{ CPUFUNC(op_d0a0_0), 0, 53408 }, /* ADD.L -(An),Dn */ -{ CPUFUNC(op_d0a8_0), 0, 53416 }, /* ADD.L (d16,An),Dn */ -{ CPUFUNC(op_d0b0_0), 0, 53424 }, /* ADD.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_d0b8_0), 0, 53432 }, /* ADD.L (xxx).W,Dn */ -{ CPUFUNC(op_d0b9_0), 0, 53433 }, /* ADD.L (xxx).L,Dn */ -{ CPUFUNC(op_d0ba_0), 0, 53434 }, /* ADD.L (d16,PC),Dn */ -{ CPUFUNC(op_d0bb_0), 0, 53435 }, /* ADD.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_d0bc_0), 0, 53436 }, /* ADD.L #.L,Dn */ -{ CPUFUNC_FF(op_d0c0_0), 0, 53440 }, /* ADDA.W Dn,An */ -{ CPUFUNC_FF(op_d0c8_0), 0, 53448 }, /* ADDA.W An,An */ -{ CPUFUNC_FF(op_d0d0_0), 0, 53456 }, /* ADDA.W (An),An */ -{ CPUFUNC_FF(op_d0d8_0), 0, 53464 }, /* ADDA.W (An)+,An */ -{ CPUFUNC_FF(op_d0e0_0), 0, 53472 }, /* ADDA.W -(An),An */ -{ CPUFUNC_FF(op_d0e8_0), 0, 53480 }, /* ADDA.W (d16,An),An */ -{ CPUFUNC_FF(op_d0f0_0), 0, 53488 }, /* ADDA.W (d8,An,Xn),An */ -{ CPUFUNC_FF(op_d0f8_0), 0, 53496 }, /* ADDA.W (xxx).W,An */ -{ CPUFUNC_FF(op_d0f9_0), 0, 53497 }, /* ADDA.W (xxx).L,An */ -{ CPUFUNC_FF(op_d0fa_0), 0, 53498 }, /* ADDA.W (d16,PC),An */ -{ CPUFUNC_FF(op_d0fb_0), 0, 53499 }, /* ADDA.W (d8,PC,Xn),An */ -{ CPUFUNC_FF(op_d0fc_0), 0, 53500 }, /* ADDA.W #.W,An */ -{ CPUFUNC(op_d100_0), 0, 53504 }, /* ADDX.B Dn,Dn */ -{ CPUFUNC(op_d108_0), 0, 53512 }, /* ADDX.B -(An),-(An) */ -{ CPUFUNC(op_d110_0), 0, 53520 }, /* ADD.B Dn,(An) */ -{ CPUFUNC(op_d118_0), 0, 53528 }, /* ADD.B Dn,(An)+ */ -{ CPUFUNC(op_d120_0), 0, 53536 }, /* ADD.B Dn,-(An) */ -{ CPUFUNC(op_d128_0), 0, 53544 }, /* ADD.B Dn,(d16,An) */ -{ CPUFUNC(op_d130_0), 0, 53552 }, /* ADD.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_d138_0), 0, 53560 }, /* ADD.B Dn,(xxx).W */ -{ CPUFUNC(op_d139_0), 0, 53561 }, /* ADD.B Dn,(xxx).L */ -{ CPUFUNC(op_d140_0), 0, 53568 }, /* ADDX.W Dn,Dn */ -{ CPUFUNC(op_d148_0), 0, 53576 }, /* ADDX.W -(An),-(An) */ -{ CPUFUNC(op_d150_0), 0, 53584 }, /* ADD.W Dn,(An) */ -{ CPUFUNC(op_d158_0), 0, 53592 }, /* ADD.W Dn,(An)+ */ -{ CPUFUNC(op_d160_0), 0, 53600 }, /* ADD.W Dn,-(An) */ -{ CPUFUNC(op_d168_0), 0, 53608 }, /* ADD.W Dn,(d16,An) */ -{ CPUFUNC(op_d170_0), 0, 53616 }, /* ADD.W Dn,(d8,An,Xn) */ -{ CPUFUNC(op_d178_0), 0, 53624 }, /* ADD.W Dn,(xxx).W */ -{ CPUFUNC(op_d179_0), 0, 53625 }, /* ADD.W Dn,(xxx).L */ -{ CPUFUNC(op_d180_0), 0, 53632 }, /* ADDX.L Dn,Dn */ -{ CPUFUNC(op_d188_0), 0, 53640 }, /* ADDX.L -(An),-(An) */ -{ CPUFUNC(op_d190_0), 0, 53648 }, /* ADD.L Dn,(An) */ -{ CPUFUNC(op_d198_0), 0, 53656 }, /* ADD.L Dn,(An)+ */ -{ CPUFUNC(op_d1a0_0), 0, 53664 }, /* ADD.L Dn,-(An) */ -{ CPUFUNC(op_d1a8_0), 0, 53672 }, /* ADD.L Dn,(d16,An) */ -{ CPUFUNC(op_d1b0_0), 0, 53680 }, /* ADD.L Dn,(d8,An,Xn) */ -{ CPUFUNC(op_d1b8_0), 0, 53688 }, /* ADD.L Dn,(xxx).W */ -{ CPUFUNC(op_d1b9_0), 0, 53689 }, /* ADD.L Dn,(xxx).L */ -{ CPUFUNC_FF(op_d1c0_0), 0, 53696 }, /* ADDA.L Dn,An */ -{ CPUFUNC_FF(op_d1c8_0), 0, 53704 }, /* ADDA.L An,An */ -{ CPUFUNC_FF(op_d1d0_0), 0, 53712 }, /* ADDA.L (An),An */ -{ CPUFUNC_FF(op_d1d8_0), 0, 53720 }, /* ADDA.L (An)+,An */ -{ CPUFUNC_FF(op_d1e0_0), 0, 53728 }, /* ADDA.L -(An),An */ -{ CPUFUNC_FF(op_d1e8_0), 0, 53736 }, /* ADDA.L (d16,An),An */ -{ CPUFUNC_FF(op_d1f0_0), 0, 53744 }, /* ADDA.L (d8,An,Xn),An */ -{ CPUFUNC_FF(op_d1f8_0), 0, 53752 }, /* ADDA.L (xxx).W,An */ -{ CPUFUNC_FF(op_d1f9_0), 0, 53753 }, /* ADDA.L (xxx).L,An */ -{ CPUFUNC_FF(op_d1fa_0), 0, 53754 }, /* ADDA.L (d16,PC),An */ -{ CPUFUNC_FF(op_d1fb_0), 0, 53755 }, /* ADDA.L (d8,PC,Xn),An */ -{ CPUFUNC_FF(op_d1fc_0), 0, 53756 }, /* ADDA.L #.L,An */ -{ CPUFUNC(op_e000_0), 0, 57344 }, /* ASR.B #,Dn */ -{ CPUFUNC(op_e008_0), 0, 57352 }, /* LSR.B #,Dn */ -{ CPUFUNC(op_e010_0), 0, 57360 }, /* ROXR.B #,Dn */ -{ CPUFUNC(op_e018_0), 0, 57368 }, /* ROR.B #,Dn */ -{ CPUFUNC(op_e020_0), 0, 57376 }, /* ASR.B Dn,Dn */ -{ CPUFUNC(op_e028_0), 0, 57384 }, /* LSR.B Dn,Dn */ -{ CPUFUNC(op_e030_0), 0, 57392 }, /* ROXR.B Dn,Dn */ -{ CPUFUNC(op_e038_0), 0, 57400 }, /* ROR.B Dn,Dn */ -{ CPUFUNC(op_e040_0), 0, 57408 }, /* ASR.W #,Dn */ -{ CPUFUNC(op_e048_0), 0, 57416 }, /* LSR.W #,Dn */ -{ CPUFUNC(op_e050_0), 0, 57424 }, /* ROXR.W #,Dn */ -{ CPUFUNC(op_e058_0), 0, 57432 }, /* ROR.W #,Dn */ -{ CPUFUNC(op_e060_0), 0, 57440 }, /* ASR.W Dn,Dn */ -{ CPUFUNC(op_e068_0), 0, 57448 }, /* LSR.W Dn,Dn */ -{ CPUFUNC(op_e070_0), 0, 57456 }, /* ROXR.W Dn,Dn */ -{ CPUFUNC(op_e078_0), 0, 57464 }, /* ROR.W Dn,Dn */ -{ CPUFUNC(op_e080_0), 0, 57472 }, /* ASR.L #,Dn */ -{ CPUFUNC(op_e088_0), 0, 57480 }, /* LSR.L #,Dn */ -{ CPUFUNC(op_e090_0), 0, 57488 }, /* ROXR.L #,Dn */ -{ CPUFUNC(op_e098_0), 0, 57496 }, /* ROR.L #,Dn */ -{ CPUFUNC(op_e0a0_0), 0, 57504 }, /* ASR.L Dn,Dn */ -{ CPUFUNC(op_e0a8_0), 0, 57512 }, /* LSR.L Dn,Dn */ -{ CPUFUNC(op_e0b0_0), 0, 57520 }, /* ROXR.L Dn,Dn */ -{ CPUFUNC(op_e0b8_0), 0, 57528 }, /* ROR.L Dn,Dn */ -{ CPUFUNC(op_e0d0_0), 0, 57552 }, /* ASRW.W (An) */ -{ CPUFUNC(op_e0d8_0), 0, 57560 }, /* ASRW.W (An)+ */ -{ CPUFUNC(op_e0e0_0), 0, 57568 }, /* ASRW.W -(An) */ -{ CPUFUNC(op_e0e8_0), 0, 57576 }, /* ASRW.W (d16,An) */ -{ CPUFUNC(op_e0f0_0), 0, 57584 }, /* ASRW.W (d8,An,Xn) */ -{ CPUFUNC(op_e0f8_0), 0, 57592 }, /* ASRW.W (xxx).W */ -{ CPUFUNC(op_e0f9_0), 0, 57593 }, /* ASRW.W (xxx).L */ -{ CPUFUNC(op_e100_0), 0, 57600 }, /* ASL.B #,Dn */ -{ CPUFUNC(op_e108_0), 0, 57608 }, /* LSL.B #,Dn */ -{ CPUFUNC(op_e110_0), 0, 57616 }, /* ROXL.B #,Dn */ -{ CPUFUNC(op_e118_0), 0, 57624 }, /* ROL.B #,Dn */ -{ CPUFUNC(op_e120_0), 0, 57632 }, /* ASL.B Dn,Dn */ -{ CPUFUNC(op_e128_0), 0, 57640 }, /* LSL.B Dn,Dn */ -{ CPUFUNC(op_e130_0), 0, 57648 }, /* ROXL.B Dn,Dn */ -{ CPUFUNC(op_e138_0), 0, 57656 }, /* ROL.B Dn,Dn */ -{ CPUFUNC(op_e140_0), 0, 57664 }, /* ASL.W #,Dn */ -{ CPUFUNC(op_e148_0), 0, 57672 }, /* LSL.W #,Dn */ -{ CPUFUNC(op_e150_0), 0, 57680 }, /* ROXL.W #,Dn */ -{ CPUFUNC(op_e158_0), 0, 57688 }, /* ROL.W #,Dn */ -{ CPUFUNC(op_e160_0), 0, 57696 }, /* ASL.W Dn,Dn */ -{ CPUFUNC(op_e168_0), 0, 57704 }, /* LSL.W Dn,Dn */ -{ CPUFUNC(op_e170_0), 0, 57712 }, /* ROXL.W Dn,Dn */ -{ CPUFUNC(op_e178_0), 0, 57720 }, /* ROL.W Dn,Dn */ -{ CPUFUNC(op_e180_0), 0, 57728 }, /* ASL.L #,Dn */ -{ CPUFUNC(op_e188_0), 0, 57736 }, /* LSL.L #,Dn */ -{ CPUFUNC(op_e190_0), 0, 57744 }, /* ROXL.L #,Dn */ -{ CPUFUNC(op_e198_0), 0, 57752 }, /* ROL.L #,Dn */ -{ CPUFUNC(op_e1a0_0), 0, 57760 }, /* ASL.L Dn,Dn */ -{ CPUFUNC(op_e1a8_0), 0, 57768 }, /* LSL.L Dn,Dn */ -{ CPUFUNC(op_e1b0_0), 0, 57776 }, /* ROXL.L Dn,Dn */ -{ CPUFUNC(op_e1b8_0), 0, 57784 }, /* ROL.L Dn,Dn */ -{ CPUFUNC(op_e1d0_0), 0, 57808 }, /* ASLW.W (An) */ -{ CPUFUNC(op_e1d8_0), 0, 57816 }, /* ASLW.W (An)+ */ -{ CPUFUNC(op_e1e0_0), 0, 57824 }, /* ASLW.W -(An) */ -{ CPUFUNC(op_e1e8_0), 0, 57832 }, /* ASLW.W (d16,An) */ -{ CPUFUNC(op_e1f0_0), 0, 57840 }, /* ASLW.W (d8,An,Xn) */ -{ CPUFUNC(op_e1f8_0), 0, 57848 }, /* ASLW.W (xxx).W */ -{ CPUFUNC(op_e1f9_0), 0, 57849 }, /* ASLW.W (xxx).L */ -{ CPUFUNC(op_e2d0_0), 0, 58064 }, /* LSRW.W (An) */ -{ CPUFUNC(op_e2d8_0), 0, 58072 }, /* LSRW.W (An)+ */ -{ CPUFUNC(op_e2e0_0), 0, 58080 }, /* LSRW.W -(An) */ -{ CPUFUNC(op_e2e8_0), 0, 58088 }, /* LSRW.W (d16,An) */ -{ CPUFUNC(op_e2f0_0), 0, 58096 }, /* LSRW.W (d8,An,Xn) */ -{ CPUFUNC(op_e2f8_0), 0, 58104 }, /* LSRW.W (xxx).W */ -{ CPUFUNC(op_e2f9_0), 0, 58105 }, /* LSRW.W (xxx).L */ -{ CPUFUNC(op_e3d0_0), 0, 58320 }, /* LSLW.W (An) */ -{ CPUFUNC(op_e3d8_0), 0, 58328 }, /* LSLW.W (An)+ */ -{ CPUFUNC(op_e3e0_0), 0, 58336 }, /* LSLW.W -(An) */ -{ CPUFUNC(op_e3e8_0), 0, 58344 }, /* LSLW.W (d16,An) */ -{ CPUFUNC(op_e3f0_0), 0, 58352 }, /* LSLW.W (d8,An,Xn) */ -{ CPUFUNC(op_e3f8_0), 0, 58360 }, /* LSLW.W (xxx).W */ -{ CPUFUNC(op_e3f9_0), 0, 58361 }, /* LSLW.W (xxx).L */ -{ CPUFUNC(op_e4d0_0), 0, 58576 }, /* ROXRW.W (An) */ -{ CPUFUNC(op_e4d8_0), 0, 58584 }, /* ROXRW.W (An)+ */ -{ CPUFUNC(op_e4e0_0), 0, 58592 }, /* ROXRW.W -(An) */ -{ CPUFUNC(op_e4e8_0), 0, 58600 }, /* ROXRW.W (d16,An) */ -{ CPUFUNC(op_e4f0_0), 0, 58608 }, /* ROXRW.W (d8,An,Xn) */ -{ CPUFUNC(op_e4f8_0), 0, 58616 }, /* ROXRW.W (xxx).W */ -{ CPUFUNC(op_e4f9_0), 0, 58617 }, /* ROXRW.W (xxx).L */ -{ CPUFUNC(op_e5d0_0), 0, 58832 }, /* ROXLW.W (An) */ -{ CPUFUNC(op_e5d8_0), 0, 58840 }, /* ROXLW.W (An)+ */ -{ CPUFUNC(op_e5e0_0), 0, 58848 }, /* ROXLW.W -(An) */ -{ CPUFUNC(op_e5e8_0), 0, 58856 }, /* ROXLW.W (d16,An) */ -{ CPUFUNC(op_e5f0_0), 0, 58864 }, /* ROXLW.W (d8,An,Xn) */ -{ CPUFUNC(op_e5f8_0), 0, 58872 }, /* ROXLW.W (xxx).W */ -{ CPUFUNC(op_e5f9_0), 0, 58873 }, /* ROXLW.W (xxx).L */ -{ CPUFUNC(op_e6d0_0), 0, 59088 }, /* RORW.W (An) */ -{ CPUFUNC(op_e6d8_0), 0, 59096 }, /* RORW.W (An)+ */ -{ CPUFUNC(op_e6e0_0), 0, 59104 }, /* RORW.W -(An) */ -{ CPUFUNC(op_e6e8_0), 0, 59112 }, /* RORW.W (d16,An) */ -{ CPUFUNC(op_e6f0_0), 0, 59120 }, /* RORW.W (d8,An,Xn) */ -{ CPUFUNC(op_e6f8_0), 0, 59128 }, /* RORW.W (xxx).W */ -{ CPUFUNC(op_e6f9_0), 0, 59129 }, /* RORW.W (xxx).L */ -{ CPUFUNC(op_e7d0_0), 0, 59344 }, /* ROLW.W (An) */ -{ CPUFUNC(op_e7d8_0), 0, 59352 }, /* ROLW.W (An)+ */ -{ CPUFUNC(op_e7e0_0), 0, 59360 }, /* ROLW.W -(An) */ -{ CPUFUNC(op_e7e8_0), 0, 59368 }, /* ROLW.W (d16,An) */ -{ CPUFUNC(op_e7f0_0), 0, 59376 }, /* ROLW.W (d8,An,Xn) */ -{ CPUFUNC(op_e7f8_0), 0, 59384 }, /* ROLW.W (xxx).W */ -{ CPUFUNC(op_e7f9_0), 0, 59385 }, /* ROLW.W (xxx).L */ -{ CPUFUNC(op_e8c0_0), 0, 59584 }, /* BFTST.L #.W,Dn */ -{ CPUFUNC(op_e8d0_0), 0, 59600 }, /* BFTST.L #.W,(An) */ -{ CPUFUNC(op_e8e8_0), 0, 59624 }, /* BFTST.L #.W,(d16,An) */ -{ CPUFUNC(op_e8f0_0), 0, 59632 }, /* BFTST.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_e8f8_0), 0, 59640 }, /* BFTST.L #.W,(xxx).W */ -{ CPUFUNC(op_e8f9_0), 0, 59641 }, /* BFTST.L #.W,(xxx).L */ -{ CPUFUNC(op_e8fa_0), 0, 59642 }, /* BFTST.L #.W,(d16,PC) */ -{ CPUFUNC(op_e8fb_0), 0, 59643 }, /* BFTST.L #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_e9c0_0), 0, 59840 }, /* BFEXTU.L #.W,Dn */ -{ CPUFUNC(op_e9d0_0), 0, 59856 }, /* BFEXTU.L #.W,(An) */ -{ CPUFUNC(op_e9e8_0), 0, 59880 }, /* BFEXTU.L #.W,(d16,An) */ -{ CPUFUNC(op_e9f0_0), 0, 59888 }, /* BFEXTU.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_e9f8_0), 0, 59896 }, /* BFEXTU.L #.W,(xxx).W */ -{ CPUFUNC(op_e9f9_0), 0, 59897 }, /* BFEXTU.L #.W,(xxx).L */ -{ CPUFUNC(op_e9fa_0), 0, 59898 }, /* BFEXTU.L #.W,(d16,PC) */ -{ CPUFUNC(op_e9fb_0), 0, 59899 }, /* BFEXTU.L #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_eac0_0), 0, 60096 }, /* BFCHG.L #.W,Dn */ -{ CPUFUNC(op_ead0_0), 0, 60112 }, /* BFCHG.L #.W,(An) */ -{ CPUFUNC(op_eae8_0), 0, 60136 }, /* BFCHG.L #.W,(d16,An) */ -{ CPUFUNC(op_eaf0_0), 0, 60144 }, /* BFCHG.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_eaf8_0), 0, 60152 }, /* BFCHG.L #.W,(xxx).W */ -{ CPUFUNC(op_eaf9_0), 0, 60153 }, /* BFCHG.L #.W,(xxx).L */ -{ CPUFUNC(op_ebc0_0), 0, 60352 }, /* BFEXTS.L #.W,Dn */ -{ CPUFUNC(op_ebd0_0), 0, 60368 }, /* BFEXTS.L #.W,(An) */ -{ CPUFUNC(op_ebe8_0), 0, 60392 }, /* BFEXTS.L #.W,(d16,An) */ -{ CPUFUNC(op_ebf0_0), 0, 60400 }, /* BFEXTS.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_ebf8_0), 0, 60408 }, /* BFEXTS.L #.W,(xxx).W */ -{ CPUFUNC(op_ebf9_0), 0, 60409 }, /* BFEXTS.L #.W,(xxx).L */ -{ CPUFUNC(op_ebfa_0), 0, 60410 }, /* BFEXTS.L #.W,(d16,PC) */ -{ CPUFUNC(op_ebfb_0), 0, 60411 }, /* BFEXTS.L #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_ecc0_0), 0, 60608 }, /* BFCLR.L #.W,Dn */ -{ CPUFUNC(op_ecd0_0), 0, 60624 }, /* BFCLR.L #.W,(An) */ -{ CPUFUNC(op_ece8_0), 0, 60648 }, /* BFCLR.L #.W,(d16,An) */ -{ CPUFUNC(op_ecf0_0), 0, 60656 }, /* BFCLR.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_ecf8_0), 0, 60664 }, /* BFCLR.L #.W,(xxx).W */ -{ CPUFUNC(op_ecf9_0), 0, 60665 }, /* BFCLR.L #.W,(xxx).L */ -{ CPUFUNC(op_edc0_0), 0, 60864 }, /* BFFFO.L #.W,Dn */ -{ CPUFUNC(op_edd0_0), 0, 60880 }, /* BFFFO.L #.W,(An) */ -{ CPUFUNC(op_ede8_0), 0, 60904 }, /* BFFFO.L #.W,(d16,An) */ -{ CPUFUNC(op_edf0_0), 0, 60912 }, /* BFFFO.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_edf8_0), 0, 60920 }, /* BFFFO.L #.W,(xxx).W */ -{ CPUFUNC(op_edf9_0), 0, 60921 }, /* BFFFO.L #.W,(xxx).L */ -{ CPUFUNC(op_edfa_0), 0, 60922 }, /* BFFFO.L #.W,(d16,PC) */ -{ CPUFUNC(op_edfb_0), 0, 60923 }, /* BFFFO.L #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_eec0_0), 0, 61120 }, /* BFSET.L #.W,Dn */ -{ CPUFUNC(op_eed0_0), 0, 61136 }, /* BFSET.L #.W,(An) */ -{ CPUFUNC(op_eee8_0), 0, 61160 }, /* BFSET.L #.W,(d16,An) */ -{ CPUFUNC(op_eef0_0), 0, 61168 }, /* BFSET.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_eef8_0), 0, 61176 }, /* BFSET.L #.W,(xxx).W */ -{ CPUFUNC(op_eef9_0), 0, 61177 }, /* BFSET.L #.W,(xxx).L */ -{ CPUFUNC(op_efc0_0), 0, 61376 }, /* BFINS.L #.W,Dn */ -{ CPUFUNC(op_efd0_0), 0, 61392 }, /* BFINS.L #.W,(An) */ -{ CPUFUNC(op_efe8_0), 0, 61416 }, /* BFINS.L #.W,(d16,An) */ -{ CPUFUNC(op_eff0_0), 0, 61424 }, /* BFINS.L #.W,(d8,An,Xn) */ -{ CPUFUNC(op_eff8_0), 0, 61432 }, /* BFINS.L #.W,(xxx).W */ -{ CPUFUNC(op_eff9_0), 0, 61433 }, /* BFINS.L #.W,(xxx).L */ -{ 0, 0, 0 }}; -struct cputbl CPUFUNC(op_smalltbl_3)[] = { -{ CPUFUNC(op_0_0), 0, 0 }, /* OR.B #.B,Dn */ -{ CPUFUNC(op_10_0), 0, 16 }, /* OR.B #.B,(An) */ -{ CPUFUNC(op_18_0), 0, 24 }, /* OR.B #.B,(An)+ */ -{ CPUFUNC(op_20_0), 0, 32 }, /* OR.B #.B,-(An) */ -{ CPUFUNC(op_28_0), 0, 40 }, /* OR.B #.B,(d16,An) */ -{ CPUFUNC(op_30_3), 0, 48 }, /* OR.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_38_0), 0, 56 }, /* OR.B #.B,(xxx).W */ -{ CPUFUNC(op_39_0), 0, 57 }, /* OR.B #.B,(xxx).L */ -{ CPUFUNC(op_3c_0), 0, 60 }, /* ORSR.B #.W */ -{ CPUFUNC(op_40_0), 0, 64 }, /* OR.W #.W,Dn */ -{ CPUFUNC(op_50_0), 0, 80 }, /* OR.W #.W,(An) */ -{ CPUFUNC(op_58_0), 0, 88 }, /* OR.W #.W,(An)+ */ -{ CPUFUNC(op_60_0), 0, 96 }, /* OR.W #.W,-(An) */ -{ CPUFUNC(op_68_0), 0, 104 }, /* OR.W #.W,(d16,An) */ -{ CPUFUNC(op_70_3), 0, 112 }, /* OR.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_78_0), 0, 120 }, /* OR.W #.W,(xxx).W */ -{ CPUFUNC(op_79_0), 0, 121 }, /* OR.W #.W,(xxx).L */ -{ CPUFUNC(op_7c_0), 0, 124 }, /* ORSR.W #.W */ -{ CPUFUNC(op_80_0), 0, 128 }, /* OR.L #.L,Dn */ -{ CPUFUNC(op_90_0), 0, 144 }, /* OR.L #.L,(An) */ -{ CPUFUNC(op_98_0), 0, 152 }, /* OR.L #.L,(An)+ */ -{ CPUFUNC(op_a0_0), 0, 160 }, /* OR.L #.L,-(An) */ -{ CPUFUNC(op_a8_0), 0, 168 }, /* OR.L #.L,(d16,An) */ -{ CPUFUNC(op_b0_3), 0, 176 }, /* OR.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_b8_0), 0, 184 }, /* OR.L #.L,(xxx).W */ -{ CPUFUNC(op_b9_0), 0, 185 }, /* OR.L #.L,(xxx).L */ -{ CPUFUNC(op_100_0), 0, 256 }, /* BTST.L Dn,Dn */ -{ CPUFUNC_FF(op_108_0), 0, 264 }, /* MVPMR.W (d16,An),Dn */ -{ CPUFUNC(op_110_0), 0, 272 }, /* BTST.B Dn,(An) */ -{ CPUFUNC(op_118_0), 0, 280 }, /* BTST.B Dn,(An)+ */ -{ CPUFUNC(op_120_0), 0, 288 }, /* BTST.B Dn,-(An) */ -{ CPUFUNC(op_128_0), 0, 296 }, /* BTST.B Dn,(d16,An) */ -{ CPUFUNC(op_130_3), 0, 304 }, /* BTST.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_138_0), 0, 312 }, /* BTST.B Dn,(xxx).W */ -{ CPUFUNC(op_139_0), 0, 313 }, /* BTST.B Dn,(xxx).L */ -{ CPUFUNC(op_13a_0), 0, 314 }, /* BTST.B Dn,(d16,PC) */ -{ CPUFUNC(op_13b_3), 0, 315 }, /* BTST.B Dn,(d8,PC,Xn) */ -{ CPUFUNC(op_13c_0), 0, 316 }, /* BTST.B Dn,#.B */ -{ CPUFUNC(op_140_0), 0, 320 }, /* BCHG.L Dn,Dn */ -{ CPUFUNC_FF(op_148_0), 0, 328 }, /* MVPMR.L (d16,An),Dn */ -{ CPUFUNC(op_150_0), 0, 336 }, /* BCHG.B Dn,(An) */ -{ CPUFUNC(op_158_0), 0, 344 }, /* BCHG.B Dn,(An)+ */ -{ CPUFUNC(op_160_0), 0, 352 }, /* BCHG.B Dn,-(An) */ -{ CPUFUNC(op_168_0), 0, 360 }, /* BCHG.B Dn,(d16,An) */ -{ CPUFUNC(op_170_3), 0, 368 }, /* BCHG.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_178_0), 0, 376 }, /* BCHG.B Dn,(xxx).W */ -{ CPUFUNC(op_179_0), 0, 377 }, /* BCHG.B Dn,(xxx).L */ -{ CPUFUNC(op_17a_0), 0, 378 }, /* BCHG.B Dn,(d16,PC) */ -{ CPUFUNC(op_17b_3), 0, 379 }, /* BCHG.B Dn,(d8,PC,Xn) */ -{ CPUFUNC(op_180_0), 0, 384 }, /* BCLR.L Dn,Dn */ -{ CPUFUNC_FF(op_188_0), 0, 392 }, /* MVPRM.W Dn,(d16,An) */ -{ CPUFUNC(op_190_0), 0, 400 }, /* BCLR.B Dn,(An) */ -{ CPUFUNC(op_198_0), 0, 408 }, /* BCLR.B Dn,(An)+ */ -{ CPUFUNC(op_1a0_0), 0, 416 }, /* BCLR.B Dn,-(An) */ -{ CPUFUNC(op_1a8_0), 0, 424 }, /* BCLR.B Dn,(d16,An) */ -{ CPUFUNC(op_1b0_3), 0, 432 }, /* BCLR.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_1b8_0), 0, 440 }, /* BCLR.B Dn,(xxx).W */ -{ CPUFUNC(op_1b9_0), 0, 441 }, /* BCLR.B Dn,(xxx).L */ -{ CPUFUNC(op_1ba_0), 0, 442 }, /* BCLR.B Dn,(d16,PC) */ -{ CPUFUNC(op_1bb_3), 0, 443 }, /* BCLR.B Dn,(d8,PC,Xn) */ -{ CPUFUNC(op_1c0_0), 0, 448 }, /* BSET.L Dn,Dn */ -{ CPUFUNC_FF(op_1c8_0), 0, 456 }, /* MVPRM.L Dn,(d16,An) */ -{ CPUFUNC(op_1d0_0), 0, 464 }, /* BSET.B Dn,(An) */ -{ CPUFUNC(op_1d8_0), 0, 472 }, /* BSET.B Dn,(An)+ */ -{ CPUFUNC(op_1e0_0), 0, 480 }, /* BSET.B Dn,-(An) */ -{ CPUFUNC(op_1e8_0), 0, 488 }, /* BSET.B Dn,(d16,An) */ -{ CPUFUNC(op_1f0_3), 0, 496 }, /* BSET.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_1f8_0), 0, 504 }, /* BSET.B Dn,(xxx).W */ -{ CPUFUNC(op_1f9_0), 0, 505 }, /* BSET.B Dn,(xxx).L */ -{ CPUFUNC(op_1fa_0), 0, 506 }, /* BSET.B Dn,(d16,PC) */ -{ CPUFUNC(op_1fb_3), 0, 507 }, /* BSET.B Dn,(d8,PC,Xn) */ -{ CPUFUNC(op_200_0), 0, 512 }, /* AND.B #.B,Dn */ -{ CPUFUNC(op_210_0), 0, 528 }, /* AND.B #.B,(An) */ -{ CPUFUNC(op_218_0), 0, 536 }, /* AND.B #.B,(An)+ */ -{ CPUFUNC(op_220_0), 0, 544 }, /* AND.B #.B,-(An) */ -{ CPUFUNC(op_228_0), 0, 552 }, /* AND.B #.B,(d16,An) */ -{ CPUFUNC(op_230_3), 0, 560 }, /* AND.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_238_0), 0, 568 }, /* AND.B #.B,(xxx).W */ -{ CPUFUNC(op_239_0), 0, 569 }, /* AND.B #.B,(xxx).L */ -{ CPUFUNC(op_23c_0), 0, 572 }, /* ANDSR.B #.W */ -{ CPUFUNC(op_240_0), 0, 576 }, /* AND.W #.W,Dn */ -{ CPUFUNC(op_250_0), 0, 592 }, /* AND.W #.W,(An) */ -{ CPUFUNC(op_258_0), 0, 600 }, /* AND.W #.W,(An)+ */ -{ CPUFUNC(op_260_0), 0, 608 }, /* AND.W #.W,-(An) */ -{ CPUFUNC(op_268_0), 0, 616 }, /* AND.W #.W,(d16,An) */ -{ CPUFUNC(op_270_3), 0, 624 }, /* AND.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_278_0), 0, 632 }, /* AND.W #.W,(xxx).W */ -{ CPUFUNC(op_279_0), 0, 633 }, /* AND.W #.W,(xxx).L */ -{ CPUFUNC(op_27c_0), 0, 636 }, /* ANDSR.W #.W */ -{ CPUFUNC(op_280_0), 0, 640 }, /* AND.L #.L,Dn */ -{ CPUFUNC(op_290_0), 0, 656 }, /* AND.L #.L,(An) */ -{ CPUFUNC(op_298_0), 0, 664 }, /* AND.L #.L,(An)+ */ -{ CPUFUNC(op_2a0_0), 0, 672 }, /* AND.L #.L,-(An) */ -{ CPUFUNC(op_2a8_0), 0, 680 }, /* AND.L #.L,(d16,An) */ -{ CPUFUNC(op_2b0_3), 0, 688 }, /* AND.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_2b8_0), 0, 696 }, /* AND.L #.L,(xxx).W */ -{ CPUFUNC(op_2b9_0), 0, 697 }, /* AND.L #.L,(xxx).L */ -{ CPUFUNC(op_400_0), 0, 1024 }, /* SUB.B #.B,Dn */ -{ CPUFUNC(op_410_0), 0, 1040 }, /* SUB.B #.B,(An) */ -{ CPUFUNC(op_418_0), 0, 1048 }, /* SUB.B #.B,(An)+ */ -{ CPUFUNC(op_420_0), 0, 1056 }, /* SUB.B #.B,-(An) */ -{ CPUFUNC(op_428_0), 0, 1064 }, /* SUB.B #.B,(d16,An) */ -{ CPUFUNC(op_430_3), 0, 1072 }, /* SUB.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_438_0), 0, 1080 }, /* SUB.B #.B,(xxx).W */ -{ CPUFUNC(op_439_0), 0, 1081 }, /* SUB.B #.B,(xxx).L */ -{ CPUFUNC(op_440_0), 0, 1088 }, /* SUB.W #.W,Dn */ -{ CPUFUNC(op_450_0), 0, 1104 }, /* SUB.W #.W,(An) */ -{ CPUFUNC(op_458_0), 0, 1112 }, /* SUB.W #.W,(An)+ */ -{ CPUFUNC(op_460_0), 0, 1120 }, /* SUB.W #.W,-(An) */ -{ CPUFUNC(op_468_0), 0, 1128 }, /* SUB.W #.W,(d16,An) */ -{ CPUFUNC(op_470_3), 0, 1136 }, /* SUB.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_478_0), 0, 1144 }, /* SUB.W #.W,(xxx).W */ -{ CPUFUNC(op_479_0), 0, 1145 }, /* SUB.W #.W,(xxx).L */ -{ CPUFUNC(op_480_0), 0, 1152 }, /* SUB.L #.L,Dn */ -{ CPUFUNC(op_490_0), 0, 1168 }, /* SUB.L #.L,(An) */ -{ CPUFUNC(op_498_0), 0, 1176 }, /* SUB.L #.L,(An)+ */ -{ CPUFUNC(op_4a0_0), 0, 1184 }, /* SUB.L #.L,-(An) */ -{ CPUFUNC(op_4a8_0), 0, 1192 }, /* SUB.L #.L,(d16,An) */ -{ CPUFUNC(op_4b0_3), 0, 1200 }, /* SUB.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_4b8_0), 0, 1208 }, /* SUB.L #.L,(xxx).W */ -{ CPUFUNC(op_4b9_0), 0, 1209 }, /* SUB.L #.L,(xxx).L */ -{ CPUFUNC(op_600_0), 0, 1536 }, /* ADD.B #.B,Dn */ -{ CPUFUNC(op_610_0), 0, 1552 }, /* ADD.B #.B,(An) */ -{ CPUFUNC(op_618_0), 0, 1560 }, /* ADD.B #.B,(An)+ */ -{ CPUFUNC(op_620_0), 0, 1568 }, /* ADD.B #.B,-(An) */ -{ CPUFUNC(op_628_0), 0, 1576 }, /* ADD.B #.B,(d16,An) */ -{ CPUFUNC(op_630_3), 0, 1584 }, /* ADD.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_638_0), 0, 1592 }, /* ADD.B #.B,(xxx).W */ -{ CPUFUNC(op_639_0), 0, 1593 }, /* ADD.B #.B,(xxx).L */ -{ CPUFUNC(op_640_0), 0, 1600 }, /* ADD.W #.W,Dn */ -{ CPUFUNC(op_650_0), 0, 1616 }, /* ADD.W #.W,(An) */ -{ CPUFUNC(op_658_0), 0, 1624 }, /* ADD.W #.W,(An)+ */ -{ CPUFUNC(op_660_0), 0, 1632 }, /* ADD.W #.W,-(An) */ -{ CPUFUNC(op_668_0), 0, 1640 }, /* ADD.W #.W,(d16,An) */ -{ CPUFUNC(op_670_3), 0, 1648 }, /* ADD.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_678_0), 0, 1656 }, /* ADD.W #.W,(xxx).W */ -{ CPUFUNC(op_679_0), 0, 1657 }, /* ADD.W #.W,(xxx).L */ -{ CPUFUNC(op_680_0), 0, 1664 }, /* ADD.L #.L,Dn */ -{ CPUFUNC(op_690_0), 0, 1680 }, /* ADD.L #.L,(An) */ -{ CPUFUNC(op_698_0), 0, 1688 }, /* ADD.L #.L,(An)+ */ -{ CPUFUNC(op_6a0_0), 0, 1696 }, /* ADD.L #.L,-(An) */ -{ CPUFUNC(op_6a8_0), 0, 1704 }, /* ADD.L #.L,(d16,An) */ -{ CPUFUNC(op_6b0_3), 0, 1712 }, /* ADD.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_6b8_0), 0, 1720 }, /* ADD.L #.L,(xxx).W */ -{ CPUFUNC(op_6b9_0), 0, 1721 }, /* ADD.L #.L,(xxx).L */ -{ CPUFUNC(op_800_0), 0, 2048 }, /* BTST.L #.W,Dn */ -{ CPUFUNC(op_810_0), 0, 2064 }, /* BTST.B #.W,(An) */ -{ CPUFUNC(op_818_0), 0, 2072 }, /* BTST.B #.W,(An)+ */ -{ CPUFUNC(op_820_0), 0, 2080 }, /* BTST.B #.W,-(An) */ -{ CPUFUNC(op_828_0), 0, 2088 }, /* BTST.B #.W,(d16,An) */ -{ CPUFUNC(op_830_3), 0, 2096 }, /* BTST.B #.W,(d8,An,Xn) */ -{ CPUFUNC(op_838_0), 0, 2104 }, /* BTST.B #.W,(xxx).W */ -{ CPUFUNC(op_839_0), 0, 2105 }, /* BTST.B #.W,(xxx).L */ -{ CPUFUNC(op_83a_0), 0, 2106 }, /* BTST.B #.W,(d16,PC) */ -{ CPUFUNC(op_83b_3), 0, 2107 }, /* BTST.B #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_83c_0), 0, 2108 }, /* BTST.B #.W,#.B */ -{ CPUFUNC(op_840_0), 0, 2112 }, /* BCHG.L #.W,Dn */ -{ CPUFUNC(op_850_0), 0, 2128 }, /* BCHG.B #.W,(An) */ -{ CPUFUNC(op_858_0), 0, 2136 }, /* BCHG.B #.W,(An)+ */ -{ CPUFUNC(op_860_0), 0, 2144 }, /* BCHG.B #.W,-(An) */ -{ CPUFUNC(op_868_0), 0, 2152 }, /* BCHG.B #.W,(d16,An) */ -{ CPUFUNC(op_870_3), 0, 2160 }, /* BCHG.B #.W,(d8,An,Xn) */ -{ CPUFUNC(op_878_0), 0, 2168 }, /* BCHG.B #.W,(xxx).W */ -{ CPUFUNC(op_879_0), 0, 2169 }, /* BCHG.B #.W,(xxx).L */ -{ CPUFUNC(op_87a_0), 0, 2170 }, /* BCHG.B #.W,(d16,PC) */ -{ CPUFUNC(op_87b_3), 0, 2171 }, /* BCHG.B #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_880_0), 0, 2176 }, /* BCLR.L #.W,Dn */ -{ CPUFUNC(op_890_0), 0, 2192 }, /* BCLR.B #.W,(An) */ -{ CPUFUNC(op_898_0), 0, 2200 }, /* BCLR.B #.W,(An)+ */ -{ CPUFUNC(op_8a0_0), 0, 2208 }, /* BCLR.B #.W,-(An) */ -{ CPUFUNC(op_8a8_0), 0, 2216 }, /* BCLR.B #.W,(d16,An) */ -{ CPUFUNC(op_8b0_3), 0, 2224 }, /* BCLR.B #.W,(d8,An,Xn) */ -{ CPUFUNC(op_8b8_0), 0, 2232 }, /* BCLR.B #.W,(xxx).W */ -{ CPUFUNC(op_8b9_0), 0, 2233 }, /* BCLR.B #.W,(xxx).L */ -{ CPUFUNC(op_8ba_0), 0, 2234 }, /* BCLR.B #.W,(d16,PC) */ -{ CPUFUNC(op_8bb_3), 0, 2235 }, /* BCLR.B #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_8c0_0), 0, 2240 }, /* BSET.L #.W,Dn */ -{ CPUFUNC(op_8d0_0), 0, 2256 }, /* BSET.B #.W,(An) */ -{ CPUFUNC(op_8d8_0), 0, 2264 }, /* BSET.B #.W,(An)+ */ -{ CPUFUNC(op_8e0_0), 0, 2272 }, /* BSET.B #.W,-(An) */ -{ CPUFUNC(op_8e8_0), 0, 2280 }, /* BSET.B #.W,(d16,An) */ -{ CPUFUNC(op_8f0_3), 0, 2288 }, /* BSET.B #.W,(d8,An,Xn) */ -{ CPUFUNC(op_8f8_0), 0, 2296 }, /* BSET.B #.W,(xxx).W */ -{ CPUFUNC(op_8f9_0), 0, 2297 }, /* BSET.B #.W,(xxx).L */ -{ CPUFUNC(op_8fa_0), 0, 2298 }, /* BSET.B #.W,(d16,PC) */ -{ CPUFUNC(op_8fb_3), 0, 2299 }, /* BSET.B #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_a00_0), 0, 2560 }, /* EOR.B #.B,Dn */ -{ CPUFUNC(op_a10_0), 0, 2576 }, /* EOR.B #.B,(An) */ -{ CPUFUNC(op_a18_0), 0, 2584 }, /* EOR.B #.B,(An)+ */ -{ CPUFUNC(op_a20_0), 0, 2592 }, /* EOR.B #.B,-(An) */ -{ CPUFUNC(op_a28_0), 0, 2600 }, /* EOR.B #.B,(d16,An) */ -{ CPUFUNC(op_a30_3), 0, 2608 }, /* EOR.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_a38_0), 0, 2616 }, /* EOR.B #.B,(xxx).W */ -{ CPUFUNC(op_a39_0), 0, 2617 }, /* EOR.B #.B,(xxx).L */ -{ CPUFUNC(op_a3c_0), 0, 2620 }, /* EORSR.B #.W */ -{ CPUFUNC(op_a40_0), 0, 2624 }, /* EOR.W #.W,Dn */ -{ CPUFUNC(op_a50_0), 0, 2640 }, /* EOR.W #.W,(An) */ -{ CPUFUNC(op_a58_0), 0, 2648 }, /* EOR.W #.W,(An)+ */ -{ CPUFUNC(op_a60_0), 0, 2656 }, /* EOR.W #.W,-(An) */ -{ CPUFUNC(op_a68_0), 0, 2664 }, /* EOR.W #.W,(d16,An) */ -{ CPUFUNC(op_a70_3), 0, 2672 }, /* EOR.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_a78_0), 0, 2680 }, /* EOR.W #.W,(xxx).W */ -{ CPUFUNC(op_a79_0), 0, 2681 }, /* EOR.W #.W,(xxx).L */ -{ CPUFUNC(op_a7c_0), 0, 2684 }, /* EORSR.W #.W */ -{ CPUFUNC(op_a80_0), 0, 2688 }, /* EOR.L #.L,Dn */ -{ CPUFUNC(op_a90_0), 0, 2704 }, /* EOR.L #.L,(An) */ -{ CPUFUNC(op_a98_0), 0, 2712 }, /* EOR.L #.L,(An)+ */ -{ CPUFUNC(op_aa0_0), 0, 2720 }, /* EOR.L #.L,-(An) */ -{ CPUFUNC(op_aa8_0), 0, 2728 }, /* EOR.L #.L,(d16,An) */ -{ CPUFUNC(op_ab0_3), 0, 2736 }, /* EOR.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_ab8_0), 0, 2744 }, /* EOR.L #.L,(xxx).W */ -{ CPUFUNC(op_ab9_0), 0, 2745 }, /* EOR.L #.L,(xxx).L */ -{ CPUFUNC(op_c00_0), 0, 3072 }, /* CMP.B #.B,Dn */ -{ CPUFUNC(op_c10_0), 0, 3088 }, /* CMP.B #.B,(An) */ -{ CPUFUNC(op_c18_0), 0, 3096 }, /* CMP.B #.B,(An)+ */ -{ CPUFUNC(op_c20_0), 0, 3104 }, /* CMP.B #.B,-(An) */ -{ CPUFUNC(op_c28_0), 0, 3112 }, /* CMP.B #.B,(d16,An) */ -{ CPUFUNC(op_c30_3), 0, 3120 }, /* CMP.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_c38_0), 0, 3128 }, /* CMP.B #.B,(xxx).W */ -{ CPUFUNC(op_c39_0), 0, 3129 }, /* CMP.B #.B,(xxx).L */ -{ CPUFUNC(op_c3a_0), 0, 3130 }, /* CMP.B #.B,(d16,PC) */ -{ CPUFUNC(op_c3b_3), 0, 3131 }, /* CMP.B #.B,(d8,PC,Xn) */ -{ CPUFUNC(op_c40_0), 0, 3136 }, /* CMP.W #.W,Dn */ -{ CPUFUNC(op_c50_0), 0, 3152 }, /* CMP.W #.W,(An) */ -{ CPUFUNC(op_c58_0), 0, 3160 }, /* CMP.W #.W,(An)+ */ -{ CPUFUNC(op_c60_0), 0, 3168 }, /* CMP.W #.W,-(An) */ -{ CPUFUNC(op_c68_0), 0, 3176 }, /* CMP.W #.W,(d16,An) */ -{ CPUFUNC(op_c70_3), 0, 3184 }, /* CMP.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_c78_0), 0, 3192 }, /* CMP.W #.W,(xxx).W */ -{ CPUFUNC(op_c79_0), 0, 3193 }, /* CMP.W #.W,(xxx).L */ -{ CPUFUNC(op_c7a_0), 0, 3194 }, /* CMP.W #.W,(d16,PC) */ -{ CPUFUNC(op_c7b_3), 0, 3195 }, /* CMP.W #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_c80_0), 0, 3200 }, /* CMP.L #.L,Dn */ -{ CPUFUNC(op_c90_0), 0, 3216 }, /* CMP.L #.L,(An) */ -{ CPUFUNC(op_c98_0), 0, 3224 }, /* CMP.L #.L,(An)+ */ -{ CPUFUNC(op_ca0_0), 0, 3232 }, /* CMP.L #.L,-(An) */ -{ CPUFUNC(op_ca8_0), 0, 3240 }, /* CMP.L #.L,(d16,An) */ -{ CPUFUNC(op_cb0_3), 0, 3248 }, /* CMP.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_cb8_0), 0, 3256 }, /* CMP.L #.L,(xxx).W */ -{ CPUFUNC(op_cb9_0), 0, 3257 }, /* CMP.L #.L,(xxx).L */ -{ CPUFUNC(op_cba_0), 0, 3258 }, /* CMP.L #.L,(d16,PC) */ -{ CPUFUNC(op_cbb_3), 0, 3259 }, /* CMP.L #.L,(d8,PC,Xn) */ -{ CPUFUNC(op_1000_0), 0, 4096 }, /* MOVE.B Dn,Dn */ -{ CPUFUNC(op_1010_0), 0, 4112 }, /* MOVE.B (An),Dn */ -{ CPUFUNC(op_1018_0), 0, 4120 }, /* MOVE.B (An)+,Dn */ -{ CPUFUNC(op_1020_0), 0, 4128 }, /* MOVE.B -(An),Dn */ -{ CPUFUNC(op_1028_0), 0, 4136 }, /* MOVE.B (d16,An),Dn */ -{ CPUFUNC(op_1030_3), 0, 4144 }, /* MOVE.B (d8,An,Xn),Dn */ -{ CPUFUNC(op_1038_0), 0, 4152 }, /* MOVE.B (xxx).W,Dn */ -{ CPUFUNC(op_1039_0), 0, 4153 }, /* MOVE.B (xxx).L,Dn */ -{ CPUFUNC(op_103a_0), 0, 4154 }, /* MOVE.B (d16,PC),Dn */ -{ CPUFUNC(op_103b_3), 0, 4155 }, /* MOVE.B (d8,PC,Xn),Dn */ -{ CPUFUNC(op_103c_0), 0, 4156 }, /* MOVE.B #.B,Dn */ -{ CPUFUNC(op_1080_0), 0, 4224 }, /* MOVE.B Dn,(An) */ -{ CPUFUNC(op_1090_0), 0, 4240 }, /* MOVE.B (An),(An) */ -{ CPUFUNC(op_1098_0), 0, 4248 }, /* MOVE.B (An)+,(An) */ -{ CPUFUNC(op_10a0_0), 0, 4256 }, /* MOVE.B -(An),(An) */ -{ CPUFUNC(op_10a8_0), 0, 4264 }, /* MOVE.B (d16,An),(An) */ -{ CPUFUNC(op_10b0_3), 0, 4272 }, /* MOVE.B (d8,An,Xn),(An) */ -{ CPUFUNC(op_10b8_0), 0, 4280 }, /* MOVE.B (xxx).W,(An) */ -{ CPUFUNC(op_10b9_0), 0, 4281 }, /* MOVE.B (xxx).L,(An) */ -{ CPUFUNC(op_10ba_0), 0, 4282 }, /* MOVE.B (d16,PC),(An) */ -{ CPUFUNC(op_10bb_3), 0, 4283 }, /* MOVE.B (d8,PC,Xn),(An) */ -{ CPUFUNC(op_10bc_0), 0, 4284 }, /* MOVE.B #.B,(An) */ -{ CPUFUNC(op_10c0_0), 0, 4288 }, /* MOVE.B Dn,(An)+ */ -{ CPUFUNC(op_10d0_0), 0, 4304 }, /* MOVE.B (An),(An)+ */ -{ CPUFUNC(op_10d8_0), 0, 4312 }, /* MOVE.B (An)+,(An)+ */ -{ CPUFUNC(op_10e0_0), 0, 4320 }, /* MOVE.B -(An),(An)+ */ -{ CPUFUNC(op_10e8_0), 0, 4328 }, /* MOVE.B (d16,An),(An)+ */ -{ CPUFUNC(op_10f0_3), 0, 4336 }, /* MOVE.B (d8,An,Xn),(An)+ */ -{ CPUFUNC(op_10f8_0), 0, 4344 }, /* MOVE.B (xxx).W,(An)+ */ -{ CPUFUNC(op_10f9_0), 0, 4345 }, /* MOVE.B (xxx).L,(An)+ */ -{ CPUFUNC(op_10fa_0), 0, 4346 }, /* MOVE.B (d16,PC),(An)+ */ -{ CPUFUNC(op_10fb_3), 0, 4347 }, /* MOVE.B (d8,PC,Xn),(An)+ */ -{ CPUFUNC(op_10fc_0), 0, 4348 }, /* MOVE.B #.B,(An)+ */ -{ CPUFUNC(op_1100_0), 0, 4352 }, /* MOVE.B Dn,-(An) */ -{ CPUFUNC(op_1110_0), 0, 4368 }, /* MOVE.B (An),-(An) */ -{ CPUFUNC(op_1118_0), 0, 4376 }, /* MOVE.B (An)+,-(An) */ -{ CPUFUNC(op_1120_0), 0, 4384 }, /* MOVE.B -(An),-(An) */ -{ CPUFUNC(op_1128_0), 0, 4392 }, /* MOVE.B (d16,An),-(An) */ -{ CPUFUNC(op_1130_3), 0, 4400 }, /* MOVE.B (d8,An,Xn),-(An) */ -{ CPUFUNC(op_1138_0), 0, 4408 }, /* MOVE.B (xxx).W,-(An) */ -{ CPUFUNC(op_1139_0), 0, 4409 }, /* MOVE.B (xxx).L,-(An) */ -{ CPUFUNC(op_113a_0), 0, 4410 }, /* MOVE.B (d16,PC),-(An) */ -{ CPUFUNC(op_113b_3), 0, 4411 }, /* MOVE.B (d8,PC,Xn),-(An) */ -{ CPUFUNC(op_113c_0), 0, 4412 }, /* MOVE.B #.B,-(An) */ -{ CPUFUNC(op_1140_0), 0, 4416 }, /* MOVE.B Dn,(d16,An) */ -{ CPUFUNC(op_1150_0), 0, 4432 }, /* MOVE.B (An),(d16,An) */ -{ CPUFUNC(op_1158_0), 0, 4440 }, /* MOVE.B (An)+,(d16,An) */ -{ CPUFUNC(op_1160_0), 0, 4448 }, /* MOVE.B -(An),(d16,An) */ -{ CPUFUNC(op_1168_0), 0, 4456 }, /* MOVE.B (d16,An),(d16,An) */ -{ CPUFUNC(op_1170_3), 0, 4464 }, /* MOVE.B (d8,An,Xn),(d16,An) */ -{ CPUFUNC(op_1178_0), 0, 4472 }, /* MOVE.B (xxx).W,(d16,An) */ -{ CPUFUNC(op_1179_0), 0, 4473 }, /* MOVE.B (xxx).L,(d16,An) */ -{ CPUFUNC(op_117a_0), 0, 4474 }, /* MOVE.B (d16,PC),(d16,An) */ -{ CPUFUNC(op_117b_3), 0, 4475 }, /* MOVE.B (d8,PC,Xn),(d16,An) */ -{ CPUFUNC(op_117c_0), 0, 4476 }, /* MOVE.B #.B,(d16,An) */ -{ CPUFUNC(op_1180_3), 0, 4480 }, /* MOVE.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_1190_3), 0, 4496 }, /* MOVE.B (An),(d8,An,Xn) */ -{ CPUFUNC(op_1198_3), 0, 4504 }, /* MOVE.B (An)+,(d8,An,Xn) */ -{ CPUFUNC(op_11a0_3), 0, 4512 }, /* MOVE.B -(An),(d8,An,Xn) */ -{ CPUFUNC(op_11a8_3), 0, 4520 }, /* MOVE.B (d16,An),(d8,An,Xn) */ -{ CPUFUNC(op_11b0_3), 0, 4528 }, /* MOVE.B (d8,An,Xn),(d8,An,Xn) */ -{ CPUFUNC(op_11b8_3), 0, 4536 }, /* MOVE.B (xxx).W,(d8,An,Xn) */ -{ CPUFUNC(op_11b9_3), 0, 4537 }, /* MOVE.B (xxx).L,(d8,An,Xn) */ -{ CPUFUNC(op_11ba_3), 0, 4538 }, /* MOVE.B (d16,PC),(d8,An,Xn) */ -{ CPUFUNC(op_11bb_3), 0, 4539 }, /* MOVE.B (d8,PC,Xn),(d8,An,Xn) */ -{ CPUFUNC(op_11bc_3), 0, 4540 }, /* MOVE.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_11c0_0), 0, 4544 }, /* MOVE.B Dn,(xxx).W */ -{ CPUFUNC(op_11d0_0), 0, 4560 }, /* MOVE.B (An),(xxx).W */ -{ CPUFUNC(op_11d8_0), 0, 4568 }, /* MOVE.B (An)+,(xxx).W */ -{ CPUFUNC(op_11e0_0), 0, 4576 }, /* MOVE.B -(An),(xxx).W */ -{ CPUFUNC(op_11e8_0), 0, 4584 }, /* MOVE.B (d16,An),(xxx).W */ -{ CPUFUNC(op_11f0_3), 0, 4592 }, /* MOVE.B (d8,An,Xn),(xxx).W */ -{ CPUFUNC(op_11f8_0), 0, 4600 }, /* MOVE.B (xxx).W,(xxx).W */ -{ CPUFUNC(op_11f9_0), 0, 4601 }, /* MOVE.B (xxx).L,(xxx).W */ -{ CPUFUNC(op_11fa_0), 0, 4602 }, /* MOVE.B (d16,PC),(xxx).W */ -{ CPUFUNC(op_11fb_3), 0, 4603 }, /* MOVE.B (d8,PC,Xn),(xxx).W */ -{ CPUFUNC(op_11fc_0), 0, 4604 }, /* MOVE.B #.B,(xxx).W */ -{ CPUFUNC(op_13c0_0), 0, 5056 }, /* MOVE.B Dn,(xxx).L */ -{ CPUFUNC(op_13d0_0), 0, 5072 }, /* MOVE.B (An),(xxx).L */ -{ CPUFUNC(op_13d8_0), 0, 5080 }, /* MOVE.B (An)+,(xxx).L */ -{ CPUFUNC(op_13e0_0), 0, 5088 }, /* MOVE.B -(An),(xxx).L */ -{ CPUFUNC(op_13e8_0), 0, 5096 }, /* MOVE.B (d16,An),(xxx).L */ -{ CPUFUNC(op_13f0_3), 0, 5104 }, /* MOVE.B (d8,An,Xn),(xxx).L */ -{ CPUFUNC(op_13f8_0), 0, 5112 }, /* MOVE.B (xxx).W,(xxx).L */ -{ CPUFUNC(op_13f9_0), 0, 5113 }, /* MOVE.B (xxx).L,(xxx).L */ -{ CPUFUNC(op_13fa_0), 0, 5114 }, /* MOVE.B (d16,PC),(xxx).L */ -{ CPUFUNC(op_13fb_3), 0, 5115 }, /* MOVE.B (d8,PC,Xn),(xxx).L */ -{ CPUFUNC(op_13fc_0), 0, 5116 }, /* MOVE.B #.B,(xxx).L */ -{ CPUFUNC(op_2000_0), 0, 8192 }, /* MOVE.L Dn,Dn */ -{ CPUFUNC(op_2008_0), 0, 8200 }, /* MOVE.L An,Dn */ -{ CPUFUNC(op_2010_0), 0, 8208 }, /* MOVE.L (An),Dn */ -{ CPUFUNC(op_2018_0), 0, 8216 }, /* MOVE.L (An)+,Dn */ -{ CPUFUNC(op_2020_0), 0, 8224 }, /* MOVE.L -(An),Dn */ -{ CPUFUNC(op_2028_0), 0, 8232 }, /* MOVE.L (d16,An),Dn */ -{ CPUFUNC(op_2030_3), 0, 8240 }, /* MOVE.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_2038_0), 0, 8248 }, /* MOVE.L (xxx).W,Dn */ -{ CPUFUNC(op_2039_0), 0, 8249 }, /* MOVE.L (xxx).L,Dn */ -{ CPUFUNC(op_203a_0), 0, 8250 }, /* MOVE.L (d16,PC),Dn */ -{ CPUFUNC(op_203b_3), 0, 8251 }, /* MOVE.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_203c_0), 0, 8252 }, /* MOVE.L #.L,Dn */ -{ CPUFUNC_FF(op_2040_0), 0, 8256 }, /* MOVEA.L Dn,An */ -{ CPUFUNC_FF(op_2048_0), 0, 8264 }, /* MOVEA.L An,An */ -{ CPUFUNC_FF(op_2050_0), 0, 8272 }, /* MOVEA.L (An),An */ -{ CPUFUNC_FF(op_2058_0), 0, 8280 }, /* MOVEA.L (An)+,An */ -{ CPUFUNC_FF(op_2060_0), 0, 8288 }, /* MOVEA.L -(An),An */ -{ CPUFUNC_FF(op_2068_0), 0, 8296 }, /* MOVEA.L (d16,An),An */ -{ CPUFUNC_FF(op_2070_3), 0, 8304 }, /* MOVEA.L (d8,An,Xn),An */ -{ CPUFUNC_FF(op_2078_0), 0, 8312 }, /* MOVEA.L (xxx).W,An */ -{ CPUFUNC_FF(op_2079_0), 0, 8313 }, /* MOVEA.L (xxx).L,An */ -{ CPUFUNC_FF(op_207a_0), 0, 8314 }, /* MOVEA.L (d16,PC),An */ -{ CPUFUNC_FF(op_207b_3), 0, 8315 }, /* MOVEA.L (d8,PC,Xn),An */ -{ CPUFUNC_FF(op_207c_0), 0, 8316 }, /* MOVEA.L #.L,An */ -{ CPUFUNC(op_2080_0), 0, 8320 }, /* MOVE.L Dn,(An) */ -{ CPUFUNC(op_2088_0), 0, 8328 }, /* MOVE.L An,(An) */ -{ CPUFUNC(op_2090_0), 0, 8336 }, /* MOVE.L (An),(An) */ -{ CPUFUNC(op_2098_0), 0, 8344 }, /* MOVE.L (An)+,(An) */ -{ CPUFUNC(op_20a0_0), 0, 8352 }, /* MOVE.L -(An),(An) */ -{ CPUFUNC(op_20a8_0), 0, 8360 }, /* MOVE.L (d16,An),(An) */ -{ CPUFUNC(op_20b0_3), 0, 8368 }, /* MOVE.L (d8,An,Xn),(An) */ -{ CPUFUNC(op_20b8_0), 0, 8376 }, /* MOVE.L (xxx).W,(An) */ -{ CPUFUNC(op_20b9_0), 0, 8377 }, /* MOVE.L (xxx).L,(An) */ -{ CPUFUNC(op_20ba_0), 0, 8378 }, /* MOVE.L (d16,PC),(An) */ -{ CPUFUNC(op_20bb_3), 0, 8379 }, /* MOVE.L (d8,PC,Xn),(An) */ -{ CPUFUNC(op_20bc_0), 0, 8380 }, /* MOVE.L #.L,(An) */ -{ CPUFUNC(op_20c0_0), 0, 8384 }, /* MOVE.L Dn,(An)+ */ -{ CPUFUNC(op_20c8_0), 0, 8392 }, /* MOVE.L An,(An)+ */ -{ CPUFUNC(op_20d0_0), 0, 8400 }, /* MOVE.L (An),(An)+ */ -{ CPUFUNC(op_20d8_0), 0, 8408 }, /* MOVE.L (An)+,(An)+ */ -{ CPUFUNC(op_20e0_0), 0, 8416 }, /* MOVE.L -(An),(An)+ */ -{ CPUFUNC(op_20e8_0), 0, 8424 }, /* MOVE.L (d16,An),(An)+ */ -{ CPUFUNC(op_20f0_3), 0, 8432 }, /* MOVE.L (d8,An,Xn),(An)+ */ -{ CPUFUNC(op_20f8_0), 0, 8440 }, /* MOVE.L (xxx).W,(An)+ */ -{ CPUFUNC(op_20f9_0), 0, 8441 }, /* MOVE.L (xxx).L,(An)+ */ -{ CPUFUNC(op_20fa_0), 0, 8442 }, /* MOVE.L (d16,PC),(An)+ */ -{ CPUFUNC(op_20fb_3), 0, 8443 }, /* MOVE.L (d8,PC,Xn),(An)+ */ -{ CPUFUNC(op_20fc_0), 0, 8444 }, /* MOVE.L #.L,(An)+ */ -{ CPUFUNC(op_2100_0), 0, 8448 }, /* MOVE.L Dn,-(An) */ -{ CPUFUNC(op_2108_0), 0, 8456 }, /* MOVE.L An,-(An) */ -{ CPUFUNC(op_2110_0), 0, 8464 }, /* MOVE.L (An),-(An) */ -{ CPUFUNC(op_2118_0), 0, 8472 }, /* MOVE.L (An)+,-(An) */ -{ CPUFUNC(op_2120_0), 0, 8480 }, /* MOVE.L -(An),-(An) */ -{ CPUFUNC(op_2128_0), 0, 8488 }, /* MOVE.L (d16,An),-(An) */ -{ CPUFUNC(op_2130_3), 0, 8496 }, /* MOVE.L (d8,An,Xn),-(An) */ -{ CPUFUNC(op_2138_0), 0, 8504 }, /* MOVE.L (xxx).W,-(An) */ -{ CPUFUNC(op_2139_0), 0, 8505 }, /* MOVE.L (xxx).L,-(An) */ -{ CPUFUNC(op_213a_0), 0, 8506 }, /* MOVE.L (d16,PC),-(An) */ -{ CPUFUNC(op_213b_3), 0, 8507 }, /* MOVE.L (d8,PC,Xn),-(An) */ -{ CPUFUNC(op_213c_0), 0, 8508 }, /* MOVE.L #.L,-(An) */ -{ CPUFUNC(op_2140_0), 0, 8512 }, /* MOVE.L Dn,(d16,An) */ -{ CPUFUNC(op_2148_0), 0, 8520 }, /* MOVE.L An,(d16,An) */ -{ CPUFUNC(op_2150_0), 0, 8528 }, /* MOVE.L (An),(d16,An) */ -{ CPUFUNC(op_2158_0), 0, 8536 }, /* MOVE.L (An)+,(d16,An) */ -{ CPUFUNC(op_2160_0), 0, 8544 }, /* MOVE.L -(An),(d16,An) */ -{ CPUFUNC(op_2168_0), 0, 8552 }, /* MOVE.L (d16,An),(d16,An) */ -{ CPUFUNC(op_2170_3), 0, 8560 }, /* MOVE.L (d8,An,Xn),(d16,An) */ -{ CPUFUNC(op_2178_0), 0, 8568 }, /* MOVE.L (xxx).W,(d16,An) */ -{ CPUFUNC(op_2179_0), 0, 8569 }, /* MOVE.L (xxx).L,(d16,An) */ -{ CPUFUNC(op_217a_0), 0, 8570 }, /* MOVE.L (d16,PC),(d16,An) */ -{ CPUFUNC(op_217b_3), 0, 8571 }, /* MOVE.L (d8,PC,Xn),(d16,An) */ -{ CPUFUNC(op_217c_0), 0, 8572 }, /* MOVE.L #.L,(d16,An) */ -{ CPUFUNC(op_2180_3), 0, 8576 }, /* MOVE.L Dn,(d8,An,Xn) */ -{ CPUFUNC(op_2188_3), 0, 8584 }, /* MOVE.L An,(d8,An,Xn) */ -{ CPUFUNC(op_2190_3), 0, 8592 }, /* MOVE.L (An),(d8,An,Xn) */ -{ CPUFUNC(op_2198_3), 0, 8600 }, /* MOVE.L (An)+,(d8,An,Xn) */ -{ CPUFUNC(op_21a0_3), 0, 8608 }, /* MOVE.L -(An),(d8,An,Xn) */ -{ CPUFUNC(op_21a8_3), 0, 8616 }, /* MOVE.L (d16,An),(d8,An,Xn) */ -{ CPUFUNC(op_21b0_3), 0, 8624 }, /* MOVE.L (d8,An,Xn),(d8,An,Xn) */ -{ CPUFUNC(op_21b8_3), 0, 8632 }, /* MOVE.L (xxx).W,(d8,An,Xn) */ -{ CPUFUNC(op_21b9_3), 0, 8633 }, /* MOVE.L (xxx).L,(d8,An,Xn) */ -{ CPUFUNC(op_21ba_3), 0, 8634 }, /* MOVE.L (d16,PC),(d8,An,Xn) */ -{ CPUFUNC(op_21bb_3), 0, 8635 }, /* MOVE.L (d8,PC,Xn),(d8,An,Xn) */ -{ CPUFUNC(op_21bc_3), 0, 8636 }, /* MOVE.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_21c0_0), 0, 8640 }, /* MOVE.L Dn,(xxx).W */ -{ CPUFUNC(op_21c8_0), 0, 8648 }, /* MOVE.L An,(xxx).W */ -{ CPUFUNC(op_21d0_0), 0, 8656 }, /* MOVE.L (An),(xxx).W */ -{ CPUFUNC(op_21d8_0), 0, 8664 }, /* MOVE.L (An)+,(xxx).W */ -{ CPUFUNC(op_21e0_0), 0, 8672 }, /* MOVE.L -(An),(xxx).W */ -{ CPUFUNC(op_21e8_0), 0, 8680 }, /* MOVE.L (d16,An),(xxx).W */ -{ CPUFUNC(op_21f0_3), 0, 8688 }, /* MOVE.L (d8,An,Xn),(xxx).W */ -{ CPUFUNC(op_21f8_0), 0, 8696 }, /* MOVE.L (xxx).W,(xxx).W */ -{ CPUFUNC(op_21f9_0), 0, 8697 }, /* MOVE.L (xxx).L,(xxx).W */ -{ CPUFUNC(op_21fa_0), 0, 8698 }, /* MOVE.L (d16,PC),(xxx).W */ -{ CPUFUNC(op_21fb_3), 0, 8699 }, /* MOVE.L (d8,PC,Xn),(xxx).W */ -{ CPUFUNC(op_21fc_0), 0, 8700 }, /* MOVE.L #.L,(xxx).W */ -{ CPUFUNC(op_23c0_0), 0, 9152 }, /* MOVE.L Dn,(xxx).L */ -{ CPUFUNC(op_23c8_0), 0, 9160 }, /* MOVE.L An,(xxx).L */ -{ CPUFUNC(op_23d0_0), 0, 9168 }, /* MOVE.L (An),(xxx).L */ -{ CPUFUNC(op_23d8_0), 0, 9176 }, /* MOVE.L (An)+,(xxx).L */ -{ CPUFUNC(op_23e0_0), 0, 9184 }, /* MOVE.L -(An),(xxx).L */ -{ CPUFUNC(op_23e8_0), 0, 9192 }, /* MOVE.L (d16,An),(xxx).L */ -{ CPUFUNC(op_23f0_3), 0, 9200 }, /* MOVE.L (d8,An,Xn),(xxx).L */ -{ CPUFUNC(op_23f8_0), 0, 9208 }, /* MOVE.L (xxx).W,(xxx).L */ -{ CPUFUNC(op_23f9_0), 0, 9209 }, /* MOVE.L (xxx).L,(xxx).L */ -{ CPUFUNC(op_23fa_0), 0, 9210 }, /* MOVE.L (d16,PC),(xxx).L */ -{ CPUFUNC(op_23fb_3), 0, 9211 }, /* MOVE.L (d8,PC,Xn),(xxx).L */ -{ CPUFUNC(op_23fc_0), 0, 9212 }, /* MOVE.L #.L,(xxx).L */ -{ CPUFUNC(op_3000_0), 0, 12288 }, /* MOVE.W Dn,Dn */ -{ CPUFUNC(op_3008_0), 0, 12296 }, /* MOVE.W An,Dn */ -{ CPUFUNC(op_3010_0), 0, 12304 }, /* MOVE.W (An),Dn */ -{ CPUFUNC(op_3018_0), 0, 12312 }, /* MOVE.W (An)+,Dn */ -{ CPUFUNC(op_3020_0), 0, 12320 }, /* MOVE.W -(An),Dn */ -{ CPUFUNC(op_3028_0), 0, 12328 }, /* MOVE.W (d16,An),Dn */ -{ CPUFUNC(op_3030_3), 0, 12336 }, /* MOVE.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_3038_0), 0, 12344 }, /* MOVE.W (xxx).W,Dn */ -{ CPUFUNC(op_3039_0), 0, 12345 }, /* MOVE.W (xxx).L,Dn */ -{ CPUFUNC(op_303a_0), 0, 12346 }, /* MOVE.W (d16,PC),Dn */ -{ CPUFUNC(op_303b_3), 0, 12347 }, /* MOVE.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_303c_0), 0, 12348 }, /* MOVE.W #.W,Dn */ -{ CPUFUNC_FF(op_3040_0), 0, 12352 }, /* MOVEA.W Dn,An */ -{ CPUFUNC_FF(op_3048_0), 0, 12360 }, /* MOVEA.W An,An */ -{ CPUFUNC_FF(op_3050_0), 0, 12368 }, /* MOVEA.W (An),An */ -{ CPUFUNC_FF(op_3058_0), 0, 12376 }, /* MOVEA.W (An)+,An */ -{ CPUFUNC_FF(op_3060_0), 0, 12384 }, /* MOVEA.W -(An),An */ -{ CPUFUNC_FF(op_3068_0), 0, 12392 }, /* MOVEA.W (d16,An),An */ -{ CPUFUNC_FF(op_3070_3), 0, 12400 }, /* MOVEA.W (d8,An,Xn),An */ -{ CPUFUNC_FF(op_3078_0), 0, 12408 }, /* MOVEA.W (xxx).W,An */ -{ CPUFUNC_FF(op_3079_0), 0, 12409 }, /* MOVEA.W (xxx).L,An */ -{ CPUFUNC_FF(op_307a_0), 0, 12410 }, /* MOVEA.W (d16,PC),An */ -{ CPUFUNC_FF(op_307b_3), 0, 12411 }, /* MOVEA.W (d8,PC,Xn),An */ -{ CPUFUNC_FF(op_307c_0), 0, 12412 }, /* MOVEA.W #.W,An */ -{ CPUFUNC(op_3080_0), 0, 12416 }, /* MOVE.W Dn,(An) */ -{ CPUFUNC(op_3088_0), 0, 12424 }, /* MOVE.W An,(An) */ -{ CPUFUNC(op_3090_0), 0, 12432 }, /* MOVE.W (An),(An) */ -{ CPUFUNC(op_3098_0), 0, 12440 }, /* MOVE.W (An)+,(An) */ -{ CPUFUNC(op_30a0_0), 0, 12448 }, /* MOVE.W -(An),(An) */ -{ CPUFUNC(op_30a8_0), 0, 12456 }, /* MOVE.W (d16,An),(An) */ -{ CPUFUNC(op_30b0_3), 0, 12464 }, /* MOVE.W (d8,An,Xn),(An) */ -{ CPUFUNC(op_30b8_0), 0, 12472 }, /* MOVE.W (xxx).W,(An) */ -{ CPUFUNC(op_30b9_0), 0, 12473 }, /* MOVE.W (xxx).L,(An) */ -{ CPUFUNC(op_30ba_0), 0, 12474 }, /* MOVE.W (d16,PC),(An) */ -{ CPUFUNC(op_30bb_3), 0, 12475 }, /* MOVE.W (d8,PC,Xn),(An) */ -{ CPUFUNC(op_30bc_0), 0, 12476 }, /* MOVE.W #.W,(An) */ -{ CPUFUNC(op_30c0_0), 0, 12480 }, /* MOVE.W Dn,(An)+ */ -{ CPUFUNC(op_30c8_0), 0, 12488 }, /* MOVE.W An,(An)+ */ -{ CPUFUNC(op_30d0_0), 0, 12496 }, /* MOVE.W (An),(An)+ */ -{ CPUFUNC(op_30d8_0), 0, 12504 }, /* MOVE.W (An)+,(An)+ */ -{ CPUFUNC(op_30e0_0), 0, 12512 }, /* MOVE.W -(An),(An)+ */ -{ CPUFUNC(op_30e8_0), 0, 12520 }, /* MOVE.W (d16,An),(An)+ */ -{ CPUFUNC(op_30f0_3), 0, 12528 }, /* MOVE.W (d8,An,Xn),(An)+ */ -{ CPUFUNC(op_30f8_0), 0, 12536 }, /* MOVE.W (xxx).W,(An)+ */ -{ CPUFUNC(op_30f9_0), 0, 12537 }, /* MOVE.W (xxx).L,(An)+ */ -{ CPUFUNC(op_30fa_0), 0, 12538 }, /* MOVE.W (d16,PC),(An)+ */ -{ CPUFUNC(op_30fb_3), 0, 12539 }, /* MOVE.W (d8,PC,Xn),(An)+ */ -{ CPUFUNC(op_30fc_0), 0, 12540 }, /* MOVE.W #.W,(An)+ */ -{ CPUFUNC(op_3100_0), 0, 12544 }, /* MOVE.W Dn,-(An) */ -{ CPUFUNC(op_3108_0), 0, 12552 }, /* MOVE.W An,-(An) */ -{ CPUFUNC(op_3110_0), 0, 12560 }, /* MOVE.W (An),-(An) */ -{ CPUFUNC(op_3118_0), 0, 12568 }, /* MOVE.W (An)+,-(An) */ -{ CPUFUNC(op_3120_0), 0, 12576 }, /* MOVE.W -(An),-(An) */ -{ CPUFUNC(op_3128_0), 0, 12584 }, /* MOVE.W (d16,An),-(An) */ -{ CPUFUNC(op_3130_3), 0, 12592 }, /* MOVE.W (d8,An,Xn),-(An) */ -{ CPUFUNC(op_3138_0), 0, 12600 }, /* MOVE.W (xxx).W,-(An) */ -{ CPUFUNC(op_3139_0), 0, 12601 }, /* MOVE.W (xxx).L,-(An) */ -{ CPUFUNC(op_313a_0), 0, 12602 }, /* MOVE.W (d16,PC),-(An) */ -{ CPUFUNC(op_313b_3), 0, 12603 }, /* MOVE.W (d8,PC,Xn),-(An) */ -{ CPUFUNC(op_313c_0), 0, 12604 }, /* MOVE.W #.W,-(An) */ -{ CPUFUNC(op_3140_0), 0, 12608 }, /* MOVE.W Dn,(d16,An) */ -{ CPUFUNC(op_3148_0), 0, 12616 }, /* MOVE.W An,(d16,An) */ -{ CPUFUNC(op_3150_0), 0, 12624 }, /* MOVE.W (An),(d16,An) */ -{ CPUFUNC(op_3158_0), 0, 12632 }, /* MOVE.W (An)+,(d16,An) */ -{ CPUFUNC(op_3160_0), 0, 12640 }, /* MOVE.W -(An),(d16,An) */ -{ CPUFUNC(op_3168_0), 0, 12648 }, /* MOVE.W (d16,An),(d16,An) */ -{ CPUFUNC(op_3170_3), 0, 12656 }, /* MOVE.W (d8,An,Xn),(d16,An) */ -{ CPUFUNC(op_3178_0), 0, 12664 }, /* MOVE.W (xxx).W,(d16,An) */ -{ CPUFUNC(op_3179_0), 0, 12665 }, /* MOVE.W (xxx).L,(d16,An) */ -{ CPUFUNC(op_317a_0), 0, 12666 }, /* MOVE.W (d16,PC),(d16,An) */ -{ CPUFUNC(op_317b_3), 0, 12667 }, /* MOVE.W (d8,PC,Xn),(d16,An) */ -{ CPUFUNC(op_317c_0), 0, 12668 }, /* MOVE.W #.W,(d16,An) */ -{ CPUFUNC(op_3180_3), 0, 12672 }, /* MOVE.W Dn,(d8,An,Xn) */ -{ CPUFUNC(op_3188_3), 0, 12680 }, /* MOVE.W An,(d8,An,Xn) */ -{ CPUFUNC(op_3190_3), 0, 12688 }, /* MOVE.W (An),(d8,An,Xn) */ -{ CPUFUNC(op_3198_3), 0, 12696 }, /* MOVE.W (An)+,(d8,An,Xn) */ -{ CPUFUNC(op_31a0_3), 0, 12704 }, /* MOVE.W -(An),(d8,An,Xn) */ -{ CPUFUNC(op_31a8_3), 0, 12712 }, /* MOVE.W (d16,An),(d8,An,Xn) */ -{ CPUFUNC(op_31b0_3), 0, 12720 }, /* MOVE.W (d8,An,Xn),(d8,An,Xn) */ -{ CPUFUNC(op_31b8_3), 0, 12728 }, /* MOVE.W (xxx).W,(d8,An,Xn) */ -{ CPUFUNC(op_31b9_3), 0, 12729 }, /* MOVE.W (xxx).L,(d8,An,Xn) */ -{ CPUFUNC(op_31ba_3), 0, 12730 }, /* MOVE.W (d16,PC),(d8,An,Xn) */ -{ CPUFUNC(op_31bb_3), 0, 12731 }, /* MOVE.W (d8,PC,Xn),(d8,An,Xn) */ -{ CPUFUNC(op_31bc_3), 0, 12732 }, /* MOVE.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_31c0_0), 0, 12736 }, /* MOVE.W Dn,(xxx).W */ -{ CPUFUNC(op_31c8_0), 0, 12744 }, /* MOVE.W An,(xxx).W */ -{ CPUFUNC(op_31d0_0), 0, 12752 }, /* MOVE.W (An),(xxx).W */ -{ CPUFUNC(op_31d8_0), 0, 12760 }, /* MOVE.W (An)+,(xxx).W */ -{ CPUFUNC(op_31e0_0), 0, 12768 }, /* MOVE.W -(An),(xxx).W */ -{ CPUFUNC(op_31e8_0), 0, 12776 }, /* MOVE.W (d16,An),(xxx).W */ -{ CPUFUNC(op_31f0_3), 0, 12784 }, /* MOVE.W (d8,An,Xn),(xxx).W */ -{ CPUFUNC(op_31f8_0), 0, 12792 }, /* MOVE.W (xxx).W,(xxx).W */ -{ CPUFUNC(op_31f9_0), 0, 12793 }, /* MOVE.W (xxx).L,(xxx).W */ -{ CPUFUNC(op_31fa_0), 0, 12794 }, /* MOVE.W (d16,PC),(xxx).W */ -{ CPUFUNC(op_31fb_3), 0, 12795 }, /* MOVE.W (d8,PC,Xn),(xxx).W */ -{ CPUFUNC(op_31fc_0), 0, 12796 }, /* MOVE.W #.W,(xxx).W */ -{ CPUFUNC(op_33c0_0), 0, 13248 }, /* MOVE.W Dn,(xxx).L */ -{ CPUFUNC(op_33c8_0), 0, 13256 }, /* MOVE.W An,(xxx).L */ -{ CPUFUNC(op_33d0_0), 0, 13264 }, /* MOVE.W (An),(xxx).L */ -{ CPUFUNC(op_33d8_0), 0, 13272 }, /* MOVE.W (An)+,(xxx).L */ -{ CPUFUNC(op_33e0_0), 0, 13280 }, /* MOVE.W -(An),(xxx).L */ -{ CPUFUNC(op_33e8_0), 0, 13288 }, /* MOVE.W (d16,An),(xxx).L */ -{ CPUFUNC(op_33f0_3), 0, 13296 }, /* MOVE.W (d8,An,Xn),(xxx).L */ -{ CPUFUNC(op_33f8_0), 0, 13304 }, /* MOVE.W (xxx).W,(xxx).L */ -{ CPUFUNC(op_33f9_0), 0, 13305 }, /* MOVE.W (xxx).L,(xxx).L */ -{ CPUFUNC(op_33fa_0), 0, 13306 }, /* MOVE.W (d16,PC),(xxx).L */ -{ CPUFUNC(op_33fb_3), 0, 13307 }, /* MOVE.W (d8,PC,Xn),(xxx).L */ -{ CPUFUNC(op_33fc_0), 0, 13308 }, /* MOVE.W #.W,(xxx).L */ -{ CPUFUNC(op_4000_0), 0, 16384 }, /* NEGX.B Dn */ -{ CPUFUNC(op_4010_0), 0, 16400 }, /* NEGX.B (An) */ -{ CPUFUNC(op_4018_0), 0, 16408 }, /* NEGX.B (An)+ */ -{ CPUFUNC(op_4020_0), 0, 16416 }, /* NEGX.B -(An) */ -{ CPUFUNC(op_4028_0), 0, 16424 }, /* NEGX.B (d16,An) */ -{ CPUFUNC(op_4030_3), 0, 16432 }, /* NEGX.B (d8,An,Xn) */ -{ CPUFUNC(op_4038_0), 0, 16440 }, /* NEGX.B (xxx).W */ -{ CPUFUNC(op_4039_0), 0, 16441 }, /* NEGX.B (xxx).L */ -{ CPUFUNC(op_4040_0), 0, 16448 }, /* NEGX.W Dn */ -{ CPUFUNC(op_4050_0), 0, 16464 }, /* NEGX.W (An) */ -{ CPUFUNC(op_4058_0), 0, 16472 }, /* NEGX.W (An)+ */ -{ CPUFUNC(op_4060_0), 0, 16480 }, /* NEGX.W -(An) */ -{ CPUFUNC(op_4068_0), 0, 16488 }, /* NEGX.W (d16,An) */ -{ CPUFUNC(op_4070_3), 0, 16496 }, /* NEGX.W (d8,An,Xn) */ -{ CPUFUNC(op_4078_0), 0, 16504 }, /* NEGX.W (xxx).W */ -{ CPUFUNC(op_4079_0), 0, 16505 }, /* NEGX.W (xxx).L */ -{ CPUFUNC(op_4080_0), 0, 16512 }, /* NEGX.L Dn */ -{ CPUFUNC(op_4090_0), 0, 16528 }, /* NEGX.L (An) */ -{ CPUFUNC(op_4098_0), 0, 16536 }, /* NEGX.L (An)+ */ -{ CPUFUNC(op_40a0_0), 0, 16544 }, /* NEGX.L -(An) */ -{ CPUFUNC(op_40a8_0), 0, 16552 }, /* NEGX.L (d16,An) */ -{ CPUFUNC(op_40b0_3), 0, 16560 }, /* NEGX.L (d8,An,Xn) */ -{ CPUFUNC(op_40b8_0), 0, 16568 }, /* NEGX.L (xxx).W */ -{ CPUFUNC(op_40b9_0), 0, 16569 }, /* NEGX.L (xxx).L */ -{ CPUFUNC_FF(op_40c0_0), 0, 16576 }, /* MVSR2.W Dn */ -{ CPUFUNC_FF(op_40d0_0), 0, 16592 }, /* MVSR2.W (An) */ -{ CPUFUNC_FF(op_40d8_0), 0, 16600 }, /* MVSR2.W (An)+ */ -{ CPUFUNC_FF(op_40e0_0), 0, 16608 }, /* MVSR2.W -(An) */ -{ CPUFUNC_FF(op_40e8_0), 0, 16616 }, /* MVSR2.W (d16,An) */ -{ CPUFUNC_FF(op_40f0_3), 0, 16624 }, /* MVSR2.W (d8,An,Xn) */ -{ CPUFUNC_FF(op_40f8_0), 0, 16632 }, /* MVSR2.W (xxx).W */ -{ CPUFUNC_FF(op_40f9_0), 0, 16633 }, /* MVSR2.W (xxx).L */ -{ CPUFUNC(op_4100_0), 0, 16640 }, /* CHK.L Dn,Dn */ -{ CPUFUNC(op_4110_0), 0, 16656 }, /* CHK.L (An),Dn */ -{ CPUFUNC(op_4118_0), 0, 16664 }, /* CHK.L (An)+,Dn */ -{ CPUFUNC(op_4120_0), 0, 16672 }, /* CHK.L -(An),Dn */ -{ CPUFUNC(op_4128_0), 0, 16680 }, /* CHK.L (d16,An),Dn */ -{ CPUFUNC(op_4130_3), 0, 16688 }, /* CHK.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_4138_0), 0, 16696 }, /* CHK.L (xxx).W,Dn */ -{ CPUFUNC(op_4139_0), 0, 16697 }, /* CHK.L (xxx).L,Dn */ -{ CPUFUNC(op_413a_0), 0, 16698 }, /* CHK.L (d16,PC),Dn */ -{ CPUFUNC(op_413b_3), 0, 16699 }, /* CHK.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_413c_0), 0, 16700 }, /* CHK.L #.L,Dn */ -{ CPUFUNC(op_4180_0), 0, 16768 }, /* CHK.W Dn,Dn */ -{ CPUFUNC(op_4190_0), 0, 16784 }, /* CHK.W (An),Dn */ -{ CPUFUNC(op_4198_0), 0, 16792 }, /* CHK.W (An)+,Dn */ -{ CPUFUNC(op_41a0_0), 0, 16800 }, /* CHK.W -(An),Dn */ -{ CPUFUNC(op_41a8_0), 0, 16808 }, /* CHK.W (d16,An),Dn */ -{ CPUFUNC(op_41b0_3), 0, 16816 }, /* CHK.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_41b8_0), 0, 16824 }, /* CHK.W (xxx).W,Dn */ -{ CPUFUNC(op_41b9_0), 0, 16825 }, /* CHK.W (xxx).L,Dn */ -{ CPUFUNC(op_41ba_0), 0, 16826 }, /* CHK.W (d16,PC),Dn */ -{ CPUFUNC(op_41bb_3), 0, 16827 }, /* CHK.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_41bc_0), 0, 16828 }, /* CHK.W #.W,Dn */ -{ CPUFUNC_FF(op_41d0_0), 0, 16848 }, /* LEA.L (An),An */ -{ CPUFUNC_FF(op_41e8_0), 0, 16872 }, /* LEA.L (d16,An),An */ -{ CPUFUNC_FF(op_41f0_3), 0, 16880 }, /* LEA.L (d8,An,Xn),An */ -{ CPUFUNC_FF(op_41f8_0), 0, 16888 }, /* LEA.L (xxx).W,An */ -{ CPUFUNC_FF(op_41f9_0), 0, 16889 }, /* LEA.L (xxx).L,An */ -{ CPUFUNC_FF(op_41fa_0), 0, 16890 }, /* LEA.L (d16,PC),An */ -{ CPUFUNC_FF(op_41fb_3), 0, 16891 }, /* LEA.L (d8,PC,Xn),An */ -{ CPUFUNC(op_4200_0), 0, 16896 }, /* CLR.B Dn */ -{ CPUFUNC(op_4210_0), 0, 16912 }, /* CLR.B (An) */ -{ CPUFUNC(op_4218_0), 0, 16920 }, /* CLR.B (An)+ */ -{ CPUFUNC(op_4220_0), 0, 16928 }, /* CLR.B -(An) */ -{ CPUFUNC(op_4228_0), 0, 16936 }, /* CLR.B (d16,An) */ -{ CPUFUNC(op_4230_3), 0, 16944 }, /* CLR.B (d8,An,Xn) */ -{ CPUFUNC(op_4238_0), 0, 16952 }, /* CLR.B (xxx).W */ -{ CPUFUNC(op_4239_0), 0, 16953 }, /* CLR.B (xxx).L */ -{ CPUFUNC(op_4240_0), 0, 16960 }, /* CLR.W Dn */ -{ CPUFUNC(op_4250_0), 0, 16976 }, /* CLR.W (An) */ -{ CPUFUNC(op_4258_0), 0, 16984 }, /* CLR.W (An)+ */ -{ CPUFUNC(op_4260_0), 0, 16992 }, /* CLR.W -(An) */ -{ CPUFUNC(op_4268_0), 0, 17000 }, /* CLR.W (d16,An) */ -{ CPUFUNC(op_4270_3), 0, 17008 }, /* CLR.W (d8,An,Xn) */ -{ CPUFUNC(op_4278_0), 0, 17016 }, /* CLR.W (xxx).W */ -{ CPUFUNC(op_4279_0), 0, 17017 }, /* CLR.W (xxx).L */ -{ CPUFUNC(op_4280_0), 0, 17024 }, /* CLR.L Dn */ -{ CPUFUNC(op_4290_0), 0, 17040 }, /* CLR.L (An) */ -{ CPUFUNC(op_4298_0), 0, 17048 }, /* CLR.L (An)+ */ -{ CPUFUNC(op_42a0_0), 0, 17056 }, /* CLR.L -(An) */ -{ CPUFUNC(op_42a8_0), 0, 17064 }, /* CLR.L (d16,An) */ -{ CPUFUNC(op_42b0_3), 0, 17072 }, /* CLR.L (d8,An,Xn) */ -{ CPUFUNC(op_42b8_0), 0, 17080 }, /* CLR.L (xxx).W */ -{ CPUFUNC(op_42b9_0), 0, 17081 }, /* CLR.L (xxx).L */ -{ CPUFUNC_FF(op_42c0_0), 0, 17088 }, /* MVSR2.B Dn */ -{ CPUFUNC_FF(op_42d0_0), 0, 17104 }, /* MVSR2.B (An) */ -{ CPUFUNC_FF(op_42d8_0), 0, 17112 }, /* MVSR2.B (An)+ */ -{ CPUFUNC_FF(op_42e0_0), 0, 17120 }, /* MVSR2.B -(An) */ -{ CPUFUNC_FF(op_42e8_0), 0, 17128 }, /* MVSR2.B (d16,An) */ -{ CPUFUNC_FF(op_42f0_3), 0, 17136 }, /* MVSR2.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_42f8_0), 0, 17144 }, /* MVSR2.B (xxx).W */ -{ CPUFUNC_FF(op_42f9_0), 0, 17145 }, /* MVSR2.B (xxx).L */ -{ CPUFUNC(op_4400_0), 0, 17408 }, /* NEG.B Dn */ -{ CPUFUNC(op_4410_0), 0, 17424 }, /* NEG.B (An) */ -{ CPUFUNC(op_4418_0), 0, 17432 }, /* NEG.B (An)+ */ -{ CPUFUNC(op_4420_0), 0, 17440 }, /* NEG.B -(An) */ -{ CPUFUNC(op_4428_0), 0, 17448 }, /* NEG.B (d16,An) */ -{ CPUFUNC(op_4430_3), 0, 17456 }, /* NEG.B (d8,An,Xn) */ -{ CPUFUNC(op_4438_0), 0, 17464 }, /* NEG.B (xxx).W */ -{ CPUFUNC(op_4439_0), 0, 17465 }, /* NEG.B (xxx).L */ -{ CPUFUNC(op_4440_0), 0, 17472 }, /* NEG.W Dn */ -{ CPUFUNC(op_4450_0), 0, 17488 }, /* NEG.W (An) */ -{ CPUFUNC(op_4458_0), 0, 17496 }, /* NEG.W (An)+ */ -{ CPUFUNC(op_4460_0), 0, 17504 }, /* NEG.W -(An) */ -{ CPUFUNC(op_4468_0), 0, 17512 }, /* NEG.W (d16,An) */ -{ CPUFUNC(op_4470_3), 0, 17520 }, /* NEG.W (d8,An,Xn) */ -{ CPUFUNC(op_4478_0), 0, 17528 }, /* NEG.W (xxx).W */ -{ CPUFUNC(op_4479_0), 0, 17529 }, /* NEG.W (xxx).L */ -{ CPUFUNC(op_4480_0), 0, 17536 }, /* NEG.L Dn */ -{ CPUFUNC(op_4490_0), 0, 17552 }, /* NEG.L (An) */ -{ CPUFUNC(op_4498_0), 0, 17560 }, /* NEG.L (An)+ */ -{ CPUFUNC(op_44a0_0), 0, 17568 }, /* NEG.L -(An) */ -{ CPUFUNC(op_44a8_0), 0, 17576 }, /* NEG.L (d16,An) */ -{ CPUFUNC(op_44b0_3), 0, 17584 }, /* NEG.L (d8,An,Xn) */ -{ CPUFUNC(op_44b8_0), 0, 17592 }, /* NEG.L (xxx).W */ -{ CPUFUNC(op_44b9_0), 0, 17593 }, /* NEG.L (xxx).L */ -{ CPUFUNC(op_44c0_0), 0, 17600 }, /* MV2SR.B Dn */ -{ CPUFUNC(op_44d0_0), 0, 17616 }, /* MV2SR.B (An) */ -{ CPUFUNC(op_44d8_0), 0, 17624 }, /* MV2SR.B (An)+ */ -{ CPUFUNC(op_44e0_0), 0, 17632 }, /* MV2SR.B -(An) */ -{ CPUFUNC(op_44e8_0), 0, 17640 }, /* MV2SR.B (d16,An) */ -{ CPUFUNC(op_44f0_3), 0, 17648 }, /* MV2SR.B (d8,An,Xn) */ -{ CPUFUNC(op_44f8_0), 0, 17656 }, /* MV2SR.B (xxx).W */ -{ CPUFUNC(op_44f9_0), 0, 17657 }, /* MV2SR.B (xxx).L */ -{ CPUFUNC(op_44fa_0), 0, 17658 }, /* MV2SR.B (d16,PC) */ -{ CPUFUNC(op_44fb_3), 0, 17659 }, /* MV2SR.B (d8,PC,Xn) */ -{ CPUFUNC(op_44fc_0), 0, 17660 }, /* MV2SR.B #.B */ -{ CPUFUNC(op_4600_0), 0, 17920 }, /* NOT.B Dn */ -{ CPUFUNC(op_4610_0), 0, 17936 }, /* NOT.B (An) */ -{ CPUFUNC(op_4618_0), 0, 17944 }, /* NOT.B (An)+ */ -{ CPUFUNC(op_4620_0), 0, 17952 }, /* NOT.B -(An) */ -{ CPUFUNC(op_4628_0), 0, 17960 }, /* NOT.B (d16,An) */ -{ CPUFUNC(op_4630_3), 0, 17968 }, /* NOT.B (d8,An,Xn) */ -{ CPUFUNC(op_4638_0), 0, 17976 }, /* NOT.B (xxx).W */ -{ CPUFUNC(op_4639_0), 0, 17977 }, /* NOT.B (xxx).L */ -{ CPUFUNC(op_4640_0), 0, 17984 }, /* NOT.W Dn */ -{ CPUFUNC(op_4650_0), 0, 18000 }, /* NOT.W (An) */ -{ CPUFUNC(op_4658_0), 0, 18008 }, /* NOT.W (An)+ */ -{ CPUFUNC(op_4660_0), 0, 18016 }, /* NOT.W -(An) */ -{ CPUFUNC(op_4668_0), 0, 18024 }, /* NOT.W (d16,An) */ -{ CPUFUNC(op_4670_3), 0, 18032 }, /* NOT.W (d8,An,Xn) */ -{ CPUFUNC(op_4678_0), 0, 18040 }, /* NOT.W (xxx).W */ -{ CPUFUNC(op_4679_0), 0, 18041 }, /* NOT.W (xxx).L */ -{ CPUFUNC(op_4680_0), 0, 18048 }, /* NOT.L Dn */ -{ CPUFUNC(op_4690_0), 0, 18064 }, /* NOT.L (An) */ -{ CPUFUNC(op_4698_0), 0, 18072 }, /* NOT.L (An)+ */ -{ CPUFUNC(op_46a0_0), 0, 18080 }, /* NOT.L -(An) */ -{ CPUFUNC(op_46a8_0), 0, 18088 }, /* NOT.L (d16,An) */ -{ CPUFUNC(op_46b0_3), 0, 18096 }, /* NOT.L (d8,An,Xn) */ -{ CPUFUNC(op_46b8_0), 0, 18104 }, /* NOT.L (xxx).W */ -{ CPUFUNC(op_46b9_0), 0, 18105 }, /* NOT.L (xxx).L */ -{ CPUFUNC(op_46c0_0), 0, 18112 }, /* MV2SR.W Dn */ -{ CPUFUNC(op_46d0_0), 0, 18128 }, /* MV2SR.W (An) */ -{ CPUFUNC(op_46d8_0), 0, 18136 }, /* MV2SR.W (An)+ */ -{ CPUFUNC(op_46e0_0), 0, 18144 }, /* MV2SR.W -(An) */ -{ CPUFUNC(op_46e8_0), 0, 18152 }, /* MV2SR.W (d16,An) */ -{ CPUFUNC(op_46f0_3), 0, 18160 }, /* MV2SR.W (d8,An,Xn) */ -{ CPUFUNC(op_46f8_0), 0, 18168 }, /* MV2SR.W (xxx).W */ -{ CPUFUNC(op_46f9_0), 0, 18169 }, /* MV2SR.W (xxx).L */ -{ CPUFUNC(op_46fa_0), 0, 18170 }, /* MV2SR.W (d16,PC) */ -{ CPUFUNC(op_46fb_3), 0, 18171 }, /* MV2SR.W (d8,PC,Xn) */ -{ CPUFUNC(op_46fc_0), 0, 18172 }, /* MV2SR.W #.W */ -{ CPUFUNC(op_4800_1), 0, 18432 }, /* NBCD.B Dn */ -{ CPUFUNC(op_4810_1), 0, 18448 }, /* NBCD.B (An) */ -{ CPUFUNC(op_4818_1), 0, 18456 }, /* NBCD.B (An)+ */ -{ CPUFUNC(op_4820_1), 0, 18464 }, /* NBCD.B -(An) */ -{ CPUFUNC(op_4828_1), 0, 18472 }, /* NBCD.B (d16,An) */ -{ CPUFUNC(op_4830_3), 0, 18480 }, /* NBCD.B (d8,An,Xn) */ -{ CPUFUNC(op_4838_1), 0, 18488 }, /* NBCD.B (xxx).W */ -{ CPUFUNC(op_4839_1), 0, 18489 }, /* NBCD.B (xxx).L */ -{ CPUFUNC(op_4840_0), 0, 18496 }, /* SWAP.W Dn */ -{ CPUFUNC_FF(op_4850_0), 0, 18512 }, /* PEA.L (An) */ -{ CPUFUNC_FF(op_4868_0), 0, 18536 }, /* PEA.L (d16,An) */ -{ CPUFUNC_FF(op_4870_3), 0, 18544 }, /* PEA.L (d8,An,Xn) */ -{ CPUFUNC_FF(op_4878_0), 0, 18552 }, /* PEA.L (xxx).W */ -{ CPUFUNC_FF(op_4879_0), 0, 18553 }, /* PEA.L (xxx).L */ -{ CPUFUNC_FF(op_487a_0), 0, 18554 }, /* PEA.L (d16,PC) */ -{ CPUFUNC_FF(op_487b_3), 0, 18555 }, /* PEA.L (d8,PC,Xn) */ -{ CPUFUNC(op_4880_0), 0, 18560 }, /* EXT.W Dn */ -{ CPUFUNC_FF(op_4890_0), 0, 18576 }, /* MVMLE.W #.W,(An) */ -{ CPUFUNC_FF(op_48a0_0), 0, 18592 }, /* MVMLE.W #.W,-(An) */ -{ CPUFUNC_FF(op_48a8_0), 0, 18600 }, /* MVMLE.W #.W,(d16,An) */ -{ CPUFUNC_FF(op_48b0_3), 0, 18608 }, /* MVMLE.W #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_48b8_0), 0, 18616 }, /* MVMLE.W #.W,(xxx).W */ -{ CPUFUNC_FF(op_48b9_0), 0, 18617 }, /* MVMLE.W #.W,(xxx).L */ -{ CPUFUNC(op_48c0_0), 0, 18624 }, /* EXT.L Dn */ -{ CPUFUNC_FF(op_48d0_0), 0, 18640 }, /* MVMLE.L #.W,(An) */ -{ CPUFUNC_FF(op_48e0_0), 0, 18656 }, /* MVMLE.L #.W,-(An) */ -{ CPUFUNC_FF(op_48e8_0), 0, 18664 }, /* MVMLE.L #.W,(d16,An) */ -{ CPUFUNC_FF(op_48f0_3), 0, 18672 }, /* MVMLE.L #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_48f8_0), 0, 18680 }, /* MVMLE.L #.W,(xxx).W */ -{ CPUFUNC_FF(op_48f9_0), 0, 18681 }, /* MVMLE.L #.W,(xxx).L */ -{ CPUFUNC(op_49c0_0), 0, 18880 }, /* EXT.B Dn */ -{ CPUFUNC(op_4a00_0), 0, 18944 }, /* TST.B Dn */ -{ CPUFUNC(op_4a10_0), 0, 18960 }, /* TST.B (An) */ -{ CPUFUNC(op_4a18_0), 0, 18968 }, /* TST.B (An)+ */ -{ CPUFUNC(op_4a20_0), 0, 18976 }, /* TST.B -(An) */ -{ CPUFUNC(op_4a28_0), 0, 18984 }, /* TST.B (d16,An) */ -{ CPUFUNC(op_4a30_3), 0, 18992 }, /* TST.B (d8,An,Xn) */ -{ CPUFUNC(op_4a38_0), 0, 19000 }, /* TST.B (xxx).W */ -{ CPUFUNC(op_4a39_0), 0, 19001 }, /* TST.B (xxx).L */ -{ CPUFUNC(op_4a3a_0), 0, 19002 }, /* TST.B (d16,PC) */ -{ CPUFUNC(op_4a3b_3), 0, 19003 }, /* TST.B (d8,PC,Xn) */ -{ CPUFUNC(op_4a3c_0), 0, 19004 }, /* TST.B #.B */ -{ CPUFUNC(op_4a40_0), 0, 19008 }, /* TST.W Dn */ -{ CPUFUNC(op_4a48_0), 0, 19016 }, /* TST.W An */ -{ CPUFUNC(op_4a50_0), 0, 19024 }, /* TST.W (An) */ -{ CPUFUNC(op_4a58_0), 0, 19032 }, /* TST.W (An)+ */ -{ CPUFUNC(op_4a60_0), 0, 19040 }, /* TST.W -(An) */ -{ CPUFUNC(op_4a68_0), 0, 19048 }, /* TST.W (d16,An) */ -{ CPUFUNC(op_4a70_3), 0, 19056 }, /* TST.W (d8,An,Xn) */ -{ CPUFUNC(op_4a78_0), 0, 19064 }, /* TST.W (xxx).W */ -{ CPUFUNC(op_4a79_0), 0, 19065 }, /* TST.W (xxx).L */ -{ CPUFUNC(op_4a7a_0), 0, 19066 }, /* TST.W (d16,PC) */ -{ CPUFUNC(op_4a7b_3), 0, 19067 }, /* TST.W (d8,PC,Xn) */ -{ CPUFUNC(op_4a7c_0), 0, 19068 }, /* TST.W #.W */ -{ CPUFUNC(op_4a80_0), 0, 19072 }, /* TST.L Dn */ -{ CPUFUNC(op_4a88_0), 0, 19080 }, /* TST.L An */ -{ CPUFUNC(op_4a90_0), 0, 19088 }, /* TST.L (An) */ -{ CPUFUNC(op_4a98_0), 0, 19096 }, /* TST.L (An)+ */ -{ CPUFUNC(op_4aa0_0), 0, 19104 }, /* TST.L -(An) */ -{ CPUFUNC(op_4aa8_0), 0, 19112 }, /* TST.L (d16,An) */ -{ CPUFUNC(op_4ab0_3), 0, 19120 }, /* TST.L (d8,An,Xn) */ -{ CPUFUNC(op_4ab8_0), 0, 19128 }, /* TST.L (xxx).W */ -{ CPUFUNC(op_4ab9_0), 0, 19129 }, /* TST.L (xxx).L */ -{ CPUFUNC(op_4aba_0), 0, 19130 }, /* TST.L (d16,PC) */ -{ CPUFUNC(op_4abb_3), 0, 19131 }, /* TST.L (d8,PC,Xn) */ -{ CPUFUNC(op_4abc_0), 0, 19132 }, /* TST.L #.L */ -{ CPUFUNC(op_4ac0_0), 0, 19136 }, /* TAS.B Dn */ -{ CPUFUNC(op_4ad0_0), 0, 19152 }, /* TAS.B (An) */ -{ CPUFUNC(op_4ad8_0), 0, 19160 }, /* TAS.B (An)+ */ -{ CPUFUNC(op_4ae0_0), 0, 19168 }, /* TAS.B -(An) */ -{ CPUFUNC(op_4ae8_0), 0, 19176 }, /* TAS.B (d16,An) */ -{ CPUFUNC(op_4af0_3), 0, 19184 }, /* TAS.B (d8,An,Xn) */ -{ CPUFUNC(op_4af8_0), 0, 19192 }, /* TAS.B (xxx).W */ -{ CPUFUNC(op_4af9_0), 0, 19193 }, /* TAS.B (xxx).L */ -{ CPUFUNC_FF(op_4c90_0), 0, 19600 }, /* MVMEL.W #.W,(An) */ -{ CPUFUNC_FF(op_4c98_0), 0, 19608 }, /* MVMEL.W #.W,(An)+ */ -{ CPUFUNC_FF(op_4ca8_0), 0, 19624 }, /* MVMEL.W #.W,(d16,An) */ -{ CPUFUNC_FF(op_4cb0_3), 0, 19632 }, /* MVMEL.W #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_4cb8_0), 0, 19640 }, /* MVMEL.W #.W,(xxx).W */ -{ CPUFUNC_FF(op_4cb9_0), 0, 19641 }, /* MVMEL.W #.W,(xxx).L */ -{ CPUFUNC_FF(op_4cba_0), 0, 19642 }, /* MVMEL.W #.W,(d16,PC) */ -{ CPUFUNC_FF(op_4cbb_3), 0, 19643 }, /* MVMEL.W #.W,(d8,PC,Xn) */ -{ CPUFUNC_FF(op_4cd0_0), 0, 19664 }, /* MVMEL.L #.W,(An) */ -{ CPUFUNC_FF(op_4cd8_0), 0, 19672 }, /* MVMEL.L #.W,(An)+ */ -{ CPUFUNC_FF(op_4ce8_0), 0, 19688 }, /* MVMEL.L #.W,(d16,An) */ -{ CPUFUNC_FF(op_4cf0_3), 0, 19696 }, /* MVMEL.L #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_4cf8_0), 0, 19704 }, /* MVMEL.L #.W,(xxx).W */ -{ CPUFUNC_FF(op_4cf9_0), 0, 19705 }, /* MVMEL.L #.W,(xxx).L */ -{ CPUFUNC_FF(op_4cfa_0), 0, 19706 }, /* MVMEL.L #.W,(d16,PC) */ -{ CPUFUNC_FF(op_4cfb_3), 0, 19707 }, /* MVMEL.L #.W,(d8,PC,Xn) */ -{ CPUFUNC_FF(op_4e40_0), 0, 20032 }, /* TRAP.L # */ -{ CPUFUNC_FF(op_4e50_0), 0, 20048 }, /* LINK.W An,#.W */ -{ CPUFUNC_FF(op_4e58_0), 0, 20056 }, /* UNLK.L An */ -{ CPUFUNC_FF(op_4e60_0), 0, 20064 }, /* MVR2USP.L An */ -{ CPUFUNC_FF(op_4e68_0), 0, 20072 }, /* MVUSP2R.L An */ -{ CPUFUNC_FF(op_4e70_0), 0, 20080 }, /* RESET.L */ -{ CPUFUNC_FF(op_4e71_0), 0, 20081 }, /* NOP.L */ -{ CPUFUNC(op_4e72_0), 0, 20082 }, /* STOP.L #.W */ -{ CPUFUNC(op_4e73_0), 0, 20083 }, /* RTE.L */ -{ CPUFUNC_FF(op_4e74_0), 0, 20084 }, /* RTD.L #.W */ -{ CPUFUNC_FF(op_4e75_0), 0, 20085 }, /* RTS.L */ -{ CPUFUNC_FF(op_4e76_0), 0, 20086 }, /* TRAPV.L */ -{ CPUFUNC(op_4e77_0), 0, 20087 }, /* RTR.L */ -{ CPUFUNC_FF(op_4e7a_0), 0, 20090 }, /* MOVEC2.L #.W */ -{ CPUFUNC_FF(op_4e7b_0), 0, 20091 }, /* MOVE2C.L #.W */ -{ CPUFUNC_FF(op_4e90_0), 0, 20112 }, /* JSR.L (An) */ -{ CPUFUNC_FF(op_4ea8_0), 0, 20136 }, /* JSR.L (d16,An) */ -{ CPUFUNC_FF(op_4eb0_3), 0, 20144 }, /* JSR.L (d8,An,Xn) */ -{ CPUFUNC_FF(op_4eb8_0), 0, 20152 }, /* JSR.L (xxx).W */ -{ CPUFUNC_FF(op_4eb9_0), 0, 20153 }, /* JSR.L (xxx).L */ -{ CPUFUNC_FF(op_4eba_0), 0, 20154 }, /* JSR.L (d16,PC) */ -{ CPUFUNC_FF(op_4ebb_3), 0, 20155 }, /* JSR.L (d8,PC,Xn) */ -{ CPUFUNC_FF(op_4ed0_0), 0, 20176 }, /* JMP.L (An) */ -{ CPUFUNC_FF(op_4ee8_0), 0, 20200 }, /* JMP.L (d16,An) */ -{ CPUFUNC_FF(op_4ef0_3), 0, 20208 }, /* JMP.L (d8,An,Xn) */ -{ CPUFUNC_FF(op_4ef8_0), 0, 20216 }, /* JMP.L (xxx).W */ -{ CPUFUNC_FF(op_4ef9_0), 0, 20217 }, /* JMP.L (xxx).L */ -{ CPUFUNC_FF(op_4efa_0), 0, 20218 }, /* JMP.L (d16,PC) */ -{ CPUFUNC_FF(op_4efb_3), 0, 20219 }, /* JMP.L (d8,PC,Xn) */ -{ CPUFUNC(op_5000_0), 0, 20480 }, /* ADD.B #,Dn */ -{ CPUFUNC(op_5010_0), 0, 20496 }, /* ADD.B #,(An) */ -{ CPUFUNC(op_5018_0), 0, 20504 }, /* ADD.B #,(An)+ */ -{ CPUFUNC(op_5020_0), 0, 20512 }, /* ADD.B #,-(An) */ -{ CPUFUNC(op_5028_0), 0, 20520 }, /* ADD.B #,(d16,An) */ -{ CPUFUNC(op_5030_3), 0, 20528 }, /* ADD.B #,(d8,An,Xn) */ -{ CPUFUNC(op_5038_0), 0, 20536 }, /* ADD.B #,(xxx).W */ -{ CPUFUNC(op_5039_0), 0, 20537 }, /* ADD.B #,(xxx).L */ -{ CPUFUNC(op_5040_0), 0, 20544 }, /* ADD.W #,Dn */ -{ CPUFUNC_FF(op_5048_0), 0, 20552 }, /* ADDA.W #,An */ -{ CPUFUNC(op_5050_0), 0, 20560 }, /* ADD.W #,(An) */ -{ CPUFUNC(op_5058_0), 0, 20568 }, /* ADD.W #,(An)+ */ -{ CPUFUNC(op_5060_0), 0, 20576 }, /* ADD.W #,-(An) */ -{ CPUFUNC(op_5068_0), 0, 20584 }, /* ADD.W #,(d16,An) */ -{ CPUFUNC(op_5070_3), 0, 20592 }, /* ADD.W #,(d8,An,Xn) */ -{ CPUFUNC(op_5078_0), 0, 20600 }, /* ADD.W #,(xxx).W */ -{ CPUFUNC(op_5079_0), 0, 20601 }, /* ADD.W #,(xxx).L */ -{ CPUFUNC(op_5080_0), 0, 20608 }, /* ADD.L #,Dn */ -{ CPUFUNC_FF(op_5088_0), 0, 20616 }, /* ADDA.L #,An */ -{ CPUFUNC(op_5090_0), 0, 20624 }, /* ADD.L #,(An) */ -{ CPUFUNC(op_5098_0), 0, 20632 }, /* ADD.L #,(An)+ */ -{ CPUFUNC(op_50a0_0), 0, 20640 }, /* ADD.L #,-(An) */ -{ CPUFUNC(op_50a8_0), 0, 20648 }, /* ADD.L #,(d16,An) */ -{ CPUFUNC(op_50b0_3), 0, 20656 }, /* ADD.L #,(d8,An,Xn) */ -{ CPUFUNC(op_50b8_0), 0, 20664 }, /* ADD.L #,(xxx).W */ -{ CPUFUNC(op_50b9_0), 0, 20665 }, /* ADD.L #,(xxx).L */ -{ CPUFUNC_FF(op_50c0_0), 0, 20672 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_50c8_0), 0, 20680 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_50d0_0), 0, 20688 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_50d8_0), 0, 20696 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_50e0_0), 0, 20704 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_50e8_0), 0, 20712 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_50f0_3), 0, 20720 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_50f8_0), 0, 20728 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_50f9_0), 0, 20729 }, /* Scc.B (xxx).L */ -{ CPUFUNC(op_5100_0), 0, 20736 }, /* SUB.B #,Dn */ -{ CPUFUNC(op_5110_0), 0, 20752 }, /* SUB.B #,(An) */ -{ CPUFUNC(op_5118_0), 0, 20760 }, /* SUB.B #,(An)+ */ -{ CPUFUNC(op_5120_0), 0, 20768 }, /* SUB.B #,-(An) */ -{ CPUFUNC(op_5128_0), 0, 20776 }, /* SUB.B #,(d16,An) */ -{ CPUFUNC(op_5130_3), 0, 20784 }, /* SUB.B #,(d8,An,Xn) */ -{ CPUFUNC(op_5138_0), 0, 20792 }, /* SUB.B #,(xxx).W */ -{ CPUFUNC(op_5139_0), 0, 20793 }, /* SUB.B #,(xxx).L */ -{ CPUFUNC(op_5140_0), 0, 20800 }, /* SUB.W #,Dn */ -{ CPUFUNC_FF(op_5148_0), 0, 20808 }, /* SUBA.W #,An */ -{ CPUFUNC(op_5150_0), 0, 20816 }, /* SUB.W #,(An) */ -{ CPUFUNC(op_5158_0), 0, 20824 }, /* SUB.W #,(An)+ */ -{ CPUFUNC(op_5160_0), 0, 20832 }, /* SUB.W #,-(An) */ -{ CPUFUNC(op_5168_0), 0, 20840 }, /* SUB.W #,(d16,An) */ -{ CPUFUNC(op_5170_3), 0, 20848 }, /* SUB.W #,(d8,An,Xn) */ -{ CPUFUNC(op_5178_0), 0, 20856 }, /* SUB.W #,(xxx).W */ -{ CPUFUNC(op_5179_0), 0, 20857 }, /* SUB.W #,(xxx).L */ -{ CPUFUNC(op_5180_0), 0, 20864 }, /* SUB.L #,Dn */ -{ CPUFUNC_FF(op_5188_0), 0, 20872 }, /* SUBA.L #,An */ -{ CPUFUNC(op_5190_0), 0, 20880 }, /* SUB.L #,(An) */ -{ CPUFUNC(op_5198_0), 0, 20888 }, /* SUB.L #,(An)+ */ -{ CPUFUNC(op_51a0_0), 0, 20896 }, /* SUB.L #,-(An) */ -{ CPUFUNC(op_51a8_0), 0, 20904 }, /* SUB.L #,(d16,An) */ -{ CPUFUNC(op_51b0_3), 0, 20912 }, /* SUB.L #,(d8,An,Xn) */ -{ CPUFUNC(op_51b8_0), 0, 20920 }, /* SUB.L #,(xxx).W */ -{ CPUFUNC(op_51b9_0), 0, 20921 }, /* SUB.L #,(xxx).L */ -{ CPUFUNC_FF(op_51c0_0), 0, 20928 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_51c8_0), 0, 20936 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_51d0_0), 0, 20944 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_51d8_0), 0, 20952 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_51e0_0), 0, 20960 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_51e8_0), 0, 20968 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_51f0_3), 0, 20976 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_51f8_0), 0, 20984 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_51f9_0), 0, 20985 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_52c0_0), 0, 21184 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_52c8_0), 0, 21192 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_52d0_0), 0, 21200 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_52d8_0), 0, 21208 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_52e0_0), 0, 21216 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_52e8_0), 0, 21224 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_52f0_3), 0, 21232 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_52f8_0), 0, 21240 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_52f9_0), 0, 21241 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_53c0_0), 0, 21440 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_53c8_0), 0, 21448 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_53d0_0), 0, 21456 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_53d8_0), 0, 21464 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_53e0_0), 0, 21472 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_53e8_0), 0, 21480 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_53f0_3), 0, 21488 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_53f8_0), 0, 21496 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_53f9_0), 0, 21497 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_54c0_0), 0, 21696 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_54c8_0), 0, 21704 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_54d0_0), 0, 21712 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_54d8_0), 0, 21720 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_54e0_0), 0, 21728 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_54e8_0), 0, 21736 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_54f0_3), 0, 21744 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_54f8_0), 0, 21752 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_54f9_0), 0, 21753 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_55c0_0), 0, 21952 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_55c8_0), 0, 21960 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_55d0_0), 0, 21968 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_55d8_0), 0, 21976 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_55e0_0), 0, 21984 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_55e8_0), 0, 21992 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_55f0_3), 0, 22000 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_55f8_0), 0, 22008 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_55f9_0), 0, 22009 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_56c0_0), 0, 22208 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_56c8_0), 0, 22216 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_56d0_0), 0, 22224 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_56d8_0), 0, 22232 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_56e0_0), 0, 22240 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_56e8_0), 0, 22248 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_56f0_3), 0, 22256 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_56f8_0), 0, 22264 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_56f9_0), 0, 22265 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_57c0_0), 0, 22464 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_57c8_0), 0, 22472 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_57d0_0), 0, 22480 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_57d8_0), 0, 22488 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_57e0_0), 0, 22496 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_57e8_0), 0, 22504 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_57f0_3), 0, 22512 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_57f8_0), 0, 22520 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_57f9_0), 0, 22521 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_58c0_0), 0, 22720 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_58c8_0), 0, 22728 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_58d0_0), 0, 22736 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_58d8_0), 0, 22744 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_58e0_0), 0, 22752 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_58e8_0), 0, 22760 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_58f0_3), 0, 22768 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_58f8_0), 0, 22776 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_58f9_0), 0, 22777 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_59c0_0), 0, 22976 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_59c8_0), 0, 22984 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_59d0_0), 0, 22992 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_59d8_0), 0, 23000 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_59e0_0), 0, 23008 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_59e8_0), 0, 23016 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_59f0_3), 0, 23024 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_59f8_0), 0, 23032 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_59f9_0), 0, 23033 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_5ac0_0), 0, 23232 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_5ac8_0), 0, 23240 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_5ad0_0), 0, 23248 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_5ad8_0), 0, 23256 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_5ae0_0), 0, 23264 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_5ae8_0), 0, 23272 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_5af0_3), 0, 23280 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_5af8_0), 0, 23288 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_5af9_0), 0, 23289 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_5bc0_0), 0, 23488 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_5bc8_0), 0, 23496 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_5bd0_0), 0, 23504 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_5bd8_0), 0, 23512 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_5be0_0), 0, 23520 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_5be8_0), 0, 23528 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_5bf0_3), 0, 23536 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_5bf8_0), 0, 23544 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_5bf9_0), 0, 23545 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_5cc0_0), 0, 23744 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_5cc8_0), 0, 23752 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_5cd0_0), 0, 23760 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_5cd8_0), 0, 23768 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_5ce0_0), 0, 23776 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_5ce8_0), 0, 23784 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_5cf0_3), 0, 23792 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_5cf8_0), 0, 23800 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_5cf9_0), 0, 23801 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_5dc0_0), 0, 24000 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_5dc8_0), 0, 24008 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_5dd0_0), 0, 24016 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_5dd8_0), 0, 24024 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_5de0_0), 0, 24032 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_5de8_0), 0, 24040 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_5df0_3), 0, 24048 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_5df8_0), 0, 24056 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_5df9_0), 0, 24057 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_5ec0_0), 0, 24256 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_5ec8_0), 0, 24264 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_5ed0_0), 0, 24272 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_5ed8_0), 0, 24280 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_5ee0_0), 0, 24288 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_5ee8_0), 0, 24296 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_5ef0_3), 0, 24304 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_5ef8_0), 0, 24312 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_5ef9_0), 0, 24313 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_5fc0_0), 0, 24512 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_5fc8_0), 0, 24520 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_5fd0_0), 0, 24528 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_5fd8_0), 0, 24536 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_5fe0_0), 0, 24544 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_5fe8_0), 0, 24552 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_5ff0_3), 0, 24560 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_5ff8_0), 0, 24568 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_5ff9_0), 0, 24569 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_6000_0), 0, 24576 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6001_0), 0, 24577 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_60ff_3), 0, 24831 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6100_0), 0, 24832 }, /* BSR.W #.W */ -{ CPUFUNC_FF(op_6101_0), 0, 24833 }, /* BSR.B # */ -{ CPUFUNC_FF(op_61ff_0), 0, 25087 }, /* BSR.L #.L */ -{ CPUFUNC_FF(op_6200_0), 0, 25088 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6201_0), 0, 25089 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_62ff_3), 0, 25343 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6300_0), 0, 25344 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6301_0), 0, 25345 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_63ff_3), 0, 25599 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6400_0), 0, 25600 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6401_0), 0, 25601 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_64ff_3), 0, 25855 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6500_0), 0, 25856 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6501_0), 0, 25857 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_65ff_3), 0, 26111 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6600_0), 0, 26112 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6601_0), 0, 26113 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_66ff_3), 0, 26367 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6700_0), 0, 26368 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6701_0), 0, 26369 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_67ff_3), 0, 26623 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6800_0), 0, 26624 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6801_0), 0, 26625 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_68ff_3), 0, 26879 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6900_0), 0, 26880 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6901_0), 0, 26881 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_69ff_3), 0, 27135 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6a00_0), 0, 27136 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6a01_0), 0, 27137 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_6aff_3), 0, 27391 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6b00_0), 0, 27392 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6b01_0), 0, 27393 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_6bff_3), 0, 27647 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6c00_0), 0, 27648 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6c01_0), 0, 27649 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_6cff_3), 0, 27903 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6d00_0), 0, 27904 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6d01_0), 0, 27905 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_6dff_3), 0, 28159 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6e00_0), 0, 28160 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6e01_0), 0, 28161 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_6eff_3), 0, 28415 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6f00_0), 0, 28416 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6f01_0), 0, 28417 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_6fff_3), 0, 28671 }, /* Bcc.L #.L */ -{ CPUFUNC(op_7000_0), 0, 28672 }, /* MOVE.L #,Dn */ -{ CPUFUNC_FF(op_7100_0), 0, 28928 }, /* EMULOP_RETURN.L */ -{ CPUFUNC_FF(op_7101_0), 0, 28929 }, /* EMULOP.L # */ -{ CPUFUNC(op_8000_0), 0, 32768 }, /* OR.B Dn,Dn */ -{ CPUFUNC(op_8010_0), 0, 32784 }, /* OR.B (An),Dn */ -{ CPUFUNC(op_8018_0), 0, 32792 }, /* OR.B (An)+,Dn */ -{ CPUFUNC(op_8020_0), 0, 32800 }, /* OR.B -(An),Dn */ -{ CPUFUNC(op_8028_0), 0, 32808 }, /* OR.B (d16,An),Dn */ -{ CPUFUNC(op_8030_3), 0, 32816 }, /* OR.B (d8,An,Xn),Dn */ -{ CPUFUNC(op_8038_0), 0, 32824 }, /* OR.B (xxx).W,Dn */ -{ CPUFUNC(op_8039_0), 0, 32825 }, /* OR.B (xxx).L,Dn */ -{ CPUFUNC(op_803a_0), 0, 32826 }, /* OR.B (d16,PC),Dn */ -{ CPUFUNC(op_803b_3), 0, 32827 }, /* OR.B (d8,PC,Xn),Dn */ -{ CPUFUNC(op_803c_0), 0, 32828 }, /* OR.B #.B,Dn */ -{ CPUFUNC(op_8040_0), 0, 32832 }, /* OR.W Dn,Dn */ -{ CPUFUNC(op_8050_0), 0, 32848 }, /* OR.W (An),Dn */ -{ CPUFUNC(op_8058_0), 0, 32856 }, /* OR.W (An)+,Dn */ -{ CPUFUNC(op_8060_0), 0, 32864 }, /* OR.W -(An),Dn */ -{ CPUFUNC(op_8068_0), 0, 32872 }, /* OR.W (d16,An),Dn */ -{ CPUFUNC(op_8070_3), 0, 32880 }, /* OR.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_8078_0), 0, 32888 }, /* OR.W (xxx).W,Dn */ -{ CPUFUNC(op_8079_0), 0, 32889 }, /* OR.W (xxx).L,Dn */ -{ CPUFUNC(op_807a_0), 0, 32890 }, /* OR.W (d16,PC),Dn */ -{ CPUFUNC(op_807b_3), 0, 32891 }, /* OR.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_807c_0), 0, 32892 }, /* OR.W #.W,Dn */ -{ CPUFUNC(op_8080_0), 0, 32896 }, /* OR.L Dn,Dn */ -{ CPUFUNC(op_8090_0), 0, 32912 }, /* OR.L (An),Dn */ -{ CPUFUNC(op_8098_0), 0, 32920 }, /* OR.L (An)+,Dn */ -{ CPUFUNC(op_80a0_0), 0, 32928 }, /* OR.L -(An),Dn */ -{ CPUFUNC(op_80a8_0), 0, 32936 }, /* OR.L (d16,An),Dn */ -{ CPUFUNC(op_80b0_3), 0, 32944 }, /* OR.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_80b8_0), 0, 32952 }, /* OR.L (xxx).W,Dn */ -{ CPUFUNC(op_80b9_0), 0, 32953 }, /* OR.L (xxx).L,Dn */ -{ CPUFUNC(op_80ba_0), 0, 32954 }, /* OR.L (d16,PC),Dn */ -{ CPUFUNC(op_80bb_3), 0, 32955 }, /* OR.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_80bc_0), 0, 32956 }, /* OR.L #.L,Dn */ -{ CPUFUNC(op_80c0_0), 0, 32960 }, /* DIVU.W Dn,Dn */ -{ CPUFUNC(op_80d0_0), 0, 32976 }, /* DIVU.W (An),Dn */ -{ CPUFUNC(op_80d8_0), 0, 32984 }, /* DIVU.W (An)+,Dn */ -{ CPUFUNC(op_80e0_0), 0, 32992 }, /* DIVU.W -(An),Dn */ -{ CPUFUNC(op_80e8_0), 0, 33000 }, /* DIVU.W (d16,An),Dn */ -{ CPUFUNC(op_80f0_3), 0, 33008 }, /* DIVU.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_80f8_0), 0, 33016 }, /* DIVU.W (xxx).W,Dn */ -{ CPUFUNC(op_80f9_0), 0, 33017 }, /* DIVU.W (xxx).L,Dn */ -{ CPUFUNC(op_80fa_0), 0, 33018 }, /* DIVU.W (d16,PC),Dn */ -{ CPUFUNC(op_80fb_3), 0, 33019 }, /* DIVU.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_80fc_0), 0, 33020 }, /* DIVU.W #.W,Dn */ -{ CPUFUNC(op_8100_1), 0, 33024 }, /* SBCD.B Dn,Dn */ -{ CPUFUNC(op_8108_1), 0, 33032 }, /* SBCD.B -(An),-(An) */ -{ CPUFUNC(op_8110_0), 0, 33040 }, /* OR.B Dn,(An) */ -{ CPUFUNC(op_8118_0), 0, 33048 }, /* OR.B Dn,(An)+ */ -{ CPUFUNC(op_8120_0), 0, 33056 }, /* OR.B Dn,-(An) */ -{ CPUFUNC(op_8128_0), 0, 33064 }, /* OR.B Dn,(d16,An) */ -{ CPUFUNC(op_8130_3), 0, 33072 }, /* OR.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_8138_0), 0, 33080 }, /* OR.B Dn,(xxx).W */ -{ CPUFUNC(op_8139_0), 0, 33081 }, /* OR.B Dn,(xxx).L */ -{ CPUFUNC(op_8150_0), 0, 33104 }, /* OR.W Dn,(An) */ -{ CPUFUNC(op_8158_0), 0, 33112 }, /* OR.W Dn,(An)+ */ -{ CPUFUNC(op_8160_0), 0, 33120 }, /* OR.W Dn,-(An) */ -{ CPUFUNC(op_8168_0), 0, 33128 }, /* OR.W Dn,(d16,An) */ -{ CPUFUNC(op_8170_3), 0, 33136 }, /* OR.W Dn,(d8,An,Xn) */ -{ CPUFUNC(op_8178_0), 0, 33144 }, /* OR.W Dn,(xxx).W */ -{ CPUFUNC(op_8179_0), 0, 33145 }, /* OR.W Dn,(xxx).L */ -{ CPUFUNC(op_8190_0), 0, 33168 }, /* OR.L Dn,(An) */ -{ CPUFUNC(op_8198_0), 0, 33176 }, /* OR.L Dn,(An)+ */ -{ CPUFUNC(op_81a0_0), 0, 33184 }, /* OR.L Dn,-(An) */ -{ CPUFUNC(op_81a8_0), 0, 33192 }, /* OR.L Dn,(d16,An) */ -{ CPUFUNC(op_81b0_3), 0, 33200 }, /* OR.L Dn,(d8,An,Xn) */ -{ CPUFUNC(op_81b8_0), 0, 33208 }, /* OR.L Dn,(xxx).W */ -{ CPUFUNC(op_81b9_0), 0, 33209 }, /* OR.L Dn,(xxx).L */ -{ CPUFUNC(op_81c0_0), 0, 33216 }, /* DIVS.W Dn,Dn */ -{ CPUFUNC(op_81d0_0), 0, 33232 }, /* DIVS.W (An),Dn */ -{ CPUFUNC(op_81d8_0), 0, 33240 }, /* DIVS.W (An)+,Dn */ -{ CPUFUNC(op_81e0_0), 0, 33248 }, /* DIVS.W -(An),Dn */ -{ CPUFUNC(op_81e8_0), 0, 33256 }, /* DIVS.W (d16,An),Dn */ -{ CPUFUNC(op_81f0_3), 0, 33264 }, /* DIVS.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_81f8_0), 0, 33272 }, /* DIVS.W (xxx).W,Dn */ -{ CPUFUNC(op_81f9_0), 0, 33273 }, /* DIVS.W (xxx).L,Dn */ -{ CPUFUNC(op_81fa_0), 0, 33274 }, /* DIVS.W (d16,PC),Dn */ -{ CPUFUNC(op_81fb_3), 0, 33275 }, /* DIVS.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_81fc_0), 0, 33276 }, /* DIVS.W #.W,Dn */ -{ CPUFUNC(op_9000_0), 0, 36864 }, /* SUB.B Dn,Dn */ -{ CPUFUNC(op_9010_0), 0, 36880 }, /* SUB.B (An),Dn */ -{ CPUFUNC(op_9018_0), 0, 36888 }, /* SUB.B (An)+,Dn */ -{ CPUFUNC(op_9020_0), 0, 36896 }, /* SUB.B -(An),Dn */ -{ CPUFUNC(op_9028_0), 0, 36904 }, /* SUB.B (d16,An),Dn */ -{ CPUFUNC(op_9030_3), 0, 36912 }, /* SUB.B (d8,An,Xn),Dn */ -{ CPUFUNC(op_9038_0), 0, 36920 }, /* SUB.B (xxx).W,Dn */ -{ CPUFUNC(op_9039_0), 0, 36921 }, /* SUB.B (xxx).L,Dn */ -{ CPUFUNC(op_903a_0), 0, 36922 }, /* SUB.B (d16,PC),Dn */ -{ CPUFUNC(op_903b_3), 0, 36923 }, /* SUB.B (d8,PC,Xn),Dn */ -{ CPUFUNC(op_903c_0), 0, 36924 }, /* SUB.B #.B,Dn */ -{ CPUFUNC(op_9040_0), 0, 36928 }, /* SUB.W Dn,Dn */ -{ CPUFUNC(op_9048_0), 0, 36936 }, /* SUB.W An,Dn */ -{ CPUFUNC(op_9050_0), 0, 36944 }, /* SUB.W (An),Dn */ -{ CPUFUNC(op_9058_0), 0, 36952 }, /* SUB.W (An)+,Dn */ -{ CPUFUNC(op_9060_0), 0, 36960 }, /* SUB.W -(An),Dn */ -{ CPUFUNC(op_9068_0), 0, 36968 }, /* SUB.W (d16,An),Dn */ -{ CPUFUNC(op_9070_3), 0, 36976 }, /* SUB.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_9078_0), 0, 36984 }, /* SUB.W (xxx).W,Dn */ -{ CPUFUNC(op_9079_0), 0, 36985 }, /* SUB.W (xxx).L,Dn */ -{ CPUFUNC(op_907a_0), 0, 36986 }, /* SUB.W (d16,PC),Dn */ -{ CPUFUNC(op_907b_3), 0, 36987 }, /* SUB.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_907c_0), 0, 36988 }, /* SUB.W #.W,Dn */ -{ CPUFUNC(op_9080_0), 0, 36992 }, /* SUB.L Dn,Dn */ -{ CPUFUNC(op_9088_0), 0, 37000 }, /* SUB.L An,Dn */ -{ CPUFUNC(op_9090_0), 0, 37008 }, /* SUB.L (An),Dn */ -{ CPUFUNC(op_9098_0), 0, 37016 }, /* SUB.L (An)+,Dn */ -{ CPUFUNC(op_90a0_0), 0, 37024 }, /* SUB.L -(An),Dn */ -{ CPUFUNC(op_90a8_0), 0, 37032 }, /* SUB.L (d16,An),Dn */ -{ CPUFUNC(op_90b0_3), 0, 37040 }, /* SUB.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_90b8_0), 0, 37048 }, /* SUB.L (xxx).W,Dn */ -{ CPUFUNC(op_90b9_0), 0, 37049 }, /* SUB.L (xxx).L,Dn */ -{ CPUFUNC(op_90ba_0), 0, 37050 }, /* SUB.L (d16,PC),Dn */ -{ CPUFUNC(op_90bb_3), 0, 37051 }, /* SUB.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_90bc_0), 0, 37052 }, /* SUB.L #.L,Dn */ -{ CPUFUNC_FF(op_90c0_0), 0, 37056 }, /* SUBA.W Dn,An */ -{ CPUFUNC_FF(op_90c8_0), 0, 37064 }, /* SUBA.W An,An */ -{ CPUFUNC_FF(op_90d0_0), 0, 37072 }, /* SUBA.W (An),An */ -{ CPUFUNC_FF(op_90d8_0), 0, 37080 }, /* SUBA.W (An)+,An */ -{ CPUFUNC_FF(op_90e0_0), 0, 37088 }, /* SUBA.W -(An),An */ -{ CPUFUNC_FF(op_90e8_0), 0, 37096 }, /* SUBA.W (d16,An),An */ -{ CPUFUNC_FF(op_90f0_3), 0, 37104 }, /* SUBA.W (d8,An,Xn),An */ -{ CPUFUNC_FF(op_90f8_0), 0, 37112 }, /* SUBA.W (xxx).W,An */ -{ CPUFUNC_FF(op_90f9_0), 0, 37113 }, /* SUBA.W (xxx).L,An */ -{ CPUFUNC_FF(op_90fa_0), 0, 37114 }, /* SUBA.W (d16,PC),An */ -{ CPUFUNC_FF(op_90fb_3), 0, 37115 }, /* SUBA.W (d8,PC,Xn),An */ -{ CPUFUNC_FF(op_90fc_0), 0, 37116 }, /* SUBA.W #.W,An */ -{ CPUFUNC(op_9100_0), 0, 37120 }, /* SUBX.B Dn,Dn */ -{ CPUFUNC(op_9108_0), 0, 37128 }, /* SUBX.B -(An),-(An) */ -{ CPUFUNC(op_9110_0), 0, 37136 }, /* SUB.B Dn,(An) */ -{ CPUFUNC(op_9118_0), 0, 37144 }, /* SUB.B Dn,(An)+ */ -{ CPUFUNC(op_9120_0), 0, 37152 }, /* SUB.B Dn,-(An) */ -{ CPUFUNC(op_9128_0), 0, 37160 }, /* SUB.B Dn,(d16,An) */ -{ CPUFUNC(op_9130_3), 0, 37168 }, /* SUB.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_9138_0), 0, 37176 }, /* SUB.B Dn,(xxx).W */ -{ CPUFUNC(op_9139_0), 0, 37177 }, /* SUB.B Dn,(xxx).L */ -{ CPUFUNC(op_9140_0), 0, 37184 }, /* SUBX.W Dn,Dn */ -{ CPUFUNC(op_9148_0), 0, 37192 }, /* SUBX.W -(An),-(An) */ -{ CPUFUNC(op_9150_0), 0, 37200 }, /* SUB.W Dn,(An) */ -{ CPUFUNC(op_9158_0), 0, 37208 }, /* SUB.W Dn,(An)+ */ -{ CPUFUNC(op_9160_0), 0, 37216 }, /* SUB.W Dn,-(An) */ -{ CPUFUNC(op_9168_0), 0, 37224 }, /* SUB.W Dn,(d16,An) */ -{ CPUFUNC(op_9170_3), 0, 37232 }, /* SUB.W Dn,(d8,An,Xn) */ -{ CPUFUNC(op_9178_0), 0, 37240 }, /* SUB.W Dn,(xxx).W */ -{ CPUFUNC(op_9179_0), 0, 37241 }, /* SUB.W Dn,(xxx).L */ -{ CPUFUNC(op_9180_0), 0, 37248 }, /* SUBX.L Dn,Dn */ -{ CPUFUNC(op_9188_0), 0, 37256 }, /* SUBX.L -(An),-(An) */ -{ CPUFUNC(op_9190_0), 0, 37264 }, /* SUB.L Dn,(An) */ -{ CPUFUNC(op_9198_0), 0, 37272 }, /* SUB.L Dn,(An)+ */ -{ CPUFUNC(op_91a0_0), 0, 37280 }, /* SUB.L Dn,-(An) */ -{ CPUFUNC(op_91a8_0), 0, 37288 }, /* SUB.L Dn,(d16,An) */ -{ CPUFUNC(op_91b0_3), 0, 37296 }, /* SUB.L Dn,(d8,An,Xn) */ -{ CPUFUNC(op_91b8_0), 0, 37304 }, /* SUB.L Dn,(xxx).W */ -{ CPUFUNC(op_91b9_0), 0, 37305 }, /* SUB.L Dn,(xxx).L */ -{ CPUFUNC_FF(op_91c0_0), 0, 37312 }, /* SUBA.L Dn,An */ -{ CPUFUNC_FF(op_91c8_0), 0, 37320 }, /* SUBA.L An,An */ -{ CPUFUNC_FF(op_91d0_0), 0, 37328 }, /* SUBA.L (An),An */ -{ CPUFUNC_FF(op_91d8_0), 0, 37336 }, /* SUBA.L (An)+,An */ -{ CPUFUNC_FF(op_91e0_0), 0, 37344 }, /* SUBA.L -(An),An */ -{ CPUFUNC_FF(op_91e8_0), 0, 37352 }, /* SUBA.L (d16,An),An */ -{ CPUFUNC_FF(op_91f0_3), 0, 37360 }, /* SUBA.L (d8,An,Xn),An */ -{ CPUFUNC_FF(op_91f8_0), 0, 37368 }, /* SUBA.L (xxx).W,An */ -{ CPUFUNC_FF(op_91f9_0), 0, 37369 }, /* SUBA.L (xxx).L,An */ -{ CPUFUNC_FF(op_91fa_0), 0, 37370 }, /* SUBA.L (d16,PC),An */ -{ CPUFUNC_FF(op_91fb_3), 0, 37371 }, /* SUBA.L (d8,PC,Xn),An */ -{ CPUFUNC_FF(op_91fc_0), 0, 37372 }, /* SUBA.L #.L,An */ -{ CPUFUNC(op_b000_0), 0, 45056 }, /* CMP.B Dn,Dn */ -{ CPUFUNC(op_b010_0), 0, 45072 }, /* CMP.B (An),Dn */ -{ CPUFUNC(op_b018_0), 0, 45080 }, /* CMP.B (An)+,Dn */ -{ CPUFUNC(op_b020_0), 0, 45088 }, /* CMP.B -(An),Dn */ -{ CPUFUNC(op_b028_0), 0, 45096 }, /* CMP.B (d16,An),Dn */ -{ CPUFUNC(op_b030_3), 0, 45104 }, /* CMP.B (d8,An,Xn),Dn */ -{ CPUFUNC(op_b038_0), 0, 45112 }, /* CMP.B (xxx).W,Dn */ -{ CPUFUNC(op_b039_0), 0, 45113 }, /* CMP.B (xxx).L,Dn */ -{ CPUFUNC(op_b03a_0), 0, 45114 }, /* CMP.B (d16,PC),Dn */ -{ CPUFUNC(op_b03b_3), 0, 45115 }, /* CMP.B (d8,PC,Xn),Dn */ -{ CPUFUNC(op_b03c_0), 0, 45116 }, /* CMP.B #.B,Dn */ -{ CPUFUNC(op_b040_0), 0, 45120 }, /* CMP.W Dn,Dn */ -{ CPUFUNC(op_b048_0), 0, 45128 }, /* CMP.W An,Dn */ -{ CPUFUNC(op_b050_0), 0, 45136 }, /* CMP.W (An),Dn */ -{ CPUFUNC(op_b058_0), 0, 45144 }, /* CMP.W (An)+,Dn */ -{ CPUFUNC(op_b060_0), 0, 45152 }, /* CMP.W -(An),Dn */ -{ CPUFUNC(op_b068_0), 0, 45160 }, /* CMP.W (d16,An),Dn */ -{ CPUFUNC(op_b070_3), 0, 45168 }, /* CMP.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_b078_0), 0, 45176 }, /* CMP.W (xxx).W,Dn */ -{ CPUFUNC(op_b079_0), 0, 45177 }, /* CMP.W (xxx).L,Dn */ -{ CPUFUNC(op_b07a_0), 0, 45178 }, /* CMP.W (d16,PC),Dn */ -{ CPUFUNC(op_b07b_3), 0, 45179 }, /* CMP.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_b07c_0), 0, 45180 }, /* CMP.W #.W,Dn */ -{ CPUFUNC(op_b080_0), 0, 45184 }, /* CMP.L Dn,Dn */ -{ CPUFUNC(op_b088_0), 0, 45192 }, /* CMP.L An,Dn */ -{ CPUFUNC(op_b090_0), 0, 45200 }, /* CMP.L (An),Dn */ -{ CPUFUNC(op_b098_0), 0, 45208 }, /* CMP.L (An)+,Dn */ -{ CPUFUNC(op_b0a0_0), 0, 45216 }, /* CMP.L -(An),Dn */ -{ CPUFUNC(op_b0a8_0), 0, 45224 }, /* CMP.L (d16,An),Dn */ -{ CPUFUNC(op_b0b0_3), 0, 45232 }, /* CMP.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_b0b8_0), 0, 45240 }, /* CMP.L (xxx).W,Dn */ -{ CPUFUNC(op_b0b9_0), 0, 45241 }, /* CMP.L (xxx).L,Dn */ -{ CPUFUNC(op_b0ba_0), 0, 45242 }, /* CMP.L (d16,PC),Dn */ -{ CPUFUNC(op_b0bb_3), 0, 45243 }, /* CMP.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_b0bc_0), 0, 45244 }, /* CMP.L #.L,Dn */ -{ CPUFUNC(op_b0c0_0), 0, 45248 }, /* CMPA.W Dn,An */ -{ CPUFUNC(op_b0c8_0), 0, 45256 }, /* CMPA.W An,An */ -{ CPUFUNC(op_b0d0_0), 0, 45264 }, /* CMPA.W (An),An */ -{ CPUFUNC(op_b0d8_0), 0, 45272 }, /* CMPA.W (An)+,An */ -{ CPUFUNC(op_b0e0_0), 0, 45280 }, /* CMPA.W -(An),An */ -{ CPUFUNC(op_b0e8_0), 0, 45288 }, /* CMPA.W (d16,An),An */ -{ CPUFUNC(op_b0f0_3), 0, 45296 }, /* CMPA.W (d8,An,Xn),An */ -{ CPUFUNC(op_b0f8_0), 0, 45304 }, /* CMPA.W (xxx).W,An */ -{ CPUFUNC(op_b0f9_0), 0, 45305 }, /* CMPA.W (xxx).L,An */ -{ CPUFUNC(op_b0fa_0), 0, 45306 }, /* CMPA.W (d16,PC),An */ -{ CPUFUNC(op_b0fb_3), 0, 45307 }, /* CMPA.W (d8,PC,Xn),An */ -{ CPUFUNC(op_b0fc_0), 0, 45308 }, /* CMPA.W #.W,An */ -{ CPUFUNC(op_b100_0), 0, 45312 }, /* EOR.B Dn,Dn */ -{ CPUFUNC(op_b108_0), 0, 45320 }, /* CMPM.B (An)+,(An)+ */ -{ CPUFUNC(op_b110_0), 0, 45328 }, /* EOR.B Dn,(An) */ -{ CPUFUNC(op_b118_0), 0, 45336 }, /* EOR.B Dn,(An)+ */ -{ CPUFUNC(op_b120_0), 0, 45344 }, /* EOR.B Dn,-(An) */ -{ CPUFUNC(op_b128_0), 0, 45352 }, /* EOR.B Dn,(d16,An) */ -{ CPUFUNC(op_b130_3), 0, 45360 }, /* EOR.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_b138_0), 0, 45368 }, /* EOR.B Dn,(xxx).W */ -{ CPUFUNC(op_b139_0), 0, 45369 }, /* EOR.B Dn,(xxx).L */ -{ CPUFUNC(op_b140_0), 0, 45376 }, /* EOR.W Dn,Dn */ -{ CPUFUNC(op_b148_0), 0, 45384 }, /* CMPM.W (An)+,(An)+ */ -{ CPUFUNC(op_b150_0), 0, 45392 }, /* EOR.W Dn,(An) */ -{ CPUFUNC(op_b158_0), 0, 45400 }, /* EOR.W Dn,(An)+ */ -{ CPUFUNC(op_b160_0), 0, 45408 }, /* EOR.W Dn,-(An) */ -{ CPUFUNC(op_b168_0), 0, 45416 }, /* EOR.W Dn,(d16,An) */ -{ CPUFUNC(op_b170_3), 0, 45424 }, /* EOR.W Dn,(d8,An,Xn) */ -{ CPUFUNC(op_b178_0), 0, 45432 }, /* EOR.W Dn,(xxx).W */ -{ CPUFUNC(op_b179_0), 0, 45433 }, /* EOR.W Dn,(xxx).L */ -{ CPUFUNC(op_b180_0), 0, 45440 }, /* EOR.L Dn,Dn */ -{ CPUFUNC(op_b188_0), 0, 45448 }, /* CMPM.L (An)+,(An)+ */ -{ CPUFUNC(op_b190_0), 0, 45456 }, /* EOR.L Dn,(An) */ -{ CPUFUNC(op_b198_0), 0, 45464 }, /* EOR.L Dn,(An)+ */ -{ CPUFUNC(op_b1a0_0), 0, 45472 }, /* EOR.L Dn,-(An) */ -{ CPUFUNC(op_b1a8_0), 0, 45480 }, /* EOR.L Dn,(d16,An) */ -{ CPUFUNC(op_b1b0_3), 0, 45488 }, /* EOR.L Dn,(d8,An,Xn) */ -{ CPUFUNC(op_b1b8_0), 0, 45496 }, /* EOR.L Dn,(xxx).W */ -{ CPUFUNC(op_b1b9_0), 0, 45497 }, /* EOR.L Dn,(xxx).L */ -{ CPUFUNC(op_b1c0_0), 0, 45504 }, /* CMPA.L Dn,An */ -{ CPUFUNC(op_b1c8_0), 0, 45512 }, /* CMPA.L An,An */ -{ CPUFUNC(op_b1d0_0), 0, 45520 }, /* CMPA.L (An),An */ -{ CPUFUNC(op_b1d8_0), 0, 45528 }, /* CMPA.L (An)+,An */ -{ CPUFUNC(op_b1e0_0), 0, 45536 }, /* CMPA.L -(An),An */ -{ CPUFUNC(op_b1e8_0), 0, 45544 }, /* CMPA.L (d16,An),An */ -{ CPUFUNC(op_b1f0_3), 0, 45552 }, /* CMPA.L (d8,An,Xn),An */ -{ CPUFUNC(op_b1f8_0), 0, 45560 }, /* CMPA.L (xxx).W,An */ -{ CPUFUNC(op_b1f9_0), 0, 45561 }, /* CMPA.L (xxx).L,An */ -{ CPUFUNC(op_b1fa_0), 0, 45562 }, /* CMPA.L (d16,PC),An */ -{ CPUFUNC(op_b1fb_3), 0, 45563 }, /* CMPA.L (d8,PC,Xn),An */ -{ CPUFUNC(op_b1fc_0), 0, 45564 }, /* CMPA.L #.L,An */ -{ CPUFUNC(op_c000_0), 0, 49152 }, /* AND.B Dn,Dn */ -{ CPUFUNC(op_c010_0), 0, 49168 }, /* AND.B (An),Dn */ -{ CPUFUNC(op_c018_0), 0, 49176 }, /* AND.B (An)+,Dn */ -{ CPUFUNC(op_c020_0), 0, 49184 }, /* AND.B -(An),Dn */ -{ CPUFUNC(op_c028_0), 0, 49192 }, /* AND.B (d16,An),Dn */ -{ CPUFUNC(op_c030_3), 0, 49200 }, /* AND.B (d8,An,Xn),Dn */ -{ CPUFUNC(op_c038_0), 0, 49208 }, /* AND.B (xxx).W,Dn */ -{ CPUFUNC(op_c039_0), 0, 49209 }, /* AND.B (xxx).L,Dn */ -{ CPUFUNC(op_c03a_0), 0, 49210 }, /* AND.B (d16,PC),Dn */ -{ CPUFUNC(op_c03b_3), 0, 49211 }, /* AND.B (d8,PC,Xn),Dn */ -{ CPUFUNC(op_c03c_0), 0, 49212 }, /* AND.B #.B,Dn */ -{ CPUFUNC(op_c040_0), 0, 49216 }, /* AND.W Dn,Dn */ -{ CPUFUNC(op_c050_0), 0, 49232 }, /* AND.W (An),Dn */ -{ CPUFUNC(op_c058_0), 0, 49240 }, /* AND.W (An)+,Dn */ -{ CPUFUNC(op_c060_0), 0, 49248 }, /* AND.W -(An),Dn */ -{ CPUFUNC(op_c068_0), 0, 49256 }, /* AND.W (d16,An),Dn */ -{ CPUFUNC(op_c070_3), 0, 49264 }, /* AND.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_c078_0), 0, 49272 }, /* AND.W (xxx).W,Dn */ -{ CPUFUNC(op_c079_0), 0, 49273 }, /* AND.W (xxx).L,Dn */ -{ CPUFUNC(op_c07a_0), 0, 49274 }, /* AND.W (d16,PC),Dn */ -{ CPUFUNC(op_c07b_3), 0, 49275 }, /* AND.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_c07c_0), 0, 49276 }, /* AND.W #.W,Dn */ -{ CPUFUNC(op_c080_0), 0, 49280 }, /* AND.L Dn,Dn */ -{ CPUFUNC(op_c090_0), 0, 49296 }, /* AND.L (An),Dn */ -{ CPUFUNC(op_c098_0), 0, 49304 }, /* AND.L (An)+,Dn */ -{ CPUFUNC(op_c0a0_0), 0, 49312 }, /* AND.L -(An),Dn */ -{ CPUFUNC(op_c0a8_0), 0, 49320 }, /* AND.L (d16,An),Dn */ -{ CPUFUNC(op_c0b0_3), 0, 49328 }, /* AND.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_c0b8_0), 0, 49336 }, /* AND.L (xxx).W,Dn */ -{ CPUFUNC(op_c0b9_0), 0, 49337 }, /* AND.L (xxx).L,Dn */ -{ CPUFUNC(op_c0ba_0), 0, 49338 }, /* AND.L (d16,PC),Dn */ -{ CPUFUNC(op_c0bb_3), 0, 49339 }, /* AND.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_c0bc_0), 0, 49340 }, /* AND.L #.L,Dn */ -{ CPUFUNC(op_c0c0_0), 0, 49344 }, /* MULU.W Dn,Dn */ -{ CPUFUNC(op_c0d0_0), 0, 49360 }, /* MULU.W (An),Dn */ -{ CPUFUNC(op_c0d8_0), 0, 49368 }, /* MULU.W (An)+,Dn */ -{ CPUFUNC(op_c0e0_0), 0, 49376 }, /* MULU.W -(An),Dn */ -{ CPUFUNC(op_c0e8_0), 0, 49384 }, /* MULU.W (d16,An),Dn */ -{ CPUFUNC(op_c0f0_3), 0, 49392 }, /* MULU.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_c0f8_0), 0, 49400 }, /* MULU.W (xxx).W,Dn */ -{ CPUFUNC(op_c0f9_0), 0, 49401 }, /* MULU.W (xxx).L,Dn */ -{ CPUFUNC(op_c0fa_0), 0, 49402 }, /* MULU.W (d16,PC),Dn */ -{ CPUFUNC(op_c0fb_3), 0, 49403 }, /* MULU.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_c0fc_0), 0, 49404 }, /* MULU.W #.W,Dn */ -{ CPUFUNC(op_c100_1), 0, 49408 }, /* ABCD.B Dn,Dn */ -{ CPUFUNC(op_c108_1), 0, 49416 }, /* ABCD.B -(An),-(An) */ -{ CPUFUNC(op_c110_0), 0, 49424 }, /* AND.B Dn,(An) */ -{ CPUFUNC(op_c118_0), 0, 49432 }, /* AND.B Dn,(An)+ */ -{ CPUFUNC(op_c120_0), 0, 49440 }, /* AND.B Dn,-(An) */ -{ CPUFUNC(op_c128_0), 0, 49448 }, /* AND.B Dn,(d16,An) */ -{ CPUFUNC(op_c130_3), 0, 49456 }, /* AND.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_c138_0), 0, 49464 }, /* AND.B Dn,(xxx).W */ -{ CPUFUNC(op_c139_0), 0, 49465 }, /* AND.B Dn,(xxx).L */ -{ CPUFUNC_FF(op_c140_0), 0, 49472 }, /* EXG.L Dn,Dn */ -{ CPUFUNC_FF(op_c148_0), 0, 49480 }, /* EXG.L An,An */ -{ CPUFUNC(op_c150_0), 0, 49488 }, /* AND.W Dn,(An) */ -{ CPUFUNC(op_c158_0), 0, 49496 }, /* AND.W Dn,(An)+ */ -{ CPUFUNC(op_c160_0), 0, 49504 }, /* AND.W Dn,-(An) */ -{ CPUFUNC(op_c168_0), 0, 49512 }, /* AND.W Dn,(d16,An) */ -{ CPUFUNC(op_c170_3), 0, 49520 }, /* AND.W Dn,(d8,An,Xn) */ -{ CPUFUNC(op_c178_0), 0, 49528 }, /* AND.W Dn,(xxx).W */ -{ CPUFUNC(op_c179_0), 0, 49529 }, /* AND.W Dn,(xxx).L */ -{ CPUFUNC_FF(op_c188_0), 0, 49544 }, /* EXG.L Dn,An */ -{ CPUFUNC(op_c190_0), 0, 49552 }, /* AND.L Dn,(An) */ -{ CPUFUNC(op_c198_0), 0, 49560 }, /* AND.L Dn,(An)+ */ -{ CPUFUNC(op_c1a0_0), 0, 49568 }, /* AND.L Dn,-(An) */ -{ CPUFUNC(op_c1a8_0), 0, 49576 }, /* AND.L Dn,(d16,An) */ -{ CPUFUNC(op_c1b0_3), 0, 49584 }, /* AND.L Dn,(d8,An,Xn) */ -{ CPUFUNC(op_c1b8_0), 0, 49592 }, /* AND.L Dn,(xxx).W */ -{ CPUFUNC(op_c1b9_0), 0, 49593 }, /* AND.L Dn,(xxx).L */ -{ CPUFUNC(op_c1c0_0), 0, 49600 }, /* MULS.W Dn,Dn */ -{ CPUFUNC(op_c1d0_0), 0, 49616 }, /* MULS.W (An),Dn */ -{ CPUFUNC(op_c1d8_0), 0, 49624 }, /* MULS.W (An)+,Dn */ -{ CPUFUNC(op_c1e0_0), 0, 49632 }, /* MULS.W -(An),Dn */ -{ CPUFUNC(op_c1e8_0), 0, 49640 }, /* MULS.W (d16,An),Dn */ -{ CPUFUNC(op_c1f0_3), 0, 49648 }, /* MULS.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_c1f8_0), 0, 49656 }, /* MULS.W (xxx).W,Dn */ -{ CPUFUNC(op_c1f9_0), 0, 49657 }, /* MULS.W (xxx).L,Dn */ -{ CPUFUNC(op_c1fa_0), 0, 49658 }, /* MULS.W (d16,PC),Dn */ -{ CPUFUNC(op_c1fb_3), 0, 49659 }, /* MULS.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_c1fc_0), 0, 49660 }, /* MULS.W #.W,Dn */ -{ CPUFUNC(op_d000_0), 0, 53248 }, /* ADD.B Dn,Dn */ -{ CPUFUNC(op_d010_0), 0, 53264 }, /* ADD.B (An),Dn */ -{ CPUFUNC(op_d018_0), 0, 53272 }, /* ADD.B (An)+,Dn */ -{ CPUFUNC(op_d020_0), 0, 53280 }, /* ADD.B -(An),Dn */ -{ CPUFUNC(op_d028_0), 0, 53288 }, /* ADD.B (d16,An),Dn */ -{ CPUFUNC(op_d030_3), 0, 53296 }, /* ADD.B (d8,An,Xn),Dn */ -{ CPUFUNC(op_d038_0), 0, 53304 }, /* ADD.B (xxx).W,Dn */ -{ CPUFUNC(op_d039_0), 0, 53305 }, /* ADD.B (xxx).L,Dn */ -{ CPUFUNC(op_d03a_0), 0, 53306 }, /* ADD.B (d16,PC),Dn */ -{ CPUFUNC(op_d03b_3), 0, 53307 }, /* ADD.B (d8,PC,Xn),Dn */ -{ CPUFUNC(op_d03c_0), 0, 53308 }, /* ADD.B #.B,Dn */ -{ CPUFUNC(op_d040_0), 0, 53312 }, /* ADD.W Dn,Dn */ -{ CPUFUNC(op_d048_0), 0, 53320 }, /* ADD.W An,Dn */ -{ CPUFUNC(op_d050_0), 0, 53328 }, /* ADD.W (An),Dn */ -{ CPUFUNC(op_d058_0), 0, 53336 }, /* ADD.W (An)+,Dn */ -{ CPUFUNC(op_d060_0), 0, 53344 }, /* ADD.W -(An),Dn */ -{ CPUFUNC(op_d068_0), 0, 53352 }, /* ADD.W (d16,An),Dn */ -{ CPUFUNC(op_d070_3), 0, 53360 }, /* ADD.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_d078_0), 0, 53368 }, /* ADD.W (xxx).W,Dn */ -{ CPUFUNC(op_d079_0), 0, 53369 }, /* ADD.W (xxx).L,Dn */ -{ CPUFUNC(op_d07a_0), 0, 53370 }, /* ADD.W (d16,PC),Dn */ -{ CPUFUNC(op_d07b_3), 0, 53371 }, /* ADD.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_d07c_0), 0, 53372 }, /* ADD.W #.W,Dn */ -{ CPUFUNC(op_d080_0), 0, 53376 }, /* ADD.L Dn,Dn */ -{ CPUFUNC(op_d088_0), 0, 53384 }, /* ADD.L An,Dn */ -{ CPUFUNC(op_d090_0), 0, 53392 }, /* ADD.L (An),Dn */ -{ CPUFUNC(op_d098_0), 0, 53400 }, /* ADD.L (An)+,Dn */ -{ CPUFUNC(op_d0a0_0), 0, 53408 }, /* ADD.L -(An),Dn */ -{ CPUFUNC(op_d0a8_0), 0, 53416 }, /* ADD.L (d16,An),Dn */ -{ CPUFUNC(op_d0b0_3), 0, 53424 }, /* ADD.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_d0b8_0), 0, 53432 }, /* ADD.L (xxx).W,Dn */ -{ CPUFUNC(op_d0b9_0), 0, 53433 }, /* ADD.L (xxx).L,Dn */ -{ CPUFUNC(op_d0ba_0), 0, 53434 }, /* ADD.L (d16,PC),Dn */ -{ CPUFUNC(op_d0bb_3), 0, 53435 }, /* ADD.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_d0bc_0), 0, 53436 }, /* ADD.L #.L,Dn */ -{ CPUFUNC_FF(op_d0c0_0), 0, 53440 }, /* ADDA.W Dn,An */ -{ CPUFUNC_FF(op_d0c8_0), 0, 53448 }, /* ADDA.W An,An */ -{ CPUFUNC_FF(op_d0d0_0), 0, 53456 }, /* ADDA.W (An),An */ -{ CPUFUNC_FF(op_d0d8_0), 0, 53464 }, /* ADDA.W (An)+,An */ -{ CPUFUNC_FF(op_d0e0_0), 0, 53472 }, /* ADDA.W -(An),An */ -{ CPUFUNC_FF(op_d0e8_0), 0, 53480 }, /* ADDA.W (d16,An),An */ -{ CPUFUNC_FF(op_d0f0_3), 0, 53488 }, /* ADDA.W (d8,An,Xn),An */ -{ CPUFUNC_FF(op_d0f8_0), 0, 53496 }, /* ADDA.W (xxx).W,An */ -{ CPUFUNC_FF(op_d0f9_0), 0, 53497 }, /* ADDA.W (xxx).L,An */ -{ CPUFUNC_FF(op_d0fa_0), 0, 53498 }, /* ADDA.W (d16,PC),An */ -{ CPUFUNC_FF(op_d0fb_3), 0, 53499 }, /* ADDA.W (d8,PC,Xn),An */ -{ CPUFUNC_FF(op_d0fc_0), 0, 53500 }, /* ADDA.W #.W,An */ -{ CPUFUNC(op_d100_0), 0, 53504 }, /* ADDX.B Dn,Dn */ -{ CPUFUNC(op_d108_0), 0, 53512 }, /* ADDX.B -(An),-(An) */ -{ CPUFUNC(op_d110_0), 0, 53520 }, /* ADD.B Dn,(An) */ -{ CPUFUNC(op_d118_0), 0, 53528 }, /* ADD.B Dn,(An)+ */ -{ CPUFUNC(op_d120_0), 0, 53536 }, /* ADD.B Dn,-(An) */ -{ CPUFUNC(op_d128_0), 0, 53544 }, /* ADD.B Dn,(d16,An) */ -{ CPUFUNC(op_d130_3), 0, 53552 }, /* ADD.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_d138_0), 0, 53560 }, /* ADD.B Dn,(xxx).W */ -{ CPUFUNC(op_d139_0), 0, 53561 }, /* ADD.B Dn,(xxx).L */ -{ CPUFUNC(op_d140_0), 0, 53568 }, /* ADDX.W Dn,Dn */ -{ CPUFUNC(op_d148_0), 0, 53576 }, /* ADDX.W -(An),-(An) */ -{ CPUFUNC(op_d150_0), 0, 53584 }, /* ADD.W Dn,(An) */ -{ CPUFUNC(op_d158_0), 0, 53592 }, /* ADD.W Dn,(An)+ */ -{ CPUFUNC(op_d160_0), 0, 53600 }, /* ADD.W Dn,-(An) */ -{ CPUFUNC(op_d168_0), 0, 53608 }, /* ADD.W Dn,(d16,An) */ -{ CPUFUNC(op_d170_3), 0, 53616 }, /* ADD.W Dn,(d8,An,Xn) */ -{ CPUFUNC(op_d178_0), 0, 53624 }, /* ADD.W Dn,(xxx).W */ -{ CPUFUNC(op_d179_0), 0, 53625 }, /* ADD.W Dn,(xxx).L */ -{ CPUFUNC(op_d180_0), 0, 53632 }, /* ADDX.L Dn,Dn */ -{ CPUFUNC(op_d188_0), 0, 53640 }, /* ADDX.L -(An),-(An) */ -{ CPUFUNC(op_d190_0), 0, 53648 }, /* ADD.L Dn,(An) */ -{ CPUFUNC(op_d198_0), 0, 53656 }, /* ADD.L Dn,(An)+ */ -{ CPUFUNC(op_d1a0_0), 0, 53664 }, /* ADD.L Dn,-(An) */ -{ CPUFUNC(op_d1a8_0), 0, 53672 }, /* ADD.L Dn,(d16,An) */ -{ CPUFUNC(op_d1b0_3), 0, 53680 }, /* ADD.L Dn,(d8,An,Xn) */ -{ CPUFUNC(op_d1b8_0), 0, 53688 }, /* ADD.L Dn,(xxx).W */ -{ CPUFUNC(op_d1b9_0), 0, 53689 }, /* ADD.L Dn,(xxx).L */ -{ CPUFUNC_FF(op_d1c0_0), 0, 53696 }, /* ADDA.L Dn,An */ -{ CPUFUNC_FF(op_d1c8_0), 0, 53704 }, /* ADDA.L An,An */ -{ CPUFUNC_FF(op_d1d0_0), 0, 53712 }, /* ADDA.L (An),An */ -{ CPUFUNC_FF(op_d1d8_0), 0, 53720 }, /* ADDA.L (An)+,An */ -{ CPUFUNC_FF(op_d1e0_0), 0, 53728 }, /* ADDA.L -(An),An */ -{ CPUFUNC_FF(op_d1e8_0), 0, 53736 }, /* ADDA.L (d16,An),An */ -{ CPUFUNC_FF(op_d1f0_3), 0, 53744 }, /* ADDA.L (d8,An,Xn),An */ -{ CPUFUNC_FF(op_d1f8_0), 0, 53752 }, /* ADDA.L (xxx).W,An */ -{ CPUFUNC_FF(op_d1f9_0), 0, 53753 }, /* ADDA.L (xxx).L,An */ -{ CPUFUNC_FF(op_d1fa_0), 0, 53754 }, /* ADDA.L (d16,PC),An */ -{ CPUFUNC_FF(op_d1fb_3), 0, 53755 }, /* ADDA.L (d8,PC,Xn),An */ -{ CPUFUNC_FF(op_d1fc_0), 0, 53756 }, /* ADDA.L #.L,An */ -{ CPUFUNC(op_e000_0), 0, 57344 }, /* ASR.B #,Dn */ -{ CPUFUNC(op_e008_0), 0, 57352 }, /* LSR.B #,Dn */ -{ CPUFUNC(op_e010_0), 0, 57360 }, /* ROXR.B #,Dn */ -{ CPUFUNC(op_e018_0), 0, 57368 }, /* ROR.B #,Dn */ -{ CPUFUNC(op_e020_0), 0, 57376 }, /* ASR.B Dn,Dn */ -{ CPUFUNC(op_e028_0), 0, 57384 }, /* LSR.B Dn,Dn */ -{ CPUFUNC(op_e030_0), 0, 57392 }, /* ROXR.B Dn,Dn */ -{ CPUFUNC(op_e038_0), 0, 57400 }, /* ROR.B Dn,Dn */ -{ CPUFUNC(op_e040_0), 0, 57408 }, /* ASR.W #,Dn */ -{ CPUFUNC(op_e048_0), 0, 57416 }, /* LSR.W #,Dn */ -{ CPUFUNC(op_e050_0), 0, 57424 }, /* ROXR.W #,Dn */ -{ CPUFUNC(op_e058_0), 0, 57432 }, /* ROR.W #,Dn */ -{ CPUFUNC(op_e060_0), 0, 57440 }, /* ASR.W Dn,Dn */ -{ CPUFUNC(op_e068_0), 0, 57448 }, /* LSR.W Dn,Dn */ -{ CPUFUNC(op_e070_0), 0, 57456 }, /* ROXR.W Dn,Dn */ -{ CPUFUNC(op_e078_0), 0, 57464 }, /* ROR.W Dn,Dn */ -{ CPUFUNC(op_e080_0), 0, 57472 }, /* ASR.L #,Dn */ -{ CPUFUNC(op_e088_0), 0, 57480 }, /* LSR.L #,Dn */ -{ CPUFUNC(op_e090_0), 0, 57488 }, /* ROXR.L #,Dn */ -{ CPUFUNC(op_e098_0), 0, 57496 }, /* ROR.L #,Dn */ -{ CPUFUNC(op_e0a0_0), 0, 57504 }, /* ASR.L Dn,Dn */ -{ CPUFUNC(op_e0a8_0), 0, 57512 }, /* LSR.L Dn,Dn */ -{ CPUFUNC(op_e0b0_0), 0, 57520 }, /* ROXR.L Dn,Dn */ -{ CPUFUNC(op_e0b8_0), 0, 57528 }, /* ROR.L Dn,Dn */ -{ CPUFUNC(op_e0d0_0), 0, 57552 }, /* ASRW.W (An) */ -{ CPUFUNC(op_e0d8_0), 0, 57560 }, /* ASRW.W (An)+ */ -{ CPUFUNC(op_e0e0_0), 0, 57568 }, /* ASRW.W -(An) */ -{ CPUFUNC(op_e0e8_0), 0, 57576 }, /* ASRW.W (d16,An) */ -{ CPUFUNC(op_e0f0_3), 0, 57584 }, /* ASRW.W (d8,An,Xn) */ -{ CPUFUNC(op_e0f8_0), 0, 57592 }, /* ASRW.W (xxx).W */ -{ CPUFUNC(op_e0f9_0), 0, 57593 }, /* ASRW.W (xxx).L */ -{ CPUFUNC(op_e100_0), 0, 57600 }, /* ASL.B #,Dn */ -{ CPUFUNC(op_e108_0), 0, 57608 }, /* LSL.B #,Dn */ -{ CPUFUNC(op_e110_0), 0, 57616 }, /* ROXL.B #,Dn */ -{ CPUFUNC(op_e118_0), 0, 57624 }, /* ROL.B #,Dn */ -{ CPUFUNC(op_e120_0), 0, 57632 }, /* ASL.B Dn,Dn */ -{ CPUFUNC(op_e128_0), 0, 57640 }, /* LSL.B Dn,Dn */ -{ CPUFUNC(op_e130_0), 0, 57648 }, /* ROXL.B Dn,Dn */ -{ CPUFUNC(op_e138_0), 0, 57656 }, /* ROL.B Dn,Dn */ -{ CPUFUNC(op_e140_0), 0, 57664 }, /* ASL.W #,Dn */ -{ CPUFUNC(op_e148_0), 0, 57672 }, /* LSL.W #,Dn */ -{ CPUFUNC(op_e150_0), 0, 57680 }, /* ROXL.W #,Dn */ -{ CPUFUNC(op_e158_0), 0, 57688 }, /* ROL.W #,Dn */ -{ CPUFUNC(op_e160_0), 0, 57696 }, /* ASL.W Dn,Dn */ -{ CPUFUNC(op_e168_0), 0, 57704 }, /* LSL.W Dn,Dn */ -{ CPUFUNC(op_e170_0), 0, 57712 }, /* ROXL.W Dn,Dn */ -{ CPUFUNC(op_e178_0), 0, 57720 }, /* ROL.W Dn,Dn */ -{ CPUFUNC(op_e180_0), 0, 57728 }, /* ASL.L #,Dn */ -{ CPUFUNC(op_e188_0), 0, 57736 }, /* LSL.L #,Dn */ -{ CPUFUNC(op_e190_0), 0, 57744 }, /* ROXL.L #,Dn */ -{ CPUFUNC(op_e198_0), 0, 57752 }, /* ROL.L #,Dn */ -{ CPUFUNC(op_e1a0_0), 0, 57760 }, /* ASL.L Dn,Dn */ -{ CPUFUNC(op_e1a8_0), 0, 57768 }, /* LSL.L Dn,Dn */ -{ CPUFUNC(op_e1b0_0), 0, 57776 }, /* ROXL.L Dn,Dn */ -{ CPUFUNC(op_e1b8_0), 0, 57784 }, /* ROL.L Dn,Dn */ -{ CPUFUNC(op_e1d0_0), 0, 57808 }, /* ASLW.W (An) */ -{ CPUFUNC(op_e1d8_0), 0, 57816 }, /* ASLW.W (An)+ */ -{ CPUFUNC(op_e1e0_0), 0, 57824 }, /* ASLW.W -(An) */ -{ CPUFUNC(op_e1e8_0), 0, 57832 }, /* ASLW.W (d16,An) */ -{ CPUFUNC(op_e1f0_3), 0, 57840 }, /* ASLW.W (d8,An,Xn) */ -{ CPUFUNC(op_e1f8_0), 0, 57848 }, /* ASLW.W (xxx).W */ -{ CPUFUNC(op_e1f9_0), 0, 57849 }, /* ASLW.W (xxx).L */ -{ CPUFUNC(op_e2d0_0), 0, 58064 }, /* LSRW.W (An) */ -{ CPUFUNC(op_e2d8_0), 0, 58072 }, /* LSRW.W (An)+ */ -{ CPUFUNC(op_e2e0_0), 0, 58080 }, /* LSRW.W -(An) */ -{ CPUFUNC(op_e2e8_0), 0, 58088 }, /* LSRW.W (d16,An) */ -{ CPUFUNC(op_e2f0_3), 0, 58096 }, /* LSRW.W (d8,An,Xn) */ -{ CPUFUNC(op_e2f8_0), 0, 58104 }, /* LSRW.W (xxx).W */ -{ CPUFUNC(op_e2f9_0), 0, 58105 }, /* LSRW.W (xxx).L */ -{ CPUFUNC(op_e3d0_0), 0, 58320 }, /* LSLW.W (An) */ -{ CPUFUNC(op_e3d8_0), 0, 58328 }, /* LSLW.W (An)+ */ -{ CPUFUNC(op_e3e0_0), 0, 58336 }, /* LSLW.W -(An) */ -{ CPUFUNC(op_e3e8_0), 0, 58344 }, /* LSLW.W (d16,An) */ -{ CPUFUNC(op_e3f0_3), 0, 58352 }, /* LSLW.W (d8,An,Xn) */ -{ CPUFUNC(op_e3f8_0), 0, 58360 }, /* LSLW.W (xxx).W */ -{ CPUFUNC(op_e3f9_0), 0, 58361 }, /* LSLW.W (xxx).L */ -{ CPUFUNC(op_e4d0_0), 0, 58576 }, /* ROXRW.W (An) */ -{ CPUFUNC(op_e4d8_0), 0, 58584 }, /* ROXRW.W (An)+ */ -{ CPUFUNC(op_e4e0_0), 0, 58592 }, /* ROXRW.W -(An) */ -{ CPUFUNC(op_e4e8_0), 0, 58600 }, /* ROXRW.W (d16,An) */ -{ CPUFUNC(op_e4f0_3), 0, 58608 }, /* ROXRW.W (d8,An,Xn) */ -{ CPUFUNC(op_e4f8_0), 0, 58616 }, /* ROXRW.W (xxx).W */ -{ CPUFUNC(op_e4f9_0), 0, 58617 }, /* ROXRW.W (xxx).L */ -{ CPUFUNC(op_e5d0_0), 0, 58832 }, /* ROXLW.W (An) */ -{ CPUFUNC(op_e5d8_0), 0, 58840 }, /* ROXLW.W (An)+ */ -{ CPUFUNC(op_e5e0_0), 0, 58848 }, /* ROXLW.W -(An) */ -{ CPUFUNC(op_e5e8_0), 0, 58856 }, /* ROXLW.W (d16,An) */ -{ CPUFUNC(op_e5f0_3), 0, 58864 }, /* ROXLW.W (d8,An,Xn) */ -{ CPUFUNC(op_e5f8_0), 0, 58872 }, /* ROXLW.W (xxx).W */ -{ CPUFUNC(op_e5f9_0), 0, 58873 }, /* ROXLW.W (xxx).L */ -{ CPUFUNC(op_e6d0_0), 0, 59088 }, /* RORW.W (An) */ -{ CPUFUNC(op_e6d8_0), 0, 59096 }, /* RORW.W (An)+ */ -{ CPUFUNC(op_e6e0_0), 0, 59104 }, /* RORW.W -(An) */ -{ CPUFUNC(op_e6e8_0), 0, 59112 }, /* RORW.W (d16,An) */ -{ CPUFUNC(op_e6f0_3), 0, 59120 }, /* RORW.W (d8,An,Xn) */ -{ CPUFUNC(op_e6f8_0), 0, 59128 }, /* RORW.W (xxx).W */ -{ CPUFUNC(op_e6f9_0), 0, 59129 }, /* RORW.W (xxx).L */ -{ CPUFUNC(op_e7d0_0), 0, 59344 }, /* ROLW.W (An) */ -{ CPUFUNC(op_e7d8_0), 0, 59352 }, /* ROLW.W (An)+ */ -{ CPUFUNC(op_e7e0_0), 0, 59360 }, /* ROLW.W -(An) */ -{ CPUFUNC(op_e7e8_0), 0, 59368 }, /* ROLW.W (d16,An) */ -{ CPUFUNC(op_e7f0_3), 0, 59376 }, /* ROLW.W (d8,An,Xn) */ -{ CPUFUNC(op_e7f8_0), 0, 59384 }, /* ROLW.W (xxx).W */ -{ CPUFUNC(op_e7f9_0), 0, 59385 }, /* ROLW.W (xxx).L */ -{ 0, 0, 0 }}; -struct cputbl CPUFUNC(op_smalltbl_4)[] = { -{ CPUFUNC(op_0_0), 0, 0 }, /* OR.B #.B,Dn */ -{ CPUFUNC(op_10_0), 0, 16 }, /* OR.B #.B,(An) */ -{ CPUFUNC(op_18_0), 0, 24 }, /* OR.B #.B,(An)+ */ -{ CPUFUNC(op_20_0), 0, 32 }, /* OR.B #.B,-(An) */ -{ CPUFUNC(op_28_0), 0, 40 }, /* OR.B #.B,(d16,An) */ -{ CPUFUNC(op_30_3), 0, 48 }, /* OR.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_38_0), 0, 56 }, /* OR.B #.B,(xxx).W */ -{ CPUFUNC(op_39_0), 0, 57 }, /* OR.B #.B,(xxx).L */ -{ CPUFUNC(op_3c_0), 0, 60 }, /* ORSR.B #.W */ -{ CPUFUNC(op_40_0), 0, 64 }, /* OR.W #.W,Dn */ -{ CPUFUNC(op_50_0), 0, 80 }, /* OR.W #.W,(An) */ -{ CPUFUNC(op_58_0), 0, 88 }, /* OR.W #.W,(An)+ */ -{ CPUFUNC(op_60_0), 0, 96 }, /* OR.W #.W,-(An) */ -{ CPUFUNC(op_68_0), 0, 104 }, /* OR.W #.W,(d16,An) */ -{ CPUFUNC(op_70_3), 0, 112 }, /* OR.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_78_0), 0, 120 }, /* OR.W #.W,(xxx).W */ -{ CPUFUNC(op_79_0), 0, 121 }, /* OR.W #.W,(xxx).L */ -{ CPUFUNC(op_7c_0), 0, 124 }, /* ORSR.W #.W */ -{ CPUFUNC(op_80_0), 0, 128 }, /* OR.L #.L,Dn */ -{ CPUFUNC(op_90_0), 0, 144 }, /* OR.L #.L,(An) */ -{ CPUFUNC(op_98_0), 0, 152 }, /* OR.L #.L,(An)+ */ -{ CPUFUNC(op_a0_0), 0, 160 }, /* OR.L #.L,-(An) */ -{ CPUFUNC(op_a8_0), 0, 168 }, /* OR.L #.L,(d16,An) */ -{ CPUFUNC(op_b0_3), 0, 176 }, /* OR.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_b8_0), 0, 184 }, /* OR.L #.L,(xxx).W */ -{ CPUFUNC(op_b9_0), 0, 185 }, /* OR.L #.L,(xxx).L */ -{ CPUFUNC(op_100_0), 0, 256 }, /* BTST.L Dn,Dn */ -{ CPUFUNC_FF(op_108_0), 0, 264 }, /* MVPMR.W (d16,An),Dn */ -{ CPUFUNC(op_110_0), 0, 272 }, /* BTST.B Dn,(An) */ -{ CPUFUNC(op_118_0), 0, 280 }, /* BTST.B Dn,(An)+ */ -{ CPUFUNC(op_120_0), 0, 288 }, /* BTST.B Dn,-(An) */ -{ CPUFUNC(op_128_0), 0, 296 }, /* BTST.B Dn,(d16,An) */ -{ CPUFUNC(op_130_3), 0, 304 }, /* BTST.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_138_0), 0, 312 }, /* BTST.B Dn,(xxx).W */ -{ CPUFUNC(op_139_0), 0, 313 }, /* BTST.B Dn,(xxx).L */ -{ CPUFUNC(op_13a_0), 0, 314 }, /* BTST.B Dn,(d16,PC) */ -{ CPUFUNC(op_13b_3), 0, 315 }, /* BTST.B Dn,(d8,PC,Xn) */ -{ CPUFUNC(op_13c_0), 0, 316 }, /* BTST.B Dn,#.B */ -{ CPUFUNC(op_140_0), 0, 320 }, /* BCHG.L Dn,Dn */ -{ CPUFUNC_FF(op_148_0), 0, 328 }, /* MVPMR.L (d16,An),Dn */ -{ CPUFUNC(op_150_0), 0, 336 }, /* BCHG.B Dn,(An) */ -{ CPUFUNC(op_158_0), 0, 344 }, /* BCHG.B Dn,(An)+ */ -{ CPUFUNC(op_160_0), 0, 352 }, /* BCHG.B Dn,-(An) */ -{ CPUFUNC(op_168_0), 0, 360 }, /* BCHG.B Dn,(d16,An) */ -{ CPUFUNC(op_170_3), 0, 368 }, /* BCHG.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_178_0), 0, 376 }, /* BCHG.B Dn,(xxx).W */ -{ CPUFUNC(op_179_0), 0, 377 }, /* BCHG.B Dn,(xxx).L */ -{ CPUFUNC(op_17a_0), 0, 378 }, /* BCHG.B Dn,(d16,PC) */ -{ CPUFUNC(op_17b_3), 0, 379 }, /* BCHG.B Dn,(d8,PC,Xn) */ -{ CPUFUNC(op_180_0), 0, 384 }, /* BCLR.L Dn,Dn */ -{ CPUFUNC_FF(op_188_0), 0, 392 }, /* MVPRM.W Dn,(d16,An) */ -{ CPUFUNC(op_190_0), 0, 400 }, /* BCLR.B Dn,(An) */ -{ CPUFUNC(op_198_0), 0, 408 }, /* BCLR.B Dn,(An)+ */ -{ CPUFUNC(op_1a0_0), 0, 416 }, /* BCLR.B Dn,-(An) */ -{ CPUFUNC(op_1a8_0), 0, 424 }, /* BCLR.B Dn,(d16,An) */ -{ CPUFUNC(op_1b0_3), 0, 432 }, /* BCLR.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_1b8_0), 0, 440 }, /* BCLR.B Dn,(xxx).W */ -{ CPUFUNC(op_1b9_0), 0, 441 }, /* BCLR.B Dn,(xxx).L */ -{ CPUFUNC(op_1ba_0), 0, 442 }, /* BCLR.B Dn,(d16,PC) */ -{ CPUFUNC(op_1bb_3), 0, 443 }, /* BCLR.B Dn,(d8,PC,Xn) */ -{ CPUFUNC(op_1c0_0), 0, 448 }, /* BSET.L Dn,Dn */ -{ CPUFUNC_FF(op_1c8_0), 0, 456 }, /* MVPRM.L Dn,(d16,An) */ -{ CPUFUNC(op_1d0_0), 0, 464 }, /* BSET.B Dn,(An) */ -{ CPUFUNC(op_1d8_0), 0, 472 }, /* BSET.B Dn,(An)+ */ -{ CPUFUNC(op_1e0_0), 0, 480 }, /* BSET.B Dn,-(An) */ -{ CPUFUNC(op_1e8_0), 0, 488 }, /* BSET.B Dn,(d16,An) */ -{ CPUFUNC(op_1f0_3), 0, 496 }, /* BSET.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_1f8_0), 0, 504 }, /* BSET.B Dn,(xxx).W */ -{ CPUFUNC(op_1f9_0), 0, 505 }, /* BSET.B Dn,(xxx).L */ -{ CPUFUNC(op_1fa_0), 0, 506 }, /* BSET.B Dn,(d16,PC) */ -{ CPUFUNC(op_1fb_3), 0, 507 }, /* BSET.B Dn,(d8,PC,Xn) */ -{ CPUFUNC(op_200_0), 0, 512 }, /* AND.B #.B,Dn */ -{ CPUFUNC(op_210_0), 0, 528 }, /* AND.B #.B,(An) */ -{ CPUFUNC(op_218_0), 0, 536 }, /* AND.B #.B,(An)+ */ -{ CPUFUNC(op_220_0), 0, 544 }, /* AND.B #.B,-(An) */ -{ CPUFUNC(op_228_0), 0, 552 }, /* AND.B #.B,(d16,An) */ -{ CPUFUNC(op_230_3), 0, 560 }, /* AND.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_238_0), 0, 568 }, /* AND.B #.B,(xxx).W */ -{ CPUFUNC(op_239_0), 0, 569 }, /* AND.B #.B,(xxx).L */ -{ CPUFUNC(op_23c_0), 0, 572 }, /* ANDSR.B #.W */ -{ CPUFUNC(op_240_0), 0, 576 }, /* AND.W #.W,Dn */ -{ CPUFUNC(op_250_0), 0, 592 }, /* AND.W #.W,(An) */ -{ CPUFUNC(op_258_0), 0, 600 }, /* AND.W #.W,(An)+ */ -{ CPUFUNC(op_260_0), 0, 608 }, /* AND.W #.W,-(An) */ -{ CPUFUNC(op_268_0), 0, 616 }, /* AND.W #.W,(d16,An) */ -{ CPUFUNC(op_270_3), 0, 624 }, /* AND.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_278_0), 0, 632 }, /* AND.W #.W,(xxx).W */ -{ CPUFUNC(op_279_0), 0, 633 }, /* AND.W #.W,(xxx).L */ -{ CPUFUNC(op_27c_0), 0, 636 }, /* ANDSR.W #.W */ -{ CPUFUNC(op_280_0), 0, 640 }, /* AND.L #.L,Dn */ -{ CPUFUNC(op_290_0), 0, 656 }, /* AND.L #.L,(An) */ -{ CPUFUNC(op_298_0), 0, 664 }, /* AND.L #.L,(An)+ */ -{ CPUFUNC(op_2a0_0), 0, 672 }, /* AND.L #.L,-(An) */ -{ CPUFUNC(op_2a8_0), 0, 680 }, /* AND.L #.L,(d16,An) */ -{ CPUFUNC(op_2b0_3), 0, 688 }, /* AND.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_2b8_0), 0, 696 }, /* AND.L #.L,(xxx).W */ -{ CPUFUNC(op_2b9_0), 0, 697 }, /* AND.L #.L,(xxx).L */ -{ CPUFUNC(op_400_0), 0, 1024 }, /* SUB.B #.B,Dn */ -{ CPUFUNC(op_410_0), 0, 1040 }, /* SUB.B #.B,(An) */ -{ CPUFUNC(op_418_0), 0, 1048 }, /* SUB.B #.B,(An)+ */ -{ CPUFUNC(op_420_0), 0, 1056 }, /* SUB.B #.B,-(An) */ -{ CPUFUNC(op_428_0), 0, 1064 }, /* SUB.B #.B,(d16,An) */ -{ CPUFUNC(op_430_3), 0, 1072 }, /* SUB.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_438_0), 0, 1080 }, /* SUB.B #.B,(xxx).W */ -{ CPUFUNC(op_439_0), 0, 1081 }, /* SUB.B #.B,(xxx).L */ -{ CPUFUNC(op_440_0), 0, 1088 }, /* SUB.W #.W,Dn */ -{ CPUFUNC(op_450_0), 0, 1104 }, /* SUB.W #.W,(An) */ -{ CPUFUNC(op_458_0), 0, 1112 }, /* SUB.W #.W,(An)+ */ -{ CPUFUNC(op_460_0), 0, 1120 }, /* SUB.W #.W,-(An) */ -{ CPUFUNC(op_468_0), 0, 1128 }, /* SUB.W #.W,(d16,An) */ -{ CPUFUNC(op_470_3), 0, 1136 }, /* SUB.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_478_0), 0, 1144 }, /* SUB.W #.W,(xxx).W */ -{ CPUFUNC(op_479_0), 0, 1145 }, /* SUB.W #.W,(xxx).L */ -{ CPUFUNC(op_480_0), 0, 1152 }, /* SUB.L #.L,Dn */ -{ CPUFUNC(op_490_0), 0, 1168 }, /* SUB.L #.L,(An) */ -{ CPUFUNC(op_498_0), 0, 1176 }, /* SUB.L #.L,(An)+ */ -{ CPUFUNC(op_4a0_0), 0, 1184 }, /* SUB.L #.L,-(An) */ -{ CPUFUNC(op_4a8_0), 0, 1192 }, /* SUB.L #.L,(d16,An) */ -{ CPUFUNC(op_4b0_3), 0, 1200 }, /* SUB.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_4b8_0), 0, 1208 }, /* SUB.L #.L,(xxx).W */ -{ CPUFUNC(op_4b9_0), 0, 1209 }, /* SUB.L #.L,(xxx).L */ -{ CPUFUNC(op_600_0), 0, 1536 }, /* ADD.B #.B,Dn */ -{ CPUFUNC(op_610_0), 0, 1552 }, /* ADD.B #.B,(An) */ -{ CPUFUNC(op_618_0), 0, 1560 }, /* ADD.B #.B,(An)+ */ -{ CPUFUNC(op_620_0), 0, 1568 }, /* ADD.B #.B,-(An) */ -{ CPUFUNC(op_628_0), 0, 1576 }, /* ADD.B #.B,(d16,An) */ -{ CPUFUNC(op_630_3), 0, 1584 }, /* ADD.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_638_0), 0, 1592 }, /* ADD.B #.B,(xxx).W */ -{ CPUFUNC(op_639_0), 0, 1593 }, /* ADD.B #.B,(xxx).L */ -{ CPUFUNC(op_640_0), 0, 1600 }, /* ADD.W #.W,Dn */ -{ CPUFUNC(op_650_0), 0, 1616 }, /* ADD.W #.W,(An) */ -{ CPUFUNC(op_658_0), 0, 1624 }, /* ADD.W #.W,(An)+ */ -{ CPUFUNC(op_660_0), 0, 1632 }, /* ADD.W #.W,-(An) */ -{ CPUFUNC(op_668_0), 0, 1640 }, /* ADD.W #.W,(d16,An) */ -{ CPUFUNC(op_670_3), 0, 1648 }, /* ADD.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_678_0), 0, 1656 }, /* ADD.W #.W,(xxx).W */ -{ CPUFUNC(op_679_0), 0, 1657 }, /* ADD.W #.W,(xxx).L */ -{ CPUFUNC(op_680_0), 0, 1664 }, /* ADD.L #.L,Dn */ -{ CPUFUNC(op_690_0), 0, 1680 }, /* ADD.L #.L,(An) */ -{ CPUFUNC(op_698_0), 0, 1688 }, /* ADD.L #.L,(An)+ */ -{ CPUFUNC(op_6a0_0), 0, 1696 }, /* ADD.L #.L,-(An) */ -{ CPUFUNC(op_6a8_0), 0, 1704 }, /* ADD.L #.L,(d16,An) */ -{ CPUFUNC(op_6b0_3), 0, 1712 }, /* ADD.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_6b8_0), 0, 1720 }, /* ADD.L #.L,(xxx).W */ -{ CPUFUNC(op_6b9_0), 0, 1721 }, /* ADD.L #.L,(xxx).L */ -{ CPUFUNC(op_800_0), 0, 2048 }, /* BTST.L #.W,Dn */ -{ CPUFUNC(op_810_0), 0, 2064 }, /* BTST.B #.W,(An) */ -{ CPUFUNC(op_818_0), 0, 2072 }, /* BTST.B #.W,(An)+ */ -{ CPUFUNC(op_820_0), 0, 2080 }, /* BTST.B #.W,-(An) */ -{ CPUFUNC(op_828_0), 0, 2088 }, /* BTST.B #.W,(d16,An) */ -{ CPUFUNC(op_830_3), 0, 2096 }, /* BTST.B #.W,(d8,An,Xn) */ -{ CPUFUNC(op_838_0), 0, 2104 }, /* BTST.B #.W,(xxx).W */ -{ CPUFUNC(op_839_0), 0, 2105 }, /* BTST.B #.W,(xxx).L */ -{ CPUFUNC(op_83a_0), 0, 2106 }, /* BTST.B #.W,(d16,PC) */ -{ CPUFUNC(op_83b_3), 0, 2107 }, /* BTST.B #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_83c_0), 0, 2108 }, /* BTST.B #.W,#.B */ -{ CPUFUNC(op_840_0), 0, 2112 }, /* BCHG.L #.W,Dn */ -{ CPUFUNC(op_850_0), 0, 2128 }, /* BCHG.B #.W,(An) */ -{ CPUFUNC(op_858_0), 0, 2136 }, /* BCHG.B #.W,(An)+ */ -{ CPUFUNC(op_860_0), 0, 2144 }, /* BCHG.B #.W,-(An) */ -{ CPUFUNC(op_868_0), 0, 2152 }, /* BCHG.B #.W,(d16,An) */ -{ CPUFUNC(op_870_3), 0, 2160 }, /* BCHG.B #.W,(d8,An,Xn) */ -{ CPUFUNC(op_878_0), 0, 2168 }, /* BCHG.B #.W,(xxx).W */ -{ CPUFUNC(op_879_0), 0, 2169 }, /* BCHG.B #.W,(xxx).L */ -{ CPUFUNC(op_87a_0), 0, 2170 }, /* BCHG.B #.W,(d16,PC) */ -{ CPUFUNC(op_87b_3), 0, 2171 }, /* BCHG.B #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_880_0), 0, 2176 }, /* BCLR.L #.W,Dn */ -{ CPUFUNC(op_890_0), 0, 2192 }, /* BCLR.B #.W,(An) */ -{ CPUFUNC(op_898_0), 0, 2200 }, /* BCLR.B #.W,(An)+ */ -{ CPUFUNC(op_8a0_0), 0, 2208 }, /* BCLR.B #.W,-(An) */ -{ CPUFUNC(op_8a8_0), 0, 2216 }, /* BCLR.B #.W,(d16,An) */ -{ CPUFUNC(op_8b0_3), 0, 2224 }, /* BCLR.B #.W,(d8,An,Xn) */ -{ CPUFUNC(op_8b8_0), 0, 2232 }, /* BCLR.B #.W,(xxx).W */ -{ CPUFUNC(op_8b9_0), 0, 2233 }, /* BCLR.B #.W,(xxx).L */ -{ CPUFUNC(op_8ba_0), 0, 2234 }, /* BCLR.B #.W,(d16,PC) */ -{ CPUFUNC(op_8bb_3), 0, 2235 }, /* BCLR.B #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_8c0_0), 0, 2240 }, /* BSET.L #.W,Dn */ -{ CPUFUNC(op_8d0_0), 0, 2256 }, /* BSET.B #.W,(An) */ -{ CPUFUNC(op_8d8_0), 0, 2264 }, /* BSET.B #.W,(An)+ */ -{ CPUFUNC(op_8e0_0), 0, 2272 }, /* BSET.B #.W,-(An) */ -{ CPUFUNC(op_8e8_0), 0, 2280 }, /* BSET.B #.W,(d16,An) */ -{ CPUFUNC(op_8f0_3), 0, 2288 }, /* BSET.B #.W,(d8,An,Xn) */ -{ CPUFUNC(op_8f8_0), 0, 2296 }, /* BSET.B #.W,(xxx).W */ -{ CPUFUNC(op_8f9_0), 0, 2297 }, /* BSET.B #.W,(xxx).L */ -{ CPUFUNC(op_8fa_0), 0, 2298 }, /* BSET.B #.W,(d16,PC) */ -{ CPUFUNC(op_8fb_3), 0, 2299 }, /* BSET.B #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_a00_0), 0, 2560 }, /* EOR.B #.B,Dn */ -{ CPUFUNC(op_a10_0), 0, 2576 }, /* EOR.B #.B,(An) */ -{ CPUFUNC(op_a18_0), 0, 2584 }, /* EOR.B #.B,(An)+ */ -{ CPUFUNC(op_a20_0), 0, 2592 }, /* EOR.B #.B,-(An) */ -{ CPUFUNC(op_a28_0), 0, 2600 }, /* EOR.B #.B,(d16,An) */ -{ CPUFUNC(op_a30_3), 0, 2608 }, /* EOR.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_a38_0), 0, 2616 }, /* EOR.B #.B,(xxx).W */ -{ CPUFUNC(op_a39_0), 0, 2617 }, /* EOR.B #.B,(xxx).L */ -{ CPUFUNC(op_a3c_0), 0, 2620 }, /* EORSR.B #.W */ -{ CPUFUNC(op_a40_0), 0, 2624 }, /* EOR.W #.W,Dn */ -{ CPUFUNC(op_a50_0), 0, 2640 }, /* EOR.W #.W,(An) */ -{ CPUFUNC(op_a58_0), 0, 2648 }, /* EOR.W #.W,(An)+ */ -{ CPUFUNC(op_a60_0), 0, 2656 }, /* EOR.W #.W,-(An) */ -{ CPUFUNC(op_a68_0), 0, 2664 }, /* EOR.W #.W,(d16,An) */ -{ CPUFUNC(op_a70_3), 0, 2672 }, /* EOR.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_a78_0), 0, 2680 }, /* EOR.W #.W,(xxx).W */ -{ CPUFUNC(op_a79_0), 0, 2681 }, /* EOR.W #.W,(xxx).L */ -{ CPUFUNC(op_a7c_0), 0, 2684 }, /* EORSR.W #.W */ -{ CPUFUNC(op_a80_0), 0, 2688 }, /* EOR.L #.L,Dn */ -{ CPUFUNC(op_a90_0), 0, 2704 }, /* EOR.L #.L,(An) */ -{ CPUFUNC(op_a98_0), 0, 2712 }, /* EOR.L #.L,(An)+ */ -{ CPUFUNC(op_aa0_0), 0, 2720 }, /* EOR.L #.L,-(An) */ -{ CPUFUNC(op_aa8_0), 0, 2728 }, /* EOR.L #.L,(d16,An) */ -{ CPUFUNC(op_ab0_3), 0, 2736 }, /* EOR.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_ab8_0), 0, 2744 }, /* EOR.L #.L,(xxx).W */ -{ CPUFUNC(op_ab9_0), 0, 2745 }, /* EOR.L #.L,(xxx).L */ -{ CPUFUNC(op_c00_0), 0, 3072 }, /* CMP.B #.B,Dn */ -{ CPUFUNC(op_c10_0), 0, 3088 }, /* CMP.B #.B,(An) */ -{ CPUFUNC(op_c18_0), 0, 3096 }, /* CMP.B #.B,(An)+ */ -{ CPUFUNC(op_c20_0), 0, 3104 }, /* CMP.B #.B,-(An) */ -{ CPUFUNC(op_c28_0), 0, 3112 }, /* CMP.B #.B,(d16,An) */ -{ CPUFUNC(op_c30_3), 0, 3120 }, /* CMP.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_c38_0), 0, 3128 }, /* CMP.B #.B,(xxx).W */ -{ CPUFUNC(op_c39_0), 0, 3129 }, /* CMP.B #.B,(xxx).L */ -{ CPUFUNC(op_c3a_0), 0, 3130 }, /* CMP.B #.B,(d16,PC) */ -{ CPUFUNC(op_c3b_3), 0, 3131 }, /* CMP.B #.B,(d8,PC,Xn) */ -{ CPUFUNC(op_c40_0), 0, 3136 }, /* CMP.W #.W,Dn */ -{ CPUFUNC(op_c50_0), 0, 3152 }, /* CMP.W #.W,(An) */ -{ CPUFUNC(op_c58_0), 0, 3160 }, /* CMP.W #.W,(An)+ */ -{ CPUFUNC(op_c60_0), 0, 3168 }, /* CMP.W #.W,-(An) */ -{ CPUFUNC(op_c68_0), 0, 3176 }, /* CMP.W #.W,(d16,An) */ -{ CPUFUNC(op_c70_3), 0, 3184 }, /* CMP.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_c78_0), 0, 3192 }, /* CMP.W #.W,(xxx).W */ -{ CPUFUNC(op_c79_0), 0, 3193 }, /* CMP.W #.W,(xxx).L */ -{ CPUFUNC(op_c7a_0), 0, 3194 }, /* CMP.W #.W,(d16,PC) */ -{ CPUFUNC(op_c7b_3), 0, 3195 }, /* CMP.W #.W,(d8,PC,Xn) */ -{ CPUFUNC(op_c80_0), 0, 3200 }, /* CMP.L #.L,Dn */ -{ CPUFUNC(op_c90_0), 0, 3216 }, /* CMP.L #.L,(An) */ -{ CPUFUNC(op_c98_0), 0, 3224 }, /* CMP.L #.L,(An)+ */ -{ CPUFUNC(op_ca0_0), 0, 3232 }, /* CMP.L #.L,-(An) */ -{ CPUFUNC(op_ca8_0), 0, 3240 }, /* CMP.L #.L,(d16,An) */ -{ CPUFUNC(op_cb0_3), 0, 3248 }, /* CMP.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_cb8_0), 0, 3256 }, /* CMP.L #.L,(xxx).W */ -{ CPUFUNC(op_cb9_0), 0, 3257 }, /* CMP.L #.L,(xxx).L */ -{ CPUFUNC(op_cba_0), 0, 3258 }, /* CMP.L #.L,(d16,PC) */ -{ CPUFUNC(op_cbb_3), 0, 3259 }, /* CMP.L #.L,(d8,PC,Xn) */ -{ CPUFUNC(op_1000_0), 0, 4096 }, /* MOVE.B Dn,Dn */ -{ CPUFUNC(op_1010_0), 0, 4112 }, /* MOVE.B (An),Dn */ -{ CPUFUNC(op_1018_0), 0, 4120 }, /* MOVE.B (An)+,Dn */ -{ CPUFUNC(op_1020_0), 0, 4128 }, /* MOVE.B -(An),Dn */ -{ CPUFUNC(op_1028_0), 0, 4136 }, /* MOVE.B (d16,An),Dn */ -{ CPUFUNC(op_1030_3), 0, 4144 }, /* MOVE.B (d8,An,Xn),Dn */ -{ CPUFUNC(op_1038_0), 0, 4152 }, /* MOVE.B (xxx).W,Dn */ -{ CPUFUNC(op_1039_0), 0, 4153 }, /* MOVE.B (xxx).L,Dn */ -{ CPUFUNC(op_103a_0), 0, 4154 }, /* MOVE.B (d16,PC),Dn */ -{ CPUFUNC(op_103b_3), 0, 4155 }, /* MOVE.B (d8,PC,Xn),Dn */ -{ CPUFUNC(op_103c_0), 0, 4156 }, /* MOVE.B #.B,Dn */ -{ CPUFUNC(op_1080_0), 0, 4224 }, /* MOVE.B Dn,(An) */ -{ CPUFUNC(op_1090_0), 0, 4240 }, /* MOVE.B (An),(An) */ -{ CPUFUNC(op_1098_0), 0, 4248 }, /* MOVE.B (An)+,(An) */ -{ CPUFUNC(op_10a0_0), 0, 4256 }, /* MOVE.B -(An),(An) */ -{ CPUFUNC(op_10a8_0), 0, 4264 }, /* MOVE.B (d16,An),(An) */ -{ CPUFUNC(op_10b0_3), 0, 4272 }, /* MOVE.B (d8,An,Xn),(An) */ -{ CPUFUNC(op_10b8_0), 0, 4280 }, /* MOVE.B (xxx).W,(An) */ -{ CPUFUNC(op_10b9_0), 0, 4281 }, /* MOVE.B (xxx).L,(An) */ -{ CPUFUNC(op_10ba_0), 0, 4282 }, /* MOVE.B (d16,PC),(An) */ -{ CPUFUNC(op_10bb_3), 0, 4283 }, /* MOVE.B (d8,PC,Xn),(An) */ -{ CPUFUNC(op_10bc_0), 0, 4284 }, /* MOVE.B #.B,(An) */ -{ CPUFUNC(op_10c0_0), 0, 4288 }, /* MOVE.B Dn,(An)+ */ -{ CPUFUNC(op_10d0_0), 0, 4304 }, /* MOVE.B (An),(An)+ */ -{ CPUFUNC(op_10d8_0), 0, 4312 }, /* MOVE.B (An)+,(An)+ */ -{ CPUFUNC(op_10e0_0), 0, 4320 }, /* MOVE.B -(An),(An)+ */ -{ CPUFUNC(op_10e8_0), 0, 4328 }, /* MOVE.B (d16,An),(An)+ */ -{ CPUFUNC(op_10f0_3), 0, 4336 }, /* MOVE.B (d8,An,Xn),(An)+ */ -{ CPUFUNC(op_10f8_0), 0, 4344 }, /* MOVE.B (xxx).W,(An)+ */ -{ CPUFUNC(op_10f9_0), 0, 4345 }, /* MOVE.B (xxx).L,(An)+ */ -{ CPUFUNC(op_10fa_0), 0, 4346 }, /* MOVE.B (d16,PC),(An)+ */ -{ CPUFUNC(op_10fb_3), 0, 4347 }, /* MOVE.B (d8,PC,Xn),(An)+ */ -{ CPUFUNC(op_10fc_0), 0, 4348 }, /* MOVE.B #.B,(An)+ */ -{ CPUFUNC(op_1100_0), 0, 4352 }, /* MOVE.B Dn,-(An) */ -{ CPUFUNC(op_1110_0), 0, 4368 }, /* MOVE.B (An),-(An) */ -{ CPUFUNC(op_1118_0), 0, 4376 }, /* MOVE.B (An)+,-(An) */ -{ CPUFUNC(op_1120_0), 0, 4384 }, /* MOVE.B -(An),-(An) */ -{ CPUFUNC(op_1128_0), 0, 4392 }, /* MOVE.B (d16,An),-(An) */ -{ CPUFUNC(op_1130_3), 0, 4400 }, /* MOVE.B (d8,An,Xn),-(An) */ -{ CPUFUNC(op_1138_0), 0, 4408 }, /* MOVE.B (xxx).W,-(An) */ -{ CPUFUNC(op_1139_0), 0, 4409 }, /* MOVE.B (xxx).L,-(An) */ -{ CPUFUNC(op_113a_0), 0, 4410 }, /* MOVE.B (d16,PC),-(An) */ -{ CPUFUNC(op_113b_3), 0, 4411 }, /* MOVE.B (d8,PC,Xn),-(An) */ -{ CPUFUNC(op_113c_0), 0, 4412 }, /* MOVE.B #.B,-(An) */ -{ CPUFUNC(op_1140_0), 0, 4416 }, /* MOVE.B Dn,(d16,An) */ -{ CPUFUNC(op_1150_0), 0, 4432 }, /* MOVE.B (An),(d16,An) */ -{ CPUFUNC(op_1158_0), 0, 4440 }, /* MOVE.B (An)+,(d16,An) */ -{ CPUFUNC(op_1160_0), 0, 4448 }, /* MOVE.B -(An),(d16,An) */ -{ CPUFUNC(op_1168_0), 0, 4456 }, /* MOVE.B (d16,An),(d16,An) */ -{ CPUFUNC(op_1170_3), 0, 4464 }, /* MOVE.B (d8,An,Xn),(d16,An) */ -{ CPUFUNC(op_1178_0), 0, 4472 }, /* MOVE.B (xxx).W,(d16,An) */ -{ CPUFUNC(op_1179_0), 0, 4473 }, /* MOVE.B (xxx).L,(d16,An) */ -{ CPUFUNC(op_117a_0), 0, 4474 }, /* MOVE.B (d16,PC),(d16,An) */ -{ CPUFUNC(op_117b_3), 0, 4475 }, /* MOVE.B (d8,PC,Xn),(d16,An) */ -{ CPUFUNC(op_117c_0), 0, 4476 }, /* MOVE.B #.B,(d16,An) */ -{ CPUFUNC(op_1180_3), 0, 4480 }, /* MOVE.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_1190_3), 0, 4496 }, /* MOVE.B (An),(d8,An,Xn) */ -{ CPUFUNC(op_1198_3), 0, 4504 }, /* MOVE.B (An)+,(d8,An,Xn) */ -{ CPUFUNC(op_11a0_3), 0, 4512 }, /* MOVE.B -(An),(d8,An,Xn) */ -{ CPUFUNC(op_11a8_3), 0, 4520 }, /* MOVE.B (d16,An),(d8,An,Xn) */ -{ CPUFUNC(op_11b0_3), 0, 4528 }, /* MOVE.B (d8,An,Xn),(d8,An,Xn) */ -{ CPUFUNC(op_11b8_3), 0, 4536 }, /* MOVE.B (xxx).W,(d8,An,Xn) */ -{ CPUFUNC(op_11b9_3), 0, 4537 }, /* MOVE.B (xxx).L,(d8,An,Xn) */ -{ CPUFUNC(op_11ba_3), 0, 4538 }, /* MOVE.B (d16,PC),(d8,An,Xn) */ -{ CPUFUNC(op_11bb_3), 0, 4539 }, /* MOVE.B (d8,PC,Xn),(d8,An,Xn) */ -{ CPUFUNC(op_11bc_3), 0, 4540 }, /* MOVE.B #.B,(d8,An,Xn) */ -{ CPUFUNC(op_11c0_0), 0, 4544 }, /* MOVE.B Dn,(xxx).W */ -{ CPUFUNC(op_11d0_0), 0, 4560 }, /* MOVE.B (An),(xxx).W */ -{ CPUFUNC(op_11d8_0), 0, 4568 }, /* MOVE.B (An)+,(xxx).W */ -{ CPUFUNC(op_11e0_0), 0, 4576 }, /* MOVE.B -(An),(xxx).W */ -{ CPUFUNC(op_11e8_0), 0, 4584 }, /* MOVE.B (d16,An),(xxx).W */ -{ CPUFUNC(op_11f0_3), 0, 4592 }, /* MOVE.B (d8,An,Xn),(xxx).W */ -{ CPUFUNC(op_11f8_0), 0, 4600 }, /* MOVE.B (xxx).W,(xxx).W */ -{ CPUFUNC(op_11f9_0), 0, 4601 }, /* MOVE.B (xxx).L,(xxx).W */ -{ CPUFUNC(op_11fa_0), 0, 4602 }, /* MOVE.B (d16,PC),(xxx).W */ -{ CPUFUNC(op_11fb_3), 0, 4603 }, /* MOVE.B (d8,PC,Xn),(xxx).W */ -{ CPUFUNC(op_11fc_0), 0, 4604 }, /* MOVE.B #.B,(xxx).W */ -{ CPUFUNC(op_13c0_0), 0, 5056 }, /* MOVE.B Dn,(xxx).L */ -{ CPUFUNC(op_13d0_0), 0, 5072 }, /* MOVE.B (An),(xxx).L */ -{ CPUFUNC(op_13d8_0), 0, 5080 }, /* MOVE.B (An)+,(xxx).L */ -{ CPUFUNC(op_13e0_0), 0, 5088 }, /* MOVE.B -(An),(xxx).L */ -{ CPUFUNC(op_13e8_0), 0, 5096 }, /* MOVE.B (d16,An),(xxx).L */ -{ CPUFUNC(op_13f0_3), 0, 5104 }, /* MOVE.B (d8,An,Xn),(xxx).L */ -{ CPUFUNC(op_13f8_0), 0, 5112 }, /* MOVE.B (xxx).W,(xxx).L */ -{ CPUFUNC(op_13f9_0), 0, 5113 }, /* MOVE.B (xxx).L,(xxx).L */ -{ CPUFUNC(op_13fa_0), 0, 5114 }, /* MOVE.B (d16,PC),(xxx).L */ -{ CPUFUNC(op_13fb_3), 0, 5115 }, /* MOVE.B (d8,PC,Xn),(xxx).L */ -{ CPUFUNC(op_13fc_0), 0, 5116 }, /* MOVE.B #.B,(xxx).L */ -{ CPUFUNC(op_2000_0), 0, 8192 }, /* MOVE.L Dn,Dn */ -{ CPUFUNC(op_2008_0), 0, 8200 }, /* MOVE.L An,Dn */ -{ CPUFUNC(op_2010_0), 0, 8208 }, /* MOVE.L (An),Dn */ -{ CPUFUNC(op_2018_0), 0, 8216 }, /* MOVE.L (An)+,Dn */ -{ CPUFUNC(op_2020_0), 0, 8224 }, /* MOVE.L -(An),Dn */ -{ CPUFUNC(op_2028_0), 0, 8232 }, /* MOVE.L (d16,An),Dn */ -{ CPUFUNC(op_2030_3), 0, 8240 }, /* MOVE.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_2038_0), 0, 8248 }, /* MOVE.L (xxx).W,Dn */ -{ CPUFUNC(op_2039_0), 0, 8249 }, /* MOVE.L (xxx).L,Dn */ -{ CPUFUNC(op_203a_0), 0, 8250 }, /* MOVE.L (d16,PC),Dn */ -{ CPUFUNC(op_203b_3), 0, 8251 }, /* MOVE.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_203c_0), 0, 8252 }, /* MOVE.L #.L,Dn */ -{ CPUFUNC_FF(op_2040_0), 0, 8256 }, /* MOVEA.L Dn,An */ -{ CPUFUNC_FF(op_2048_0), 0, 8264 }, /* MOVEA.L An,An */ -{ CPUFUNC_FF(op_2050_0), 0, 8272 }, /* MOVEA.L (An),An */ -{ CPUFUNC_FF(op_2058_0), 0, 8280 }, /* MOVEA.L (An)+,An */ -{ CPUFUNC_FF(op_2060_0), 0, 8288 }, /* MOVEA.L -(An),An */ -{ CPUFUNC_FF(op_2068_0), 0, 8296 }, /* MOVEA.L (d16,An),An */ -{ CPUFUNC_FF(op_2070_3), 0, 8304 }, /* MOVEA.L (d8,An,Xn),An */ -{ CPUFUNC_FF(op_2078_0), 0, 8312 }, /* MOVEA.L (xxx).W,An */ -{ CPUFUNC_FF(op_2079_0), 0, 8313 }, /* MOVEA.L (xxx).L,An */ -{ CPUFUNC_FF(op_207a_0), 0, 8314 }, /* MOVEA.L (d16,PC),An */ -{ CPUFUNC_FF(op_207b_3), 0, 8315 }, /* MOVEA.L (d8,PC,Xn),An */ -{ CPUFUNC_FF(op_207c_0), 0, 8316 }, /* MOVEA.L #.L,An */ -{ CPUFUNC(op_2080_0), 0, 8320 }, /* MOVE.L Dn,(An) */ -{ CPUFUNC(op_2088_0), 0, 8328 }, /* MOVE.L An,(An) */ -{ CPUFUNC(op_2090_0), 0, 8336 }, /* MOVE.L (An),(An) */ -{ CPUFUNC(op_2098_0), 0, 8344 }, /* MOVE.L (An)+,(An) */ -{ CPUFUNC(op_20a0_0), 0, 8352 }, /* MOVE.L -(An),(An) */ -{ CPUFUNC(op_20a8_0), 0, 8360 }, /* MOVE.L (d16,An),(An) */ -{ CPUFUNC(op_20b0_3), 0, 8368 }, /* MOVE.L (d8,An,Xn),(An) */ -{ CPUFUNC(op_20b8_0), 0, 8376 }, /* MOVE.L (xxx).W,(An) */ -{ CPUFUNC(op_20b9_0), 0, 8377 }, /* MOVE.L (xxx).L,(An) */ -{ CPUFUNC(op_20ba_0), 0, 8378 }, /* MOVE.L (d16,PC),(An) */ -{ CPUFUNC(op_20bb_3), 0, 8379 }, /* MOVE.L (d8,PC,Xn),(An) */ -{ CPUFUNC(op_20bc_0), 0, 8380 }, /* MOVE.L #.L,(An) */ -{ CPUFUNC(op_20c0_0), 0, 8384 }, /* MOVE.L Dn,(An)+ */ -{ CPUFUNC(op_20c8_0), 0, 8392 }, /* MOVE.L An,(An)+ */ -{ CPUFUNC(op_20d0_0), 0, 8400 }, /* MOVE.L (An),(An)+ */ -{ CPUFUNC(op_20d8_0), 0, 8408 }, /* MOVE.L (An)+,(An)+ */ -{ CPUFUNC(op_20e0_0), 0, 8416 }, /* MOVE.L -(An),(An)+ */ -{ CPUFUNC(op_20e8_0), 0, 8424 }, /* MOVE.L (d16,An),(An)+ */ -{ CPUFUNC(op_20f0_3), 0, 8432 }, /* MOVE.L (d8,An,Xn),(An)+ */ -{ CPUFUNC(op_20f8_0), 0, 8440 }, /* MOVE.L (xxx).W,(An)+ */ -{ CPUFUNC(op_20f9_0), 0, 8441 }, /* MOVE.L (xxx).L,(An)+ */ -{ CPUFUNC(op_20fa_0), 0, 8442 }, /* MOVE.L (d16,PC),(An)+ */ -{ CPUFUNC(op_20fb_3), 0, 8443 }, /* MOVE.L (d8,PC,Xn),(An)+ */ -{ CPUFUNC(op_20fc_0), 0, 8444 }, /* MOVE.L #.L,(An)+ */ -{ CPUFUNC(op_2100_0), 0, 8448 }, /* MOVE.L Dn,-(An) */ -{ CPUFUNC(op_2108_0), 0, 8456 }, /* MOVE.L An,-(An) */ -{ CPUFUNC(op_2110_0), 0, 8464 }, /* MOVE.L (An),-(An) */ -{ CPUFUNC(op_2118_0), 0, 8472 }, /* MOVE.L (An)+,-(An) */ -{ CPUFUNC(op_2120_0), 0, 8480 }, /* MOVE.L -(An),-(An) */ -{ CPUFUNC(op_2128_0), 0, 8488 }, /* MOVE.L (d16,An),-(An) */ -{ CPUFUNC(op_2130_3), 0, 8496 }, /* MOVE.L (d8,An,Xn),-(An) */ -{ CPUFUNC(op_2138_0), 0, 8504 }, /* MOVE.L (xxx).W,-(An) */ -{ CPUFUNC(op_2139_0), 0, 8505 }, /* MOVE.L (xxx).L,-(An) */ -{ CPUFUNC(op_213a_0), 0, 8506 }, /* MOVE.L (d16,PC),-(An) */ -{ CPUFUNC(op_213b_3), 0, 8507 }, /* MOVE.L (d8,PC,Xn),-(An) */ -{ CPUFUNC(op_213c_0), 0, 8508 }, /* MOVE.L #.L,-(An) */ -{ CPUFUNC(op_2140_0), 0, 8512 }, /* MOVE.L Dn,(d16,An) */ -{ CPUFUNC(op_2148_0), 0, 8520 }, /* MOVE.L An,(d16,An) */ -{ CPUFUNC(op_2150_0), 0, 8528 }, /* MOVE.L (An),(d16,An) */ -{ CPUFUNC(op_2158_0), 0, 8536 }, /* MOVE.L (An)+,(d16,An) */ -{ CPUFUNC(op_2160_0), 0, 8544 }, /* MOVE.L -(An),(d16,An) */ -{ CPUFUNC(op_2168_0), 0, 8552 }, /* MOVE.L (d16,An),(d16,An) */ -{ CPUFUNC(op_2170_3), 0, 8560 }, /* MOVE.L (d8,An,Xn),(d16,An) */ -{ CPUFUNC(op_2178_0), 0, 8568 }, /* MOVE.L (xxx).W,(d16,An) */ -{ CPUFUNC(op_2179_0), 0, 8569 }, /* MOVE.L (xxx).L,(d16,An) */ -{ CPUFUNC(op_217a_0), 0, 8570 }, /* MOVE.L (d16,PC),(d16,An) */ -{ CPUFUNC(op_217b_3), 0, 8571 }, /* MOVE.L (d8,PC,Xn),(d16,An) */ -{ CPUFUNC(op_217c_0), 0, 8572 }, /* MOVE.L #.L,(d16,An) */ -{ CPUFUNC(op_2180_3), 0, 8576 }, /* MOVE.L Dn,(d8,An,Xn) */ -{ CPUFUNC(op_2188_3), 0, 8584 }, /* MOVE.L An,(d8,An,Xn) */ -{ CPUFUNC(op_2190_3), 0, 8592 }, /* MOVE.L (An),(d8,An,Xn) */ -{ CPUFUNC(op_2198_3), 0, 8600 }, /* MOVE.L (An)+,(d8,An,Xn) */ -{ CPUFUNC(op_21a0_3), 0, 8608 }, /* MOVE.L -(An),(d8,An,Xn) */ -{ CPUFUNC(op_21a8_3), 0, 8616 }, /* MOVE.L (d16,An),(d8,An,Xn) */ -{ CPUFUNC(op_21b0_3), 0, 8624 }, /* MOVE.L (d8,An,Xn),(d8,An,Xn) */ -{ CPUFUNC(op_21b8_3), 0, 8632 }, /* MOVE.L (xxx).W,(d8,An,Xn) */ -{ CPUFUNC(op_21b9_3), 0, 8633 }, /* MOVE.L (xxx).L,(d8,An,Xn) */ -{ CPUFUNC(op_21ba_3), 0, 8634 }, /* MOVE.L (d16,PC),(d8,An,Xn) */ -{ CPUFUNC(op_21bb_3), 0, 8635 }, /* MOVE.L (d8,PC,Xn),(d8,An,Xn) */ -{ CPUFUNC(op_21bc_3), 0, 8636 }, /* MOVE.L #.L,(d8,An,Xn) */ -{ CPUFUNC(op_21c0_0), 0, 8640 }, /* MOVE.L Dn,(xxx).W */ -{ CPUFUNC(op_21c8_0), 0, 8648 }, /* MOVE.L An,(xxx).W */ -{ CPUFUNC(op_21d0_0), 0, 8656 }, /* MOVE.L (An),(xxx).W */ -{ CPUFUNC(op_21d8_0), 0, 8664 }, /* MOVE.L (An)+,(xxx).W */ -{ CPUFUNC(op_21e0_0), 0, 8672 }, /* MOVE.L -(An),(xxx).W */ -{ CPUFUNC(op_21e8_0), 0, 8680 }, /* MOVE.L (d16,An),(xxx).W */ -{ CPUFUNC(op_21f0_3), 0, 8688 }, /* MOVE.L (d8,An,Xn),(xxx).W */ -{ CPUFUNC(op_21f8_0), 0, 8696 }, /* MOVE.L (xxx).W,(xxx).W */ -{ CPUFUNC(op_21f9_0), 0, 8697 }, /* MOVE.L (xxx).L,(xxx).W */ -{ CPUFUNC(op_21fa_0), 0, 8698 }, /* MOVE.L (d16,PC),(xxx).W */ -{ CPUFUNC(op_21fb_3), 0, 8699 }, /* MOVE.L (d8,PC,Xn),(xxx).W */ -{ CPUFUNC(op_21fc_0), 0, 8700 }, /* MOVE.L #.L,(xxx).W */ -{ CPUFUNC(op_23c0_0), 0, 9152 }, /* MOVE.L Dn,(xxx).L */ -{ CPUFUNC(op_23c8_0), 0, 9160 }, /* MOVE.L An,(xxx).L */ -{ CPUFUNC(op_23d0_0), 0, 9168 }, /* MOVE.L (An),(xxx).L */ -{ CPUFUNC(op_23d8_0), 0, 9176 }, /* MOVE.L (An)+,(xxx).L */ -{ CPUFUNC(op_23e0_0), 0, 9184 }, /* MOVE.L -(An),(xxx).L */ -{ CPUFUNC(op_23e8_0), 0, 9192 }, /* MOVE.L (d16,An),(xxx).L */ -{ CPUFUNC(op_23f0_3), 0, 9200 }, /* MOVE.L (d8,An,Xn),(xxx).L */ -{ CPUFUNC(op_23f8_0), 0, 9208 }, /* MOVE.L (xxx).W,(xxx).L */ -{ CPUFUNC(op_23f9_0), 0, 9209 }, /* MOVE.L (xxx).L,(xxx).L */ -{ CPUFUNC(op_23fa_0), 0, 9210 }, /* MOVE.L (d16,PC),(xxx).L */ -{ CPUFUNC(op_23fb_3), 0, 9211 }, /* MOVE.L (d8,PC,Xn),(xxx).L */ -{ CPUFUNC(op_23fc_0), 0, 9212 }, /* MOVE.L #.L,(xxx).L */ -{ CPUFUNC(op_3000_0), 0, 12288 }, /* MOVE.W Dn,Dn */ -{ CPUFUNC(op_3008_0), 0, 12296 }, /* MOVE.W An,Dn */ -{ CPUFUNC(op_3010_0), 0, 12304 }, /* MOVE.W (An),Dn */ -{ CPUFUNC(op_3018_0), 0, 12312 }, /* MOVE.W (An)+,Dn */ -{ CPUFUNC(op_3020_0), 0, 12320 }, /* MOVE.W -(An),Dn */ -{ CPUFUNC(op_3028_0), 0, 12328 }, /* MOVE.W (d16,An),Dn */ -{ CPUFUNC(op_3030_3), 0, 12336 }, /* MOVE.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_3038_0), 0, 12344 }, /* MOVE.W (xxx).W,Dn */ -{ CPUFUNC(op_3039_0), 0, 12345 }, /* MOVE.W (xxx).L,Dn */ -{ CPUFUNC(op_303a_0), 0, 12346 }, /* MOVE.W (d16,PC),Dn */ -{ CPUFUNC(op_303b_3), 0, 12347 }, /* MOVE.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_303c_0), 0, 12348 }, /* MOVE.W #.W,Dn */ -{ CPUFUNC_FF(op_3040_0), 0, 12352 }, /* MOVEA.W Dn,An */ -{ CPUFUNC_FF(op_3048_0), 0, 12360 }, /* MOVEA.W An,An */ -{ CPUFUNC_FF(op_3050_0), 0, 12368 }, /* MOVEA.W (An),An */ -{ CPUFUNC_FF(op_3058_0), 0, 12376 }, /* MOVEA.W (An)+,An */ -{ CPUFUNC_FF(op_3060_0), 0, 12384 }, /* MOVEA.W -(An),An */ -{ CPUFUNC_FF(op_3068_0), 0, 12392 }, /* MOVEA.W (d16,An),An */ -{ CPUFUNC_FF(op_3070_3), 0, 12400 }, /* MOVEA.W (d8,An,Xn),An */ -{ CPUFUNC_FF(op_3078_0), 0, 12408 }, /* MOVEA.W (xxx).W,An */ -{ CPUFUNC_FF(op_3079_0), 0, 12409 }, /* MOVEA.W (xxx).L,An */ -{ CPUFUNC_FF(op_307a_0), 0, 12410 }, /* MOVEA.W (d16,PC),An */ -{ CPUFUNC_FF(op_307b_3), 0, 12411 }, /* MOVEA.W (d8,PC,Xn),An */ -{ CPUFUNC_FF(op_307c_0), 0, 12412 }, /* MOVEA.W #.W,An */ -{ CPUFUNC(op_3080_0), 0, 12416 }, /* MOVE.W Dn,(An) */ -{ CPUFUNC(op_3088_0), 0, 12424 }, /* MOVE.W An,(An) */ -{ CPUFUNC(op_3090_0), 0, 12432 }, /* MOVE.W (An),(An) */ -{ CPUFUNC(op_3098_0), 0, 12440 }, /* MOVE.W (An)+,(An) */ -{ CPUFUNC(op_30a0_0), 0, 12448 }, /* MOVE.W -(An),(An) */ -{ CPUFUNC(op_30a8_0), 0, 12456 }, /* MOVE.W (d16,An),(An) */ -{ CPUFUNC(op_30b0_3), 0, 12464 }, /* MOVE.W (d8,An,Xn),(An) */ -{ CPUFUNC(op_30b8_0), 0, 12472 }, /* MOVE.W (xxx).W,(An) */ -{ CPUFUNC(op_30b9_0), 0, 12473 }, /* MOVE.W (xxx).L,(An) */ -{ CPUFUNC(op_30ba_0), 0, 12474 }, /* MOVE.W (d16,PC),(An) */ -{ CPUFUNC(op_30bb_3), 0, 12475 }, /* MOVE.W (d8,PC,Xn),(An) */ -{ CPUFUNC(op_30bc_0), 0, 12476 }, /* MOVE.W #.W,(An) */ -{ CPUFUNC(op_30c0_0), 0, 12480 }, /* MOVE.W Dn,(An)+ */ -{ CPUFUNC(op_30c8_0), 0, 12488 }, /* MOVE.W An,(An)+ */ -{ CPUFUNC(op_30d0_0), 0, 12496 }, /* MOVE.W (An),(An)+ */ -{ CPUFUNC(op_30d8_0), 0, 12504 }, /* MOVE.W (An)+,(An)+ */ -{ CPUFUNC(op_30e0_0), 0, 12512 }, /* MOVE.W -(An),(An)+ */ -{ CPUFUNC(op_30e8_0), 0, 12520 }, /* MOVE.W (d16,An),(An)+ */ -{ CPUFUNC(op_30f0_3), 0, 12528 }, /* MOVE.W (d8,An,Xn),(An)+ */ -{ CPUFUNC(op_30f8_0), 0, 12536 }, /* MOVE.W (xxx).W,(An)+ */ -{ CPUFUNC(op_30f9_0), 0, 12537 }, /* MOVE.W (xxx).L,(An)+ */ -{ CPUFUNC(op_30fa_0), 0, 12538 }, /* MOVE.W (d16,PC),(An)+ */ -{ CPUFUNC(op_30fb_3), 0, 12539 }, /* MOVE.W (d8,PC,Xn),(An)+ */ -{ CPUFUNC(op_30fc_0), 0, 12540 }, /* MOVE.W #.W,(An)+ */ -{ CPUFUNC(op_3100_0), 0, 12544 }, /* MOVE.W Dn,-(An) */ -{ CPUFUNC(op_3108_0), 0, 12552 }, /* MOVE.W An,-(An) */ -{ CPUFUNC(op_3110_0), 0, 12560 }, /* MOVE.W (An),-(An) */ -{ CPUFUNC(op_3118_0), 0, 12568 }, /* MOVE.W (An)+,-(An) */ -{ CPUFUNC(op_3120_0), 0, 12576 }, /* MOVE.W -(An),-(An) */ -{ CPUFUNC(op_3128_0), 0, 12584 }, /* MOVE.W (d16,An),-(An) */ -{ CPUFUNC(op_3130_3), 0, 12592 }, /* MOVE.W (d8,An,Xn),-(An) */ -{ CPUFUNC(op_3138_0), 0, 12600 }, /* MOVE.W (xxx).W,-(An) */ -{ CPUFUNC(op_3139_0), 0, 12601 }, /* MOVE.W (xxx).L,-(An) */ -{ CPUFUNC(op_313a_0), 0, 12602 }, /* MOVE.W (d16,PC),-(An) */ -{ CPUFUNC(op_313b_3), 0, 12603 }, /* MOVE.W (d8,PC,Xn),-(An) */ -{ CPUFUNC(op_313c_0), 0, 12604 }, /* MOVE.W #.W,-(An) */ -{ CPUFUNC(op_3140_0), 0, 12608 }, /* MOVE.W Dn,(d16,An) */ -{ CPUFUNC(op_3148_0), 0, 12616 }, /* MOVE.W An,(d16,An) */ -{ CPUFUNC(op_3150_0), 0, 12624 }, /* MOVE.W (An),(d16,An) */ -{ CPUFUNC(op_3158_0), 0, 12632 }, /* MOVE.W (An)+,(d16,An) */ -{ CPUFUNC(op_3160_0), 0, 12640 }, /* MOVE.W -(An),(d16,An) */ -{ CPUFUNC(op_3168_0), 0, 12648 }, /* MOVE.W (d16,An),(d16,An) */ -{ CPUFUNC(op_3170_3), 0, 12656 }, /* MOVE.W (d8,An,Xn),(d16,An) */ -{ CPUFUNC(op_3178_0), 0, 12664 }, /* MOVE.W (xxx).W,(d16,An) */ -{ CPUFUNC(op_3179_0), 0, 12665 }, /* MOVE.W (xxx).L,(d16,An) */ -{ CPUFUNC(op_317a_0), 0, 12666 }, /* MOVE.W (d16,PC),(d16,An) */ -{ CPUFUNC(op_317b_3), 0, 12667 }, /* MOVE.W (d8,PC,Xn),(d16,An) */ -{ CPUFUNC(op_317c_0), 0, 12668 }, /* MOVE.W #.W,(d16,An) */ -{ CPUFUNC(op_3180_3), 0, 12672 }, /* MOVE.W Dn,(d8,An,Xn) */ -{ CPUFUNC(op_3188_3), 0, 12680 }, /* MOVE.W An,(d8,An,Xn) */ -{ CPUFUNC(op_3190_3), 0, 12688 }, /* MOVE.W (An),(d8,An,Xn) */ -{ CPUFUNC(op_3198_3), 0, 12696 }, /* MOVE.W (An)+,(d8,An,Xn) */ -{ CPUFUNC(op_31a0_3), 0, 12704 }, /* MOVE.W -(An),(d8,An,Xn) */ -{ CPUFUNC(op_31a8_3), 0, 12712 }, /* MOVE.W (d16,An),(d8,An,Xn) */ -{ CPUFUNC(op_31b0_3), 0, 12720 }, /* MOVE.W (d8,An,Xn),(d8,An,Xn) */ -{ CPUFUNC(op_31b8_3), 0, 12728 }, /* MOVE.W (xxx).W,(d8,An,Xn) */ -{ CPUFUNC(op_31b9_3), 0, 12729 }, /* MOVE.W (xxx).L,(d8,An,Xn) */ -{ CPUFUNC(op_31ba_3), 0, 12730 }, /* MOVE.W (d16,PC),(d8,An,Xn) */ -{ CPUFUNC(op_31bb_3), 0, 12731 }, /* MOVE.W (d8,PC,Xn),(d8,An,Xn) */ -{ CPUFUNC(op_31bc_3), 0, 12732 }, /* MOVE.W #.W,(d8,An,Xn) */ -{ CPUFUNC(op_31c0_0), 0, 12736 }, /* MOVE.W Dn,(xxx).W */ -{ CPUFUNC(op_31c8_0), 0, 12744 }, /* MOVE.W An,(xxx).W */ -{ CPUFUNC(op_31d0_0), 0, 12752 }, /* MOVE.W (An),(xxx).W */ -{ CPUFUNC(op_31d8_0), 0, 12760 }, /* MOVE.W (An)+,(xxx).W */ -{ CPUFUNC(op_31e0_0), 0, 12768 }, /* MOVE.W -(An),(xxx).W */ -{ CPUFUNC(op_31e8_0), 0, 12776 }, /* MOVE.W (d16,An),(xxx).W */ -{ CPUFUNC(op_31f0_3), 0, 12784 }, /* MOVE.W (d8,An,Xn),(xxx).W */ -{ CPUFUNC(op_31f8_0), 0, 12792 }, /* MOVE.W (xxx).W,(xxx).W */ -{ CPUFUNC(op_31f9_0), 0, 12793 }, /* MOVE.W (xxx).L,(xxx).W */ -{ CPUFUNC(op_31fa_0), 0, 12794 }, /* MOVE.W (d16,PC),(xxx).W */ -{ CPUFUNC(op_31fb_3), 0, 12795 }, /* MOVE.W (d8,PC,Xn),(xxx).W */ -{ CPUFUNC(op_31fc_0), 0, 12796 }, /* MOVE.W #.W,(xxx).W */ -{ CPUFUNC(op_33c0_0), 0, 13248 }, /* MOVE.W Dn,(xxx).L */ -{ CPUFUNC(op_33c8_0), 0, 13256 }, /* MOVE.W An,(xxx).L */ -{ CPUFUNC(op_33d0_0), 0, 13264 }, /* MOVE.W (An),(xxx).L */ -{ CPUFUNC(op_33d8_0), 0, 13272 }, /* MOVE.W (An)+,(xxx).L */ -{ CPUFUNC(op_33e0_0), 0, 13280 }, /* MOVE.W -(An),(xxx).L */ -{ CPUFUNC(op_33e8_0), 0, 13288 }, /* MOVE.W (d16,An),(xxx).L */ -{ CPUFUNC(op_33f0_3), 0, 13296 }, /* MOVE.W (d8,An,Xn),(xxx).L */ -{ CPUFUNC(op_33f8_0), 0, 13304 }, /* MOVE.W (xxx).W,(xxx).L */ -{ CPUFUNC(op_33f9_0), 0, 13305 }, /* MOVE.W (xxx).L,(xxx).L */ -{ CPUFUNC(op_33fa_0), 0, 13306 }, /* MOVE.W (d16,PC),(xxx).L */ -{ CPUFUNC(op_33fb_3), 0, 13307 }, /* MOVE.W (d8,PC,Xn),(xxx).L */ -{ CPUFUNC(op_33fc_0), 0, 13308 }, /* MOVE.W #.W,(xxx).L */ -{ CPUFUNC(op_4000_0), 0, 16384 }, /* NEGX.B Dn */ -{ CPUFUNC(op_4010_0), 0, 16400 }, /* NEGX.B (An) */ -{ CPUFUNC(op_4018_0), 0, 16408 }, /* NEGX.B (An)+ */ -{ CPUFUNC(op_4020_0), 0, 16416 }, /* NEGX.B -(An) */ -{ CPUFUNC(op_4028_0), 0, 16424 }, /* NEGX.B (d16,An) */ -{ CPUFUNC(op_4030_3), 0, 16432 }, /* NEGX.B (d8,An,Xn) */ -{ CPUFUNC(op_4038_0), 0, 16440 }, /* NEGX.B (xxx).W */ -{ CPUFUNC(op_4039_0), 0, 16441 }, /* NEGX.B (xxx).L */ -{ CPUFUNC(op_4040_0), 0, 16448 }, /* NEGX.W Dn */ -{ CPUFUNC(op_4050_0), 0, 16464 }, /* NEGX.W (An) */ -{ CPUFUNC(op_4058_0), 0, 16472 }, /* NEGX.W (An)+ */ -{ CPUFUNC(op_4060_0), 0, 16480 }, /* NEGX.W -(An) */ -{ CPUFUNC(op_4068_0), 0, 16488 }, /* NEGX.W (d16,An) */ -{ CPUFUNC(op_4070_3), 0, 16496 }, /* NEGX.W (d8,An,Xn) */ -{ CPUFUNC(op_4078_0), 0, 16504 }, /* NEGX.W (xxx).W */ -{ CPUFUNC(op_4079_0), 0, 16505 }, /* NEGX.W (xxx).L */ -{ CPUFUNC(op_4080_0), 0, 16512 }, /* NEGX.L Dn */ -{ CPUFUNC(op_4090_0), 0, 16528 }, /* NEGX.L (An) */ -{ CPUFUNC(op_4098_0), 0, 16536 }, /* NEGX.L (An)+ */ -{ CPUFUNC(op_40a0_0), 0, 16544 }, /* NEGX.L -(An) */ -{ CPUFUNC(op_40a8_0), 0, 16552 }, /* NEGX.L (d16,An) */ -{ CPUFUNC(op_40b0_3), 0, 16560 }, /* NEGX.L (d8,An,Xn) */ -{ CPUFUNC(op_40b8_0), 0, 16568 }, /* NEGX.L (xxx).W */ -{ CPUFUNC(op_40b9_0), 0, 16569 }, /* NEGX.L (xxx).L */ -{ CPUFUNC_FF(op_40c0_4), 0, 16576 }, /* MVSR2.W Dn */ -{ CPUFUNC_FF(op_40d0_4), 0, 16592 }, /* MVSR2.W (An) */ -{ CPUFUNC_FF(op_40d8_4), 0, 16600 }, /* MVSR2.W (An)+ */ -{ CPUFUNC_FF(op_40e0_4), 0, 16608 }, /* MVSR2.W -(An) */ -{ CPUFUNC_FF(op_40e8_4), 0, 16616 }, /* MVSR2.W (d16,An) */ -{ CPUFUNC_FF(op_40f0_4), 0, 16624 }, /* MVSR2.W (d8,An,Xn) */ -{ CPUFUNC_FF(op_40f8_4), 0, 16632 }, /* MVSR2.W (xxx).W */ -{ CPUFUNC_FF(op_40f9_4), 0, 16633 }, /* MVSR2.W (xxx).L */ -{ CPUFUNC(op_4100_0), 0, 16640 }, /* CHK.L Dn,Dn */ -{ CPUFUNC(op_4110_0), 0, 16656 }, /* CHK.L (An),Dn */ -{ CPUFUNC(op_4118_0), 0, 16664 }, /* CHK.L (An)+,Dn */ -{ CPUFUNC(op_4120_0), 0, 16672 }, /* CHK.L -(An),Dn */ -{ CPUFUNC(op_4128_0), 0, 16680 }, /* CHK.L (d16,An),Dn */ -{ CPUFUNC(op_4130_3), 0, 16688 }, /* CHK.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_4138_0), 0, 16696 }, /* CHK.L (xxx).W,Dn */ -{ CPUFUNC(op_4139_0), 0, 16697 }, /* CHK.L (xxx).L,Dn */ -{ CPUFUNC(op_413a_0), 0, 16698 }, /* CHK.L (d16,PC),Dn */ -{ CPUFUNC(op_413b_3), 0, 16699 }, /* CHK.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_413c_0), 0, 16700 }, /* CHK.L #.L,Dn */ -{ CPUFUNC(op_4180_0), 0, 16768 }, /* CHK.W Dn,Dn */ -{ CPUFUNC(op_4190_0), 0, 16784 }, /* CHK.W (An),Dn */ -{ CPUFUNC(op_4198_0), 0, 16792 }, /* CHK.W (An)+,Dn */ -{ CPUFUNC(op_41a0_0), 0, 16800 }, /* CHK.W -(An),Dn */ -{ CPUFUNC(op_41a8_0), 0, 16808 }, /* CHK.W (d16,An),Dn */ -{ CPUFUNC(op_41b0_3), 0, 16816 }, /* CHK.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_41b8_0), 0, 16824 }, /* CHK.W (xxx).W,Dn */ -{ CPUFUNC(op_41b9_0), 0, 16825 }, /* CHK.W (xxx).L,Dn */ -{ CPUFUNC(op_41ba_0), 0, 16826 }, /* CHK.W (d16,PC),Dn */ -{ CPUFUNC(op_41bb_3), 0, 16827 }, /* CHK.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_41bc_0), 0, 16828 }, /* CHK.W #.W,Dn */ -{ CPUFUNC_FF(op_41d0_0), 0, 16848 }, /* LEA.L (An),An */ -{ CPUFUNC_FF(op_41e8_0), 0, 16872 }, /* LEA.L (d16,An),An */ -{ CPUFUNC_FF(op_41f0_3), 0, 16880 }, /* LEA.L (d8,An,Xn),An */ -{ CPUFUNC_FF(op_41f8_0), 0, 16888 }, /* LEA.L (xxx).W,An */ -{ CPUFUNC_FF(op_41f9_0), 0, 16889 }, /* LEA.L (xxx).L,An */ -{ CPUFUNC_FF(op_41fa_0), 0, 16890 }, /* LEA.L (d16,PC),An */ -{ CPUFUNC_FF(op_41fb_3), 0, 16891 }, /* LEA.L (d8,PC,Xn),An */ -{ CPUFUNC(op_4200_0), 0, 16896 }, /* CLR.B Dn */ -{ CPUFUNC(op_4210_0), 0, 16912 }, /* CLR.B (An) */ -{ CPUFUNC(op_4218_0), 0, 16920 }, /* CLR.B (An)+ */ -{ CPUFUNC(op_4220_0), 0, 16928 }, /* CLR.B -(An) */ -{ CPUFUNC(op_4228_0), 0, 16936 }, /* CLR.B (d16,An) */ -{ CPUFUNC(op_4230_3), 0, 16944 }, /* CLR.B (d8,An,Xn) */ -{ CPUFUNC(op_4238_0), 0, 16952 }, /* CLR.B (xxx).W */ -{ CPUFUNC(op_4239_0), 0, 16953 }, /* CLR.B (xxx).L */ -{ CPUFUNC(op_4240_0), 0, 16960 }, /* CLR.W Dn */ -{ CPUFUNC(op_4250_0), 0, 16976 }, /* CLR.W (An) */ -{ CPUFUNC(op_4258_0), 0, 16984 }, /* CLR.W (An)+ */ -{ CPUFUNC(op_4260_0), 0, 16992 }, /* CLR.W -(An) */ -{ CPUFUNC(op_4268_0), 0, 17000 }, /* CLR.W (d16,An) */ -{ CPUFUNC(op_4270_3), 0, 17008 }, /* CLR.W (d8,An,Xn) */ -{ CPUFUNC(op_4278_0), 0, 17016 }, /* CLR.W (xxx).W */ -{ CPUFUNC(op_4279_0), 0, 17017 }, /* CLR.W (xxx).L */ -{ CPUFUNC(op_4280_0), 0, 17024 }, /* CLR.L Dn */ -{ CPUFUNC(op_4290_0), 0, 17040 }, /* CLR.L (An) */ -{ CPUFUNC(op_4298_0), 0, 17048 }, /* CLR.L (An)+ */ -{ CPUFUNC(op_42a0_0), 0, 17056 }, /* CLR.L -(An) */ -{ CPUFUNC(op_42a8_0), 0, 17064 }, /* CLR.L (d16,An) */ -{ CPUFUNC(op_42b0_3), 0, 17072 }, /* CLR.L (d8,An,Xn) */ -{ CPUFUNC(op_42b8_0), 0, 17080 }, /* CLR.L (xxx).W */ -{ CPUFUNC(op_42b9_0), 0, 17081 }, /* CLR.L (xxx).L */ -{ CPUFUNC(op_4400_0), 0, 17408 }, /* NEG.B Dn */ -{ CPUFUNC(op_4410_0), 0, 17424 }, /* NEG.B (An) */ -{ CPUFUNC(op_4418_0), 0, 17432 }, /* NEG.B (An)+ */ -{ CPUFUNC(op_4420_0), 0, 17440 }, /* NEG.B -(An) */ -{ CPUFUNC(op_4428_0), 0, 17448 }, /* NEG.B (d16,An) */ -{ CPUFUNC(op_4430_3), 0, 17456 }, /* NEG.B (d8,An,Xn) */ -{ CPUFUNC(op_4438_0), 0, 17464 }, /* NEG.B (xxx).W */ -{ CPUFUNC(op_4439_0), 0, 17465 }, /* NEG.B (xxx).L */ -{ CPUFUNC(op_4440_0), 0, 17472 }, /* NEG.W Dn */ -{ CPUFUNC(op_4450_0), 0, 17488 }, /* NEG.W (An) */ -{ CPUFUNC(op_4458_0), 0, 17496 }, /* NEG.W (An)+ */ -{ CPUFUNC(op_4460_0), 0, 17504 }, /* NEG.W -(An) */ -{ CPUFUNC(op_4468_0), 0, 17512 }, /* NEG.W (d16,An) */ -{ CPUFUNC(op_4470_3), 0, 17520 }, /* NEG.W (d8,An,Xn) */ -{ CPUFUNC(op_4478_0), 0, 17528 }, /* NEG.W (xxx).W */ -{ CPUFUNC(op_4479_0), 0, 17529 }, /* NEG.W (xxx).L */ -{ CPUFUNC(op_4480_0), 0, 17536 }, /* NEG.L Dn */ -{ CPUFUNC(op_4490_0), 0, 17552 }, /* NEG.L (An) */ -{ CPUFUNC(op_4498_0), 0, 17560 }, /* NEG.L (An)+ */ -{ CPUFUNC(op_44a0_0), 0, 17568 }, /* NEG.L -(An) */ -{ CPUFUNC(op_44a8_0), 0, 17576 }, /* NEG.L (d16,An) */ -{ CPUFUNC(op_44b0_3), 0, 17584 }, /* NEG.L (d8,An,Xn) */ -{ CPUFUNC(op_44b8_0), 0, 17592 }, /* NEG.L (xxx).W */ -{ CPUFUNC(op_44b9_0), 0, 17593 }, /* NEG.L (xxx).L */ -{ CPUFUNC(op_44c0_0), 0, 17600 }, /* MV2SR.B Dn */ -{ CPUFUNC(op_44d0_0), 0, 17616 }, /* MV2SR.B (An) */ -{ CPUFUNC(op_44d8_0), 0, 17624 }, /* MV2SR.B (An)+ */ -{ CPUFUNC(op_44e0_0), 0, 17632 }, /* MV2SR.B -(An) */ -{ CPUFUNC(op_44e8_0), 0, 17640 }, /* MV2SR.B (d16,An) */ -{ CPUFUNC(op_44f0_3), 0, 17648 }, /* MV2SR.B (d8,An,Xn) */ -{ CPUFUNC(op_44f8_0), 0, 17656 }, /* MV2SR.B (xxx).W */ -{ CPUFUNC(op_44f9_0), 0, 17657 }, /* MV2SR.B (xxx).L */ -{ CPUFUNC(op_44fa_0), 0, 17658 }, /* MV2SR.B (d16,PC) */ -{ CPUFUNC(op_44fb_3), 0, 17659 }, /* MV2SR.B (d8,PC,Xn) */ -{ CPUFUNC(op_44fc_0), 0, 17660 }, /* MV2SR.B #.B */ -{ CPUFUNC(op_4600_0), 0, 17920 }, /* NOT.B Dn */ -{ CPUFUNC(op_4610_0), 0, 17936 }, /* NOT.B (An) */ -{ CPUFUNC(op_4618_0), 0, 17944 }, /* NOT.B (An)+ */ -{ CPUFUNC(op_4620_0), 0, 17952 }, /* NOT.B -(An) */ -{ CPUFUNC(op_4628_0), 0, 17960 }, /* NOT.B (d16,An) */ -{ CPUFUNC(op_4630_3), 0, 17968 }, /* NOT.B (d8,An,Xn) */ -{ CPUFUNC(op_4638_0), 0, 17976 }, /* NOT.B (xxx).W */ -{ CPUFUNC(op_4639_0), 0, 17977 }, /* NOT.B (xxx).L */ -{ CPUFUNC(op_4640_0), 0, 17984 }, /* NOT.W Dn */ -{ CPUFUNC(op_4650_0), 0, 18000 }, /* NOT.W (An) */ -{ CPUFUNC(op_4658_0), 0, 18008 }, /* NOT.W (An)+ */ -{ CPUFUNC(op_4660_0), 0, 18016 }, /* NOT.W -(An) */ -{ CPUFUNC(op_4668_0), 0, 18024 }, /* NOT.W (d16,An) */ -{ CPUFUNC(op_4670_3), 0, 18032 }, /* NOT.W (d8,An,Xn) */ -{ CPUFUNC(op_4678_0), 0, 18040 }, /* NOT.W (xxx).W */ -{ CPUFUNC(op_4679_0), 0, 18041 }, /* NOT.W (xxx).L */ -{ CPUFUNC(op_4680_0), 0, 18048 }, /* NOT.L Dn */ -{ CPUFUNC(op_4690_0), 0, 18064 }, /* NOT.L (An) */ -{ CPUFUNC(op_4698_0), 0, 18072 }, /* NOT.L (An)+ */ -{ CPUFUNC(op_46a0_0), 0, 18080 }, /* NOT.L -(An) */ -{ CPUFUNC(op_46a8_0), 0, 18088 }, /* NOT.L (d16,An) */ -{ CPUFUNC(op_46b0_3), 0, 18096 }, /* NOT.L (d8,An,Xn) */ -{ CPUFUNC(op_46b8_0), 0, 18104 }, /* NOT.L (xxx).W */ -{ CPUFUNC(op_46b9_0), 0, 18105 }, /* NOT.L (xxx).L */ -{ CPUFUNC(op_46c0_0), 0, 18112 }, /* MV2SR.W Dn */ -{ CPUFUNC(op_46d0_0), 0, 18128 }, /* MV2SR.W (An) */ -{ CPUFUNC(op_46d8_0), 0, 18136 }, /* MV2SR.W (An)+ */ -{ CPUFUNC(op_46e0_0), 0, 18144 }, /* MV2SR.W -(An) */ -{ CPUFUNC(op_46e8_0), 0, 18152 }, /* MV2SR.W (d16,An) */ -{ CPUFUNC(op_46f0_3), 0, 18160 }, /* MV2SR.W (d8,An,Xn) */ -{ CPUFUNC(op_46f8_0), 0, 18168 }, /* MV2SR.W (xxx).W */ -{ CPUFUNC(op_46f9_0), 0, 18169 }, /* MV2SR.W (xxx).L */ -{ CPUFUNC(op_46fa_0), 0, 18170 }, /* MV2SR.W (d16,PC) */ -{ CPUFUNC(op_46fb_3), 0, 18171 }, /* MV2SR.W (d8,PC,Xn) */ -{ CPUFUNC(op_46fc_0), 0, 18172 }, /* MV2SR.W #.W */ -{ CPUFUNC(op_4800_1), 0, 18432 }, /* NBCD.B Dn */ -{ CPUFUNC(op_4810_1), 0, 18448 }, /* NBCD.B (An) */ -{ CPUFUNC(op_4818_1), 0, 18456 }, /* NBCD.B (An)+ */ -{ CPUFUNC(op_4820_1), 0, 18464 }, /* NBCD.B -(An) */ -{ CPUFUNC(op_4828_1), 0, 18472 }, /* NBCD.B (d16,An) */ -{ CPUFUNC(op_4830_3), 0, 18480 }, /* NBCD.B (d8,An,Xn) */ -{ CPUFUNC(op_4838_1), 0, 18488 }, /* NBCD.B (xxx).W */ -{ CPUFUNC(op_4839_1), 0, 18489 }, /* NBCD.B (xxx).L */ -{ CPUFUNC(op_4840_0), 0, 18496 }, /* SWAP.W Dn */ -{ CPUFUNC_FF(op_4850_0), 0, 18512 }, /* PEA.L (An) */ -{ CPUFUNC_FF(op_4868_0), 0, 18536 }, /* PEA.L (d16,An) */ -{ CPUFUNC_FF(op_4870_3), 0, 18544 }, /* PEA.L (d8,An,Xn) */ -{ CPUFUNC_FF(op_4878_0), 0, 18552 }, /* PEA.L (xxx).W */ -{ CPUFUNC_FF(op_4879_0), 0, 18553 }, /* PEA.L (xxx).L */ -{ CPUFUNC_FF(op_487a_0), 0, 18554 }, /* PEA.L (d16,PC) */ -{ CPUFUNC_FF(op_487b_3), 0, 18555 }, /* PEA.L (d8,PC,Xn) */ -{ CPUFUNC(op_4880_0), 0, 18560 }, /* EXT.W Dn */ -{ CPUFUNC_FF(op_4890_0), 0, 18576 }, /* MVMLE.W #.W,(An) */ -{ CPUFUNC_FF(op_48a0_0), 0, 18592 }, /* MVMLE.W #.W,-(An) */ -{ CPUFUNC_FF(op_48a8_0), 0, 18600 }, /* MVMLE.W #.W,(d16,An) */ -{ CPUFUNC_FF(op_48b0_3), 0, 18608 }, /* MVMLE.W #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_48b8_0), 0, 18616 }, /* MVMLE.W #.W,(xxx).W */ -{ CPUFUNC_FF(op_48b9_0), 0, 18617 }, /* MVMLE.W #.W,(xxx).L */ -{ CPUFUNC(op_48c0_0), 0, 18624 }, /* EXT.L Dn */ -{ CPUFUNC_FF(op_48d0_0), 0, 18640 }, /* MVMLE.L #.W,(An) */ -{ CPUFUNC_FF(op_48e0_0), 0, 18656 }, /* MVMLE.L #.W,-(An) */ -{ CPUFUNC_FF(op_48e8_0), 0, 18664 }, /* MVMLE.L #.W,(d16,An) */ -{ CPUFUNC_FF(op_48f0_3), 0, 18672 }, /* MVMLE.L #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_48f8_0), 0, 18680 }, /* MVMLE.L #.W,(xxx).W */ -{ CPUFUNC_FF(op_48f9_0), 0, 18681 }, /* MVMLE.L #.W,(xxx).L */ -{ CPUFUNC(op_49c0_0), 0, 18880 }, /* EXT.B Dn */ -{ CPUFUNC(op_4a00_0), 0, 18944 }, /* TST.B Dn */ -{ CPUFUNC(op_4a10_0), 0, 18960 }, /* TST.B (An) */ -{ CPUFUNC(op_4a18_0), 0, 18968 }, /* TST.B (An)+ */ -{ CPUFUNC(op_4a20_0), 0, 18976 }, /* TST.B -(An) */ -{ CPUFUNC(op_4a28_0), 0, 18984 }, /* TST.B (d16,An) */ -{ CPUFUNC(op_4a30_3), 0, 18992 }, /* TST.B (d8,An,Xn) */ -{ CPUFUNC(op_4a38_0), 0, 19000 }, /* TST.B (xxx).W */ -{ CPUFUNC(op_4a39_0), 0, 19001 }, /* TST.B (xxx).L */ -{ CPUFUNC(op_4a3a_0), 0, 19002 }, /* TST.B (d16,PC) */ -{ CPUFUNC(op_4a3b_3), 0, 19003 }, /* TST.B (d8,PC,Xn) */ -{ CPUFUNC(op_4a3c_0), 0, 19004 }, /* TST.B #.B */ -{ CPUFUNC(op_4a40_0), 0, 19008 }, /* TST.W Dn */ -{ CPUFUNC(op_4a48_0), 0, 19016 }, /* TST.W An */ -{ CPUFUNC(op_4a50_0), 0, 19024 }, /* TST.W (An) */ -{ CPUFUNC(op_4a58_0), 0, 19032 }, /* TST.W (An)+ */ -{ CPUFUNC(op_4a60_0), 0, 19040 }, /* TST.W -(An) */ -{ CPUFUNC(op_4a68_0), 0, 19048 }, /* TST.W (d16,An) */ -{ CPUFUNC(op_4a70_3), 0, 19056 }, /* TST.W (d8,An,Xn) */ -{ CPUFUNC(op_4a78_0), 0, 19064 }, /* TST.W (xxx).W */ -{ CPUFUNC(op_4a79_0), 0, 19065 }, /* TST.W (xxx).L */ -{ CPUFUNC(op_4a7a_0), 0, 19066 }, /* TST.W (d16,PC) */ -{ CPUFUNC(op_4a7b_3), 0, 19067 }, /* TST.W (d8,PC,Xn) */ -{ CPUFUNC(op_4a7c_0), 0, 19068 }, /* TST.W #.W */ -{ CPUFUNC(op_4a80_0), 0, 19072 }, /* TST.L Dn */ -{ CPUFUNC(op_4a88_0), 0, 19080 }, /* TST.L An */ -{ CPUFUNC(op_4a90_0), 0, 19088 }, /* TST.L (An) */ -{ CPUFUNC(op_4a98_0), 0, 19096 }, /* TST.L (An)+ */ -{ CPUFUNC(op_4aa0_0), 0, 19104 }, /* TST.L -(An) */ -{ CPUFUNC(op_4aa8_0), 0, 19112 }, /* TST.L (d16,An) */ -{ CPUFUNC(op_4ab0_3), 0, 19120 }, /* TST.L (d8,An,Xn) */ -{ CPUFUNC(op_4ab8_0), 0, 19128 }, /* TST.L (xxx).W */ -{ CPUFUNC(op_4ab9_0), 0, 19129 }, /* TST.L (xxx).L */ -{ CPUFUNC(op_4aba_0), 0, 19130 }, /* TST.L (d16,PC) */ -{ CPUFUNC(op_4abb_3), 0, 19131 }, /* TST.L (d8,PC,Xn) */ -{ CPUFUNC(op_4abc_0), 0, 19132 }, /* TST.L #.L */ -{ CPUFUNC(op_4ac0_0), 0, 19136 }, /* TAS.B Dn */ -{ CPUFUNC(op_4ad0_0), 0, 19152 }, /* TAS.B (An) */ -{ CPUFUNC(op_4ad8_0), 0, 19160 }, /* TAS.B (An)+ */ -{ CPUFUNC(op_4ae0_0), 0, 19168 }, /* TAS.B -(An) */ -{ CPUFUNC(op_4ae8_0), 0, 19176 }, /* TAS.B (d16,An) */ -{ CPUFUNC(op_4af0_3), 0, 19184 }, /* TAS.B (d8,An,Xn) */ -{ CPUFUNC(op_4af8_0), 0, 19192 }, /* TAS.B (xxx).W */ -{ CPUFUNC(op_4af9_0), 0, 19193 }, /* TAS.B (xxx).L */ -{ CPUFUNC_FF(op_4c90_0), 0, 19600 }, /* MVMEL.W #.W,(An) */ -{ CPUFUNC_FF(op_4c98_0), 0, 19608 }, /* MVMEL.W #.W,(An)+ */ -{ CPUFUNC_FF(op_4ca8_0), 0, 19624 }, /* MVMEL.W #.W,(d16,An) */ -{ CPUFUNC_FF(op_4cb0_3), 0, 19632 }, /* MVMEL.W #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_4cb8_0), 0, 19640 }, /* MVMEL.W #.W,(xxx).W */ -{ CPUFUNC_FF(op_4cb9_0), 0, 19641 }, /* MVMEL.W #.W,(xxx).L */ -{ CPUFUNC_FF(op_4cba_0), 0, 19642 }, /* MVMEL.W #.W,(d16,PC) */ -{ CPUFUNC_FF(op_4cbb_3), 0, 19643 }, /* MVMEL.W #.W,(d8,PC,Xn) */ -{ CPUFUNC_FF(op_4cd0_0), 0, 19664 }, /* MVMEL.L #.W,(An) */ -{ CPUFUNC_FF(op_4cd8_0), 0, 19672 }, /* MVMEL.L #.W,(An)+ */ -{ CPUFUNC_FF(op_4ce8_0), 0, 19688 }, /* MVMEL.L #.W,(d16,An) */ -{ CPUFUNC_FF(op_4cf0_3), 0, 19696 }, /* MVMEL.L #.W,(d8,An,Xn) */ -{ CPUFUNC_FF(op_4cf8_0), 0, 19704 }, /* MVMEL.L #.W,(xxx).W */ -{ CPUFUNC_FF(op_4cf9_0), 0, 19705 }, /* MVMEL.L #.W,(xxx).L */ -{ CPUFUNC_FF(op_4cfa_0), 0, 19706 }, /* MVMEL.L #.W,(d16,PC) */ -{ CPUFUNC_FF(op_4cfb_3), 0, 19707 }, /* MVMEL.L #.W,(d8,PC,Xn) */ -{ CPUFUNC_FF(op_4e40_0), 0, 20032 }, /* TRAP.L # */ -{ CPUFUNC_FF(op_4e50_0), 0, 20048 }, /* LINK.W An,#.W */ -{ CPUFUNC_FF(op_4e58_0), 0, 20056 }, /* UNLK.L An */ -{ CPUFUNC_FF(op_4e60_0), 0, 20064 }, /* MVR2USP.L An */ -{ CPUFUNC_FF(op_4e68_0), 0, 20072 }, /* MVUSP2R.L An */ -{ CPUFUNC_FF(op_4e70_0), 0, 20080 }, /* RESET.L */ -{ CPUFUNC_FF(op_4e71_0), 0, 20081 }, /* NOP.L */ -{ CPUFUNC(op_4e72_0), 0, 20082 }, /* STOP.L #.W */ -{ CPUFUNC(op_4e73_4), 0, 20083 }, /* RTE.L */ -{ CPUFUNC_FF(op_4e74_0), 0, 20084 }, /* RTD.L #.W */ -{ CPUFUNC_FF(op_4e75_0), 0, 20085 }, /* RTS.L */ -{ CPUFUNC_FF(op_4e76_0), 0, 20086 }, /* TRAPV.L */ -{ CPUFUNC(op_4e77_0), 0, 20087 }, /* RTR.L */ -{ CPUFUNC_FF(op_4e90_0), 0, 20112 }, /* JSR.L (An) */ -{ CPUFUNC_FF(op_4ea8_0), 0, 20136 }, /* JSR.L (d16,An) */ -{ CPUFUNC_FF(op_4eb0_3), 0, 20144 }, /* JSR.L (d8,An,Xn) */ -{ CPUFUNC_FF(op_4eb8_0), 0, 20152 }, /* JSR.L (xxx).W */ -{ CPUFUNC_FF(op_4eb9_0), 0, 20153 }, /* JSR.L (xxx).L */ -{ CPUFUNC_FF(op_4eba_0), 0, 20154 }, /* JSR.L (d16,PC) */ -{ CPUFUNC_FF(op_4ebb_3), 0, 20155 }, /* JSR.L (d8,PC,Xn) */ -{ CPUFUNC_FF(op_4ed0_0), 0, 20176 }, /* JMP.L (An) */ -{ CPUFUNC_FF(op_4ee8_0), 0, 20200 }, /* JMP.L (d16,An) */ -{ CPUFUNC_FF(op_4ef0_3), 0, 20208 }, /* JMP.L (d8,An,Xn) */ -{ CPUFUNC_FF(op_4ef8_0), 0, 20216 }, /* JMP.L (xxx).W */ -{ CPUFUNC_FF(op_4ef9_0), 0, 20217 }, /* JMP.L (xxx).L */ -{ CPUFUNC_FF(op_4efa_0), 0, 20218 }, /* JMP.L (d16,PC) */ -{ CPUFUNC_FF(op_4efb_3), 0, 20219 }, /* JMP.L (d8,PC,Xn) */ -{ CPUFUNC(op_5000_0), 0, 20480 }, /* ADD.B #,Dn */ -{ CPUFUNC(op_5010_0), 0, 20496 }, /* ADD.B #,(An) */ -{ CPUFUNC(op_5018_0), 0, 20504 }, /* ADD.B #,(An)+ */ -{ CPUFUNC(op_5020_0), 0, 20512 }, /* ADD.B #,-(An) */ -{ CPUFUNC(op_5028_0), 0, 20520 }, /* ADD.B #,(d16,An) */ -{ CPUFUNC(op_5030_3), 0, 20528 }, /* ADD.B #,(d8,An,Xn) */ -{ CPUFUNC(op_5038_0), 0, 20536 }, /* ADD.B #,(xxx).W */ -{ CPUFUNC(op_5039_0), 0, 20537 }, /* ADD.B #,(xxx).L */ -{ CPUFUNC(op_5040_0), 0, 20544 }, /* ADD.W #,Dn */ -{ CPUFUNC_FF(op_5048_0), 0, 20552 }, /* ADDA.W #,An */ -{ CPUFUNC(op_5050_0), 0, 20560 }, /* ADD.W #,(An) */ -{ CPUFUNC(op_5058_0), 0, 20568 }, /* ADD.W #,(An)+ */ -{ CPUFUNC(op_5060_0), 0, 20576 }, /* ADD.W #,-(An) */ -{ CPUFUNC(op_5068_0), 0, 20584 }, /* ADD.W #,(d16,An) */ -{ CPUFUNC(op_5070_3), 0, 20592 }, /* ADD.W #,(d8,An,Xn) */ -{ CPUFUNC(op_5078_0), 0, 20600 }, /* ADD.W #,(xxx).W */ -{ CPUFUNC(op_5079_0), 0, 20601 }, /* ADD.W #,(xxx).L */ -{ CPUFUNC(op_5080_0), 0, 20608 }, /* ADD.L #,Dn */ -{ CPUFUNC_FF(op_5088_0), 0, 20616 }, /* ADDA.L #,An */ -{ CPUFUNC(op_5090_0), 0, 20624 }, /* ADD.L #,(An) */ -{ CPUFUNC(op_5098_0), 0, 20632 }, /* ADD.L #,(An)+ */ -{ CPUFUNC(op_50a0_0), 0, 20640 }, /* ADD.L #,-(An) */ -{ CPUFUNC(op_50a8_0), 0, 20648 }, /* ADD.L #,(d16,An) */ -{ CPUFUNC(op_50b0_3), 0, 20656 }, /* ADD.L #,(d8,An,Xn) */ -{ CPUFUNC(op_50b8_0), 0, 20664 }, /* ADD.L #,(xxx).W */ -{ CPUFUNC(op_50b9_0), 0, 20665 }, /* ADD.L #,(xxx).L */ -{ CPUFUNC_FF(op_50c0_0), 0, 20672 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_50c8_0), 0, 20680 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_50d0_0), 0, 20688 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_50d8_0), 0, 20696 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_50e0_0), 0, 20704 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_50e8_0), 0, 20712 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_50f0_3), 0, 20720 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_50f8_0), 0, 20728 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_50f9_0), 0, 20729 }, /* Scc.B (xxx).L */ -{ CPUFUNC(op_5100_0), 0, 20736 }, /* SUB.B #,Dn */ -{ CPUFUNC(op_5110_0), 0, 20752 }, /* SUB.B #,(An) */ -{ CPUFUNC(op_5118_0), 0, 20760 }, /* SUB.B #,(An)+ */ -{ CPUFUNC(op_5120_0), 0, 20768 }, /* SUB.B #,-(An) */ -{ CPUFUNC(op_5128_0), 0, 20776 }, /* SUB.B #,(d16,An) */ -{ CPUFUNC(op_5130_3), 0, 20784 }, /* SUB.B #,(d8,An,Xn) */ -{ CPUFUNC(op_5138_0), 0, 20792 }, /* SUB.B #,(xxx).W */ -{ CPUFUNC(op_5139_0), 0, 20793 }, /* SUB.B #,(xxx).L */ -{ CPUFUNC(op_5140_0), 0, 20800 }, /* SUB.W #,Dn */ -{ CPUFUNC_FF(op_5148_0), 0, 20808 }, /* SUBA.W #,An */ -{ CPUFUNC(op_5150_0), 0, 20816 }, /* SUB.W #,(An) */ -{ CPUFUNC(op_5158_0), 0, 20824 }, /* SUB.W #,(An)+ */ -{ CPUFUNC(op_5160_0), 0, 20832 }, /* SUB.W #,-(An) */ -{ CPUFUNC(op_5168_0), 0, 20840 }, /* SUB.W #,(d16,An) */ -{ CPUFUNC(op_5170_3), 0, 20848 }, /* SUB.W #,(d8,An,Xn) */ -{ CPUFUNC(op_5178_0), 0, 20856 }, /* SUB.W #,(xxx).W */ -{ CPUFUNC(op_5179_0), 0, 20857 }, /* SUB.W #,(xxx).L */ -{ CPUFUNC(op_5180_0), 0, 20864 }, /* SUB.L #,Dn */ -{ CPUFUNC_FF(op_5188_0), 0, 20872 }, /* SUBA.L #,An */ -{ CPUFUNC(op_5190_0), 0, 20880 }, /* SUB.L #,(An) */ -{ CPUFUNC(op_5198_0), 0, 20888 }, /* SUB.L #,(An)+ */ -{ CPUFUNC(op_51a0_0), 0, 20896 }, /* SUB.L #,-(An) */ -{ CPUFUNC(op_51a8_0), 0, 20904 }, /* SUB.L #,(d16,An) */ -{ CPUFUNC(op_51b0_3), 0, 20912 }, /* SUB.L #,(d8,An,Xn) */ -{ CPUFUNC(op_51b8_0), 0, 20920 }, /* SUB.L #,(xxx).W */ -{ CPUFUNC(op_51b9_0), 0, 20921 }, /* SUB.L #,(xxx).L */ -{ CPUFUNC_FF(op_51c0_0), 0, 20928 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_51c8_0), 0, 20936 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_51d0_0), 0, 20944 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_51d8_0), 0, 20952 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_51e0_0), 0, 20960 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_51e8_0), 0, 20968 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_51f0_3), 0, 20976 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_51f8_0), 0, 20984 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_51f9_0), 0, 20985 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_52c0_0), 0, 21184 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_52c8_0), 0, 21192 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_52d0_0), 0, 21200 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_52d8_0), 0, 21208 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_52e0_0), 0, 21216 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_52e8_0), 0, 21224 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_52f0_3), 0, 21232 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_52f8_0), 0, 21240 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_52f9_0), 0, 21241 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_53c0_0), 0, 21440 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_53c8_0), 0, 21448 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_53d0_0), 0, 21456 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_53d8_0), 0, 21464 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_53e0_0), 0, 21472 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_53e8_0), 0, 21480 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_53f0_3), 0, 21488 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_53f8_0), 0, 21496 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_53f9_0), 0, 21497 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_54c0_0), 0, 21696 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_54c8_0), 0, 21704 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_54d0_0), 0, 21712 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_54d8_0), 0, 21720 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_54e0_0), 0, 21728 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_54e8_0), 0, 21736 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_54f0_3), 0, 21744 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_54f8_0), 0, 21752 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_54f9_0), 0, 21753 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_55c0_0), 0, 21952 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_55c8_0), 0, 21960 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_55d0_0), 0, 21968 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_55d8_0), 0, 21976 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_55e0_0), 0, 21984 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_55e8_0), 0, 21992 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_55f0_3), 0, 22000 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_55f8_0), 0, 22008 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_55f9_0), 0, 22009 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_56c0_0), 0, 22208 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_56c8_0), 0, 22216 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_56d0_0), 0, 22224 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_56d8_0), 0, 22232 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_56e0_0), 0, 22240 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_56e8_0), 0, 22248 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_56f0_3), 0, 22256 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_56f8_0), 0, 22264 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_56f9_0), 0, 22265 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_57c0_0), 0, 22464 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_57c8_0), 0, 22472 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_57d0_0), 0, 22480 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_57d8_0), 0, 22488 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_57e0_0), 0, 22496 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_57e8_0), 0, 22504 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_57f0_3), 0, 22512 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_57f8_0), 0, 22520 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_57f9_0), 0, 22521 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_58c0_0), 0, 22720 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_58c8_0), 0, 22728 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_58d0_0), 0, 22736 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_58d8_0), 0, 22744 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_58e0_0), 0, 22752 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_58e8_0), 0, 22760 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_58f0_3), 0, 22768 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_58f8_0), 0, 22776 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_58f9_0), 0, 22777 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_59c0_0), 0, 22976 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_59c8_0), 0, 22984 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_59d0_0), 0, 22992 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_59d8_0), 0, 23000 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_59e0_0), 0, 23008 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_59e8_0), 0, 23016 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_59f0_3), 0, 23024 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_59f8_0), 0, 23032 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_59f9_0), 0, 23033 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_5ac0_0), 0, 23232 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_5ac8_0), 0, 23240 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_5ad0_0), 0, 23248 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_5ad8_0), 0, 23256 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_5ae0_0), 0, 23264 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_5ae8_0), 0, 23272 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_5af0_3), 0, 23280 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_5af8_0), 0, 23288 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_5af9_0), 0, 23289 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_5bc0_0), 0, 23488 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_5bc8_0), 0, 23496 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_5bd0_0), 0, 23504 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_5bd8_0), 0, 23512 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_5be0_0), 0, 23520 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_5be8_0), 0, 23528 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_5bf0_3), 0, 23536 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_5bf8_0), 0, 23544 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_5bf9_0), 0, 23545 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_5cc0_0), 0, 23744 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_5cc8_0), 0, 23752 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_5cd0_0), 0, 23760 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_5cd8_0), 0, 23768 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_5ce0_0), 0, 23776 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_5ce8_0), 0, 23784 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_5cf0_3), 0, 23792 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_5cf8_0), 0, 23800 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_5cf9_0), 0, 23801 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_5dc0_0), 0, 24000 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_5dc8_0), 0, 24008 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_5dd0_0), 0, 24016 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_5dd8_0), 0, 24024 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_5de0_0), 0, 24032 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_5de8_0), 0, 24040 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_5df0_3), 0, 24048 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_5df8_0), 0, 24056 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_5df9_0), 0, 24057 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_5ec0_0), 0, 24256 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_5ec8_0), 0, 24264 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_5ed0_0), 0, 24272 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_5ed8_0), 0, 24280 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_5ee0_0), 0, 24288 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_5ee8_0), 0, 24296 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_5ef0_3), 0, 24304 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_5ef8_0), 0, 24312 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_5ef9_0), 0, 24313 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_5fc0_0), 0, 24512 }, /* Scc.B Dn */ -{ CPUFUNC_FF(op_5fc8_0), 0, 24520 }, /* DBcc.W Dn,#.W */ -{ CPUFUNC_FF(op_5fd0_0), 0, 24528 }, /* Scc.B (An) */ -{ CPUFUNC_FF(op_5fd8_0), 0, 24536 }, /* Scc.B (An)+ */ -{ CPUFUNC_FF(op_5fe0_0), 0, 24544 }, /* Scc.B -(An) */ -{ CPUFUNC_FF(op_5fe8_0), 0, 24552 }, /* Scc.B (d16,An) */ -{ CPUFUNC_FF(op_5ff0_3), 0, 24560 }, /* Scc.B (d8,An,Xn) */ -{ CPUFUNC_FF(op_5ff8_0), 0, 24568 }, /* Scc.B (xxx).W */ -{ CPUFUNC_FF(op_5ff9_0), 0, 24569 }, /* Scc.B (xxx).L */ -{ CPUFUNC_FF(op_6000_0), 0, 24576 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6001_0), 0, 24577 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_60ff_3), 0, 24831 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6100_0), 0, 24832 }, /* BSR.W #.W */ -{ CPUFUNC_FF(op_6101_0), 0, 24833 }, /* BSR.B # */ -{ CPUFUNC_FF(op_61ff_0), 0, 25087 }, /* BSR.L #.L */ -{ CPUFUNC_FF(op_6200_0), 0, 25088 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6201_0), 0, 25089 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_62ff_3), 0, 25343 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6300_0), 0, 25344 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6301_0), 0, 25345 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_63ff_3), 0, 25599 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6400_0), 0, 25600 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6401_0), 0, 25601 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_64ff_3), 0, 25855 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6500_0), 0, 25856 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6501_0), 0, 25857 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_65ff_3), 0, 26111 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6600_0), 0, 26112 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6601_0), 0, 26113 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_66ff_3), 0, 26367 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6700_0), 0, 26368 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6701_0), 0, 26369 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_67ff_3), 0, 26623 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6800_0), 0, 26624 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6801_0), 0, 26625 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_68ff_3), 0, 26879 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6900_0), 0, 26880 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6901_0), 0, 26881 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_69ff_3), 0, 27135 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6a00_0), 0, 27136 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6a01_0), 0, 27137 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_6aff_3), 0, 27391 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6b00_0), 0, 27392 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6b01_0), 0, 27393 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_6bff_3), 0, 27647 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6c00_0), 0, 27648 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6c01_0), 0, 27649 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_6cff_3), 0, 27903 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6d00_0), 0, 27904 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6d01_0), 0, 27905 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_6dff_3), 0, 28159 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6e00_0), 0, 28160 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6e01_0), 0, 28161 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_6eff_3), 0, 28415 }, /* Bcc.L #.L */ -{ CPUFUNC_FF(op_6f00_0), 0, 28416 }, /* Bcc.W #.W */ -{ CPUFUNC_FF(op_6f01_0), 0, 28417 }, /* Bcc.B # */ -{ CPUFUNC_FF(op_6fff_3), 0, 28671 }, /* Bcc.L #.L */ -{ CPUFUNC(op_7000_0), 0, 28672 }, /* MOVE.L #,Dn */ -{ CPUFUNC_FF(op_7100_0), 0, 28928 }, /* EMULOP_RETURN.L */ -{ CPUFUNC_FF(op_7101_0), 0, 28929 }, /* EMULOP.L # */ -{ CPUFUNC(op_8000_0), 0, 32768 }, /* OR.B Dn,Dn */ -{ CPUFUNC(op_8010_0), 0, 32784 }, /* OR.B (An),Dn */ -{ CPUFUNC(op_8018_0), 0, 32792 }, /* OR.B (An)+,Dn */ -{ CPUFUNC(op_8020_0), 0, 32800 }, /* OR.B -(An),Dn */ -{ CPUFUNC(op_8028_0), 0, 32808 }, /* OR.B (d16,An),Dn */ -{ CPUFUNC(op_8030_3), 0, 32816 }, /* OR.B (d8,An,Xn),Dn */ -{ CPUFUNC(op_8038_0), 0, 32824 }, /* OR.B (xxx).W,Dn */ -{ CPUFUNC(op_8039_0), 0, 32825 }, /* OR.B (xxx).L,Dn */ -{ CPUFUNC(op_803a_0), 0, 32826 }, /* OR.B (d16,PC),Dn */ -{ CPUFUNC(op_803b_3), 0, 32827 }, /* OR.B (d8,PC,Xn),Dn */ -{ CPUFUNC(op_803c_0), 0, 32828 }, /* OR.B #.B,Dn */ -{ CPUFUNC(op_8040_0), 0, 32832 }, /* OR.W Dn,Dn */ -{ CPUFUNC(op_8050_0), 0, 32848 }, /* OR.W (An),Dn */ -{ CPUFUNC(op_8058_0), 0, 32856 }, /* OR.W (An)+,Dn */ -{ CPUFUNC(op_8060_0), 0, 32864 }, /* OR.W -(An),Dn */ -{ CPUFUNC(op_8068_0), 0, 32872 }, /* OR.W (d16,An),Dn */ -{ CPUFUNC(op_8070_3), 0, 32880 }, /* OR.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_8078_0), 0, 32888 }, /* OR.W (xxx).W,Dn */ -{ CPUFUNC(op_8079_0), 0, 32889 }, /* OR.W (xxx).L,Dn */ -{ CPUFUNC(op_807a_0), 0, 32890 }, /* OR.W (d16,PC),Dn */ -{ CPUFUNC(op_807b_3), 0, 32891 }, /* OR.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_807c_0), 0, 32892 }, /* OR.W #.W,Dn */ -{ CPUFUNC(op_8080_0), 0, 32896 }, /* OR.L Dn,Dn */ -{ CPUFUNC(op_8090_0), 0, 32912 }, /* OR.L (An),Dn */ -{ CPUFUNC(op_8098_0), 0, 32920 }, /* OR.L (An)+,Dn */ -{ CPUFUNC(op_80a0_0), 0, 32928 }, /* OR.L -(An),Dn */ -{ CPUFUNC(op_80a8_0), 0, 32936 }, /* OR.L (d16,An),Dn */ -{ CPUFUNC(op_80b0_3), 0, 32944 }, /* OR.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_80b8_0), 0, 32952 }, /* OR.L (xxx).W,Dn */ -{ CPUFUNC(op_80b9_0), 0, 32953 }, /* OR.L (xxx).L,Dn */ -{ CPUFUNC(op_80ba_0), 0, 32954 }, /* OR.L (d16,PC),Dn */ -{ CPUFUNC(op_80bb_3), 0, 32955 }, /* OR.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_80bc_0), 0, 32956 }, /* OR.L #.L,Dn */ -{ CPUFUNC(op_80c0_0), 0, 32960 }, /* DIVU.W Dn,Dn */ -{ CPUFUNC(op_80d0_0), 0, 32976 }, /* DIVU.W (An),Dn */ -{ CPUFUNC(op_80d8_0), 0, 32984 }, /* DIVU.W (An)+,Dn */ -{ CPUFUNC(op_80e0_0), 0, 32992 }, /* DIVU.W -(An),Dn */ -{ CPUFUNC(op_80e8_0), 0, 33000 }, /* DIVU.W (d16,An),Dn */ -{ CPUFUNC(op_80f0_3), 0, 33008 }, /* DIVU.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_80f8_0), 0, 33016 }, /* DIVU.W (xxx).W,Dn */ -{ CPUFUNC(op_80f9_0), 0, 33017 }, /* DIVU.W (xxx).L,Dn */ -{ CPUFUNC(op_80fa_0), 0, 33018 }, /* DIVU.W (d16,PC),Dn */ -{ CPUFUNC(op_80fb_3), 0, 33019 }, /* DIVU.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_80fc_0), 0, 33020 }, /* DIVU.W #.W,Dn */ -{ CPUFUNC(op_8100_1), 0, 33024 }, /* SBCD.B Dn,Dn */ -{ CPUFUNC(op_8108_1), 0, 33032 }, /* SBCD.B -(An),-(An) */ -{ CPUFUNC(op_8110_0), 0, 33040 }, /* OR.B Dn,(An) */ -{ CPUFUNC(op_8118_0), 0, 33048 }, /* OR.B Dn,(An)+ */ -{ CPUFUNC(op_8120_0), 0, 33056 }, /* OR.B Dn,-(An) */ -{ CPUFUNC(op_8128_0), 0, 33064 }, /* OR.B Dn,(d16,An) */ -{ CPUFUNC(op_8130_3), 0, 33072 }, /* OR.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_8138_0), 0, 33080 }, /* OR.B Dn,(xxx).W */ -{ CPUFUNC(op_8139_0), 0, 33081 }, /* OR.B Dn,(xxx).L */ -{ CPUFUNC(op_8150_0), 0, 33104 }, /* OR.W Dn,(An) */ -{ CPUFUNC(op_8158_0), 0, 33112 }, /* OR.W Dn,(An)+ */ -{ CPUFUNC(op_8160_0), 0, 33120 }, /* OR.W Dn,-(An) */ -{ CPUFUNC(op_8168_0), 0, 33128 }, /* OR.W Dn,(d16,An) */ -{ CPUFUNC(op_8170_3), 0, 33136 }, /* OR.W Dn,(d8,An,Xn) */ -{ CPUFUNC(op_8178_0), 0, 33144 }, /* OR.W Dn,(xxx).W */ -{ CPUFUNC(op_8179_0), 0, 33145 }, /* OR.W Dn,(xxx).L */ -{ CPUFUNC(op_8190_0), 0, 33168 }, /* OR.L Dn,(An) */ -{ CPUFUNC(op_8198_0), 0, 33176 }, /* OR.L Dn,(An)+ */ -{ CPUFUNC(op_81a0_0), 0, 33184 }, /* OR.L Dn,-(An) */ -{ CPUFUNC(op_81a8_0), 0, 33192 }, /* OR.L Dn,(d16,An) */ -{ CPUFUNC(op_81b0_3), 0, 33200 }, /* OR.L Dn,(d8,An,Xn) */ -{ CPUFUNC(op_81b8_0), 0, 33208 }, /* OR.L Dn,(xxx).W */ -{ CPUFUNC(op_81b9_0), 0, 33209 }, /* OR.L Dn,(xxx).L */ -{ CPUFUNC(op_81c0_0), 0, 33216 }, /* DIVS.W Dn,Dn */ -{ CPUFUNC(op_81d0_0), 0, 33232 }, /* DIVS.W (An),Dn */ -{ CPUFUNC(op_81d8_0), 0, 33240 }, /* DIVS.W (An)+,Dn */ -{ CPUFUNC(op_81e0_0), 0, 33248 }, /* DIVS.W -(An),Dn */ -{ CPUFUNC(op_81e8_0), 0, 33256 }, /* DIVS.W (d16,An),Dn */ -{ CPUFUNC(op_81f0_3), 0, 33264 }, /* DIVS.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_81f8_0), 0, 33272 }, /* DIVS.W (xxx).W,Dn */ -{ CPUFUNC(op_81f9_0), 0, 33273 }, /* DIVS.W (xxx).L,Dn */ -{ CPUFUNC(op_81fa_0), 0, 33274 }, /* DIVS.W (d16,PC),Dn */ -{ CPUFUNC(op_81fb_3), 0, 33275 }, /* DIVS.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_81fc_0), 0, 33276 }, /* DIVS.W #.W,Dn */ -{ CPUFUNC(op_9000_0), 0, 36864 }, /* SUB.B Dn,Dn */ -{ CPUFUNC(op_9010_0), 0, 36880 }, /* SUB.B (An),Dn */ -{ CPUFUNC(op_9018_0), 0, 36888 }, /* SUB.B (An)+,Dn */ -{ CPUFUNC(op_9020_0), 0, 36896 }, /* SUB.B -(An),Dn */ -{ CPUFUNC(op_9028_0), 0, 36904 }, /* SUB.B (d16,An),Dn */ -{ CPUFUNC(op_9030_3), 0, 36912 }, /* SUB.B (d8,An,Xn),Dn */ -{ CPUFUNC(op_9038_0), 0, 36920 }, /* SUB.B (xxx).W,Dn */ -{ CPUFUNC(op_9039_0), 0, 36921 }, /* SUB.B (xxx).L,Dn */ -{ CPUFUNC(op_903a_0), 0, 36922 }, /* SUB.B (d16,PC),Dn */ -{ CPUFUNC(op_903b_3), 0, 36923 }, /* SUB.B (d8,PC,Xn),Dn */ -{ CPUFUNC(op_903c_0), 0, 36924 }, /* SUB.B #.B,Dn */ -{ CPUFUNC(op_9040_0), 0, 36928 }, /* SUB.W Dn,Dn */ -{ CPUFUNC(op_9048_0), 0, 36936 }, /* SUB.W An,Dn */ -{ CPUFUNC(op_9050_0), 0, 36944 }, /* SUB.W (An),Dn */ -{ CPUFUNC(op_9058_0), 0, 36952 }, /* SUB.W (An)+,Dn */ -{ CPUFUNC(op_9060_0), 0, 36960 }, /* SUB.W -(An),Dn */ -{ CPUFUNC(op_9068_0), 0, 36968 }, /* SUB.W (d16,An),Dn */ -{ CPUFUNC(op_9070_3), 0, 36976 }, /* SUB.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_9078_0), 0, 36984 }, /* SUB.W (xxx).W,Dn */ -{ CPUFUNC(op_9079_0), 0, 36985 }, /* SUB.W (xxx).L,Dn */ -{ CPUFUNC(op_907a_0), 0, 36986 }, /* SUB.W (d16,PC),Dn */ -{ CPUFUNC(op_907b_3), 0, 36987 }, /* SUB.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_907c_0), 0, 36988 }, /* SUB.W #.W,Dn */ -{ CPUFUNC(op_9080_0), 0, 36992 }, /* SUB.L Dn,Dn */ -{ CPUFUNC(op_9088_0), 0, 37000 }, /* SUB.L An,Dn */ -{ CPUFUNC(op_9090_0), 0, 37008 }, /* SUB.L (An),Dn */ -{ CPUFUNC(op_9098_0), 0, 37016 }, /* SUB.L (An)+,Dn */ -{ CPUFUNC(op_90a0_0), 0, 37024 }, /* SUB.L -(An),Dn */ -{ CPUFUNC(op_90a8_0), 0, 37032 }, /* SUB.L (d16,An),Dn */ -{ CPUFUNC(op_90b0_3), 0, 37040 }, /* SUB.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_90b8_0), 0, 37048 }, /* SUB.L (xxx).W,Dn */ -{ CPUFUNC(op_90b9_0), 0, 37049 }, /* SUB.L (xxx).L,Dn */ -{ CPUFUNC(op_90ba_0), 0, 37050 }, /* SUB.L (d16,PC),Dn */ -{ CPUFUNC(op_90bb_3), 0, 37051 }, /* SUB.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_90bc_0), 0, 37052 }, /* SUB.L #.L,Dn */ -{ CPUFUNC_FF(op_90c0_0), 0, 37056 }, /* SUBA.W Dn,An */ -{ CPUFUNC_FF(op_90c8_0), 0, 37064 }, /* SUBA.W An,An */ -{ CPUFUNC_FF(op_90d0_0), 0, 37072 }, /* SUBA.W (An),An */ -{ CPUFUNC_FF(op_90d8_0), 0, 37080 }, /* SUBA.W (An)+,An */ -{ CPUFUNC_FF(op_90e0_0), 0, 37088 }, /* SUBA.W -(An),An */ -{ CPUFUNC_FF(op_90e8_0), 0, 37096 }, /* SUBA.W (d16,An),An */ -{ CPUFUNC_FF(op_90f0_3), 0, 37104 }, /* SUBA.W (d8,An,Xn),An */ -{ CPUFUNC_FF(op_90f8_0), 0, 37112 }, /* SUBA.W (xxx).W,An */ -{ CPUFUNC_FF(op_90f9_0), 0, 37113 }, /* SUBA.W (xxx).L,An */ -{ CPUFUNC_FF(op_90fa_0), 0, 37114 }, /* SUBA.W (d16,PC),An */ -{ CPUFUNC_FF(op_90fb_3), 0, 37115 }, /* SUBA.W (d8,PC,Xn),An */ -{ CPUFUNC_FF(op_90fc_0), 0, 37116 }, /* SUBA.W #.W,An */ -{ CPUFUNC(op_9100_0), 0, 37120 }, /* SUBX.B Dn,Dn */ -{ CPUFUNC(op_9108_0), 0, 37128 }, /* SUBX.B -(An),-(An) */ -{ CPUFUNC(op_9110_0), 0, 37136 }, /* SUB.B Dn,(An) */ -{ CPUFUNC(op_9118_0), 0, 37144 }, /* SUB.B Dn,(An)+ */ -{ CPUFUNC(op_9120_0), 0, 37152 }, /* SUB.B Dn,-(An) */ -{ CPUFUNC(op_9128_0), 0, 37160 }, /* SUB.B Dn,(d16,An) */ -{ CPUFUNC(op_9130_3), 0, 37168 }, /* SUB.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_9138_0), 0, 37176 }, /* SUB.B Dn,(xxx).W */ -{ CPUFUNC(op_9139_0), 0, 37177 }, /* SUB.B Dn,(xxx).L */ -{ CPUFUNC(op_9140_0), 0, 37184 }, /* SUBX.W Dn,Dn */ -{ CPUFUNC(op_9148_0), 0, 37192 }, /* SUBX.W -(An),-(An) */ -{ CPUFUNC(op_9150_0), 0, 37200 }, /* SUB.W Dn,(An) */ -{ CPUFUNC(op_9158_0), 0, 37208 }, /* SUB.W Dn,(An)+ */ -{ CPUFUNC(op_9160_0), 0, 37216 }, /* SUB.W Dn,-(An) */ -{ CPUFUNC(op_9168_0), 0, 37224 }, /* SUB.W Dn,(d16,An) */ -{ CPUFUNC(op_9170_3), 0, 37232 }, /* SUB.W Dn,(d8,An,Xn) */ -{ CPUFUNC(op_9178_0), 0, 37240 }, /* SUB.W Dn,(xxx).W */ -{ CPUFUNC(op_9179_0), 0, 37241 }, /* SUB.W Dn,(xxx).L */ -{ CPUFUNC(op_9180_0), 0, 37248 }, /* SUBX.L Dn,Dn */ -{ CPUFUNC(op_9188_0), 0, 37256 }, /* SUBX.L -(An),-(An) */ -{ CPUFUNC(op_9190_0), 0, 37264 }, /* SUB.L Dn,(An) */ -{ CPUFUNC(op_9198_0), 0, 37272 }, /* SUB.L Dn,(An)+ */ -{ CPUFUNC(op_91a0_0), 0, 37280 }, /* SUB.L Dn,-(An) */ -{ CPUFUNC(op_91a8_0), 0, 37288 }, /* SUB.L Dn,(d16,An) */ -{ CPUFUNC(op_91b0_3), 0, 37296 }, /* SUB.L Dn,(d8,An,Xn) */ -{ CPUFUNC(op_91b8_0), 0, 37304 }, /* SUB.L Dn,(xxx).W */ -{ CPUFUNC(op_91b9_0), 0, 37305 }, /* SUB.L Dn,(xxx).L */ -{ CPUFUNC_FF(op_91c0_0), 0, 37312 }, /* SUBA.L Dn,An */ -{ CPUFUNC_FF(op_91c8_0), 0, 37320 }, /* SUBA.L An,An */ -{ CPUFUNC_FF(op_91d0_0), 0, 37328 }, /* SUBA.L (An),An */ -{ CPUFUNC_FF(op_91d8_0), 0, 37336 }, /* SUBA.L (An)+,An */ -{ CPUFUNC_FF(op_91e0_0), 0, 37344 }, /* SUBA.L -(An),An */ -{ CPUFUNC_FF(op_91e8_0), 0, 37352 }, /* SUBA.L (d16,An),An */ -{ CPUFUNC_FF(op_91f0_3), 0, 37360 }, /* SUBA.L (d8,An,Xn),An */ -{ CPUFUNC_FF(op_91f8_0), 0, 37368 }, /* SUBA.L (xxx).W,An */ -{ CPUFUNC_FF(op_91f9_0), 0, 37369 }, /* SUBA.L (xxx).L,An */ -{ CPUFUNC_FF(op_91fa_0), 0, 37370 }, /* SUBA.L (d16,PC),An */ -{ CPUFUNC_FF(op_91fb_3), 0, 37371 }, /* SUBA.L (d8,PC,Xn),An */ -{ CPUFUNC_FF(op_91fc_0), 0, 37372 }, /* SUBA.L #.L,An */ -{ CPUFUNC(op_b000_0), 0, 45056 }, /* CMP.B Dn,Dn */ -{ CPUFUNC(op_b010_0), 0, 45072 }, /* CMP.B (An),Dn */ -{ CPUFUNC(op_b018_0), 0, 45080 }, /* CMP.B (An)+,Dn */ -{ CPUFUNC(op_b020_0), 0, 45088 }, /* CMP.B -(An),Dn */ -{ CPUFUNC(op_b028_0), 0, 45096 }, /* CMP.B (d16,An),Dn */ -{ CPUFUNC(op_b030_3), 0, 45104 }, /* CMP.B (d8,An,Xn),Dn */ -{ CPUFUNC(op_b038_0), 0, 45112 }, /* CMP.B (xxx).W,Dn */ -{ CPUFUNC(op_b039_0), 0, 45113 }, /* CMP.B (xxx).L,Dn */ -{ CPUFUNC(op_b03a_0), 0, 45114 }, /* CMP.B (d16,PC),Dn */ -{ CPUFUNC(op_b03b_3), 0, 45115 }, /* CMP.B (d8,PC,Xn),Dn */ -{ CPUFUNC(op_b03c_0), 0, 45116 }, /* CMP.B #.B,Dn */ -{ CPUFUNC(op_b040_0), 0, 45120 }, /* CMP.W Dn,Dn */ -{ CPUFUNC(op_b048_0), 0, 45128 }, /* CMP.W An,Dn */ -{ CPUFUNC(op_b050_0), 0, 45136 }, /* CMP.W (An),Dn */ -{ CPUFUNC(op_b058_0), 0, 45144 }, /* CMP.W (An)+,Dn */ -{ CPUFUNC(op_b060_0), 0, 45152 }, /* CMP.W -(An),Dn */ -{ CPUFUNC(op_b068_0), 0, 45160 }, /* CMP.W (d16,An),Dn */ -{ CPUFUNC(op_b070_3), 0, 45168 }, /* CMP.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_b078_0), 0, 45176 }, /* CMP.W (xxx).W,Dn */ -{ CPUFUNC(op_b079_0), 0, 45177 }, /* CMP.W (xxx).L,Dn */ -{ CPUFUNC(op_b07a_0), 0, 45178 }, /* CMP.W (d16,PC),Dn */ -{ CPUFUNC(op_b07b_3), 0, 45179 }, /* CMP.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_b07c_0), 0, 45180 }, /* CMP.W #.W,Dn */ -{ CPUFUNC(op_b080_0), 0, 45184 }, /* CMP.L Dn,Dn */ -{ CPUFUNC(op_b088_0), 0, 45192 }, /* CMP.L An,Dn */ -{ CPUFUNC(op_b090_0), 0, 45200 }, /* CMP.L (An),Dn */ -{ CPUFUNC(op_b098_0), 0, 45208 }, /* CMP.L (An)+,Dn */ -{ CPUFUNC(op_b0a0_0), 0, 45216 }, /* CMP.L -(An),Dn */ -{ CPUFUNC(op_b0a8_0), 0, 45224 }, /* CMP.L (d16,An),Dn */ -{ CPUFUNC(op_b0b0_3), 0, 45232 }, /* CMP.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_b0b8_0), 0, 45240 }, /* CMP.L (xxx).W,Dn */ -{ CPUFUNC(op_b0b9_0), 0, 45241 }, /* CMP.L (xxx).L,Dn */ -{ CPUFUNC(op_b0ba_0), 0, 45242 }, /* CMP.L (d16,PC),Dn */ -{ CPUFUNC(op_b0bb_3), 0, 45243 }, /* CMP.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_b0bc_0), 0, 45244 }, /* CMP.L #.L,Dn */ -{ CPUFUNC(op_b0c0_0), 0, 45248 }, /* CMPA.W Dn,An */ -{ CPUFUNC(op_b0c8_0), 0, 45256 }, /* CMPA.W An,An */ -{ CPUFUNC(op_b0d0_0), 0, 45264 }, /* CMPA.W (An),An */ -{ CPUFUNC(op_b0d8_0), 0, 45272 }, /* CMPA.W (An)+,An */ -{ CPUFUNC(op_b0e0_0), 0, 45280 }, /* CMPA.W -(An),An */ -{ CPUFUNC(op_b0e8_0), 0, 45288 }, /* CMPA.W (d16,An),An */ -{ CPUFUNC(op_b0f0_3), 0, 45296 }, /* CMPA.W (d8,An,Xn),An */ -{ CPUFUNC(op_b0f8_0), 0, 45304 }, /* CMPA.W (xxx).W,An */ -{ CPUFUNC(op_b0f9_0), 0, 45305 }, /* CMPA.W (xxx).L,An */ -{ CPUFUNC(op_b0fa_0), 0, 45306 }, /* CMPA.W (d16,PC),An */ -{ CPUFUNC(op_b0fb_3), 0, 45307 }, /* CMPA.W (d8,PC,Xn),An */ -{ CPUFUNC(op_b0fc_0), 0, 45308 }, /* CMPA.W #.W,An */ -{ CPUFUNC(op_b100_0), 0, 45312 }, /* EOR.B Dn,Dn */ -{ CPUFUNC(op_b108_0), 0, 45320 }, /* CMPM.B (An)+,(An)+ */ -{ CPUFUNC(op_b110_0), 0, 45328 }, /* EOR.B Dn,(An) */ -{ CPUFUNC(op_b118_0), 0, 45336 }, /* EOR.B Dn,(An)+ */ -{ CPUFUNC(op_b120_0), 0, 45344 }, /* EOR.B Dn,-(An) */ -{ CPUFUNC(op_b128_0), 0, 45352 }, /* EOR.B Dn,(d16,An) */ -{ CPUFUNC(op_b130_3), 0, 45360 }, /* EOR.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_b138_0), 0, 45368 }, /* EOR.B Dn,(xxx).W */ -{ CPUFUNC(op_b139_0), 0, 45369 }, /* EOR.B Dn,(xxx).L */ -{ CPUFUNC(op_b140_0), 0, 45376 }, /* EOR.W Dn,Dn */ -{ CPUFUNC(op_b148_0), 0, 45384 }, /* CMPM.W (An)+,(An)+ */ -{ CPUFUNC(op_b150_0), 0, 45392 }, /* EOR.W Dn,(An) */ -{ CPUFUNC(op_b158_0), 0, 45400 }, /* EOR.W Dn,(An)+ */ -{ CPUFUNC(op_b160_0), 0, 45408 }, /* EOR.W Dn,-(An) */ -{ CPUFUNC(op_b168_0), 0, 45416 }, /* EOR.W Dn,(d16,An) */ -{ CPUFUNC(op_b170_3), 0, 45424 }, /* EOR.W Dn,(d8,An,Xn) */ -{ CPUFUNC(op_b178_0), 0, 45432 }, /* EOR.W Dn,(xxx).W */ -{ CPUFUNC(op_b179_0), 0, 45433 }, /* EOR.W Dn,(xxx).L */ -{ CPUFUNC(op_b180_0), 0, 45440 }, /* EOR.L Dn,Dn */ -{ CPUFUNC(op_b188_0), 0, 45448 }, /* CMPM.L (An)+,(An)+ */ -{ CPUFUNC(op_b190_0), 0, 45456 }, /* EOR.L Dn,(An) */ -{ CPUFUNC(op_b198_0), 0, 45464 }, /* EOR.L Dn,(An)+ */ -{ CPUFUNC(op_b1a0_0), 0, 45472 }, /* EOR.L Dn,-(An) */ -{ CPUFUNC(op_b1a8_0), 0, 45480 }, /* EOR.L Dn,(d16,An) */ -{ CPUFUNC(op_b1b0_3), 0, 45488 }, /* EOR.L Dn,(d8,An,Xn) */ -{ CPUFUNC(op_b1b8_0), 0, 45496 }, /* EOR.L Dn,(xxx).W */ -{ CPUFUNC(op_b1b9_0), 0, 45497 }, /* EOR.L Dn,(xxx).L */ -{ CPUFUNC(op_b1c0_0), 0, 45504 }, /* CMPA.L Dn,An */ -{ CPUFUNC(op_b1c8_0), 0, 45512 }, /* CMPA.L An,An */ -{ CPUFUNC(op_b1d0_0), 0, 45520 }, /* CMPA.L (An),An */ -{ CPUFUNC(op_b1d8_0), 0, 45528 }, /* CMPA.L (An)+,An */ -{ CPUFUNC(op_b1e0_0), 0, 45536 }, /* CMPA.L -(An),An */ -{ CPUFUNC(op_b1e8_0), 0, 45544 }, /* CMPA.L (d16,An),An */ -{ CPUFUNC(op_b1f0_3), 0, 45552 }, /* CMPA.L (d8,An,Xn),An */ -{ CPUFUNC(op_b1f8_0), 0, 45560 }, /* CMPA.L (xxx).W,An */ -{ CPUFUNC(op_b1f9_0), 0, 45561 }, /* CMPA.L (xxx).L,An */ -{ CPUFUNC(op_b1fa_0), 0, 45562 }, /* CMPA.L (d16,PC),An */ -{ CPUFUNC(op_b1fb_3), 0, 45563 }, /* CMPA.L (d8,PC,Xn),An */ -{ CPUFUNC(op_b1fc_0), 0, 45564 }, /* CMPA.L #.L,An */ -{ CPUFUNC(op_c000_0), 0, 49152 }, /* AND.B Dn,Dn */ -{ CPUFUNC(op_c010_0), 0, 49168 }, /* AND.B (An),Dn */ -{ CPUFUNC(op_c018_0), 0, 49176 }, /* AND.B (An)+,Dn */ -{ CPUFUNC(op_c020_0), 0, 49184 }, /* AND.B -(An),Dn */ -{ CPUFUNC(op_c028_0), 0, 49192 }, /* AND.B (d16,An),Dn */ -{ CPUFUNC(op_c030_3), 0, 49200 }, /* AND.B (d8,An,Xn),Dn */ -{ CPUFUNC(op_c038_0), 0, 49208 }, /* AND.B (xxx).W,Dn */ -{ CPUFUNC(op_c039_0), 0, 49209 }, /* AND.B (xxx).L,Dn */ -{ CPUFUNC(op_c03a_0), 0, 49210 }, /* AND.B (d16,PC),Dn */ -{ CPUFUNC(op_c03b_3), 0, 49211 }, /* AND.B (d8,PC,Xn),Dn */ -{ CPUFUNC(op_c03c_0), 0, 49212 }, /* AND.B #.B,Dn */ -{ CPUFUNC(op_c040_0), 0, 49216 }, /* AND.W Dn,Dn */ -{ CPUFUNC(op_c050_0), 0, 49232 }, /* AND.W (An),Dn */ -{ CPUFUNC(op_c058_0), 0, 49240 }, /* AND.W (An)+,Dn */ -{ CPUFUNC(op_c060_0), 0, 49248 }, /* AND.W -(An),Dn */ -{ CPUFUNC(op_c068_0), 0, 49256 }, /* AND.W (d16,An),Dn */ -{ CPUFUNC(op_c070_3), 0, 49264 }, /* AND.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_c078_0), 0, 49272 }, /* AND.W (xxx).W,Dn */ -{ CPUFUNC(op_c079_0), 0, 49273 }, /* AND.W (xxx).L,Dn */ -{ CPUFUNC(op_c07a_0), 0, 49274 }, /* AND.W (d16,PC),Dn */ -{ CPUFUNC(op_c07b_3), 0, 49275 }, /* AND.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_c07c_0), 0, 49276 }, /* AND.W #.W,Dn */ -{ CPUFUNC(op_c080_0), 0, 49280 }, /* AND.L Dn,Dn */ -{ CPUFUNC(op_c090_0), 0, 49296 }, /* AND.L (An),Dn */ -{ CPUFUNC(op_c098_0), 0, 49304 }, /* AND.L (An)+,Dn */ -{ CPUFUNC(op_c0a0_0), 0, 49312 }, /* AND.L -(An),Dn */ -{ CPUFUNC(op_c0a8_0), 0, 49320 }, /* AND.L (d16,An),Dn */ -{ CPUFUNC(op_c0b0_3), 0, 49328 }, /* AND.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_c0b8_0), 0, 49336 }, /* AND.L (xxx).W,Dn */ -{ CPUFUNC(op_c0b9_0), 0, 49337 }, /* AND.L (xxx).L,Dn */ -{ CPUFUNC(op_c0ba_0), 0, 49338 }, /* AND.L (d16,PC),Dn */ -{ CPUFUNC(op_c0bb_3), 0, 49339 }, /* AND.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_c0bc_0), 0, 49340 }, /* AND.L #.L,Dn */ -{ CPUFUNC(op_c0c0_0), 0, 49344 }, /* MULU.W Dn,Dn */ -{ CPUFUNC(op_c0d0_0), 0, 49360 }, /* MULU.W (An),Dn */ -{ CPUFUNC(op_c0d8_0), 0, 49368 }, /* MULU.W (An)+,Dn */ -{ CPUFUNC(op_c0e0_0), 0, 49376 }, /* MULU.W -(An),Dn */ -{ CPUFUNC(op_c0e8_0), 0, 49384 }, /* MULU.W (d16,An),Dn */ -{ CPUFUNC(op_c0f0_3), 0, 49392 }, /* MULU.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_c0f8_0), 0, 49400 }, /* MULU.W (xxx).W,Dn */ -{ CPUFUNC(op_c0f9_0), 0, 49401 }, /* MULU.W (xxx).L,Dn */ -{ CPUFUNC(op_c0fa_0), 0, 49402 }, /* MULU.W (d16,PC),Dn */ -{ CPUFUNC(op_c0fb_3), 0, 49403 }, /* MULU.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_c0fc_0), 0, 49404 }, /* MULU.W #.W,Dn */ -{ CPUFUNC(op_c100_1), 0, 49408 }, /* ABCD.B Dn,Dn */ -{ CPUFUNC(op_c108_1), 0, 49416 }, /* ABCD.B -(An),-(An) */ -{ CPUFUNC(op_c110_0), 0, 49424 }, /* AND.B Dn,(An) */ -{ CPUFUNC(op_c118_0), 0, 49432 }, /* AND.B Dn,(An)+ */ -{ CPUFUNC(op_c120_0), 0, 49440 }, /* AND.B Dn,-(An) */ -{ CPUFUNC(op_c128_0), 0, 49448 }, /* AND.B Dn,(d16,An) */ -{ CPUFUNC(op_c130_3), 0, 49456 }, /* AND.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_c138_0), 0, 49464 }, /* AND.B Dn,(xxx).W */ -{ CPUFUNC(op_c139_0), 0, 49465 }, /* AND.B Dn,(xxx).L */ -{ CPUFUNC_FF(op_c140_0), 0, 49472 }, /* EXG.L Dn,Dn */ -{ CPUFUNC_FF(op_c148_0), 0, 49480 }, /* EXG.L An,An */ -{ CPUFUNC(op_c150_0), 0, 49488 }, /* AND.W Dn,(An) */ -{ CPUFUNC(op_c158_0), 0, 49496 }, /* AND.W Dn,(An)+ */ -{ CPUFUNC(op_c160_0), 0, 49504 }, /* AND.W Dn,-(An) */ -{ CPUFUNC(op_c168_0), 0, 49512 }, /* AND.W Dn,(d16,An) */ -{ CPUFUNC(op_c170_3), 0, 49520 }, /* AND.W Dn,(d8,An,Xn) */ -{ CPUFUNC(op_c178_0), 0, 49528 }, /* AND.W Dn,(xxx).W */ -{ CPUFUNC(op_c179_0), 0, 49529 }, /* AND.W Dn,(xxx).L */ -{ CPUFUNC_FF(op_c188_0), 0, 49544 }, /* EXG.L Dn,An */ -{ CPUFUNC(op_c190_0), 0, 49552 }, /* AND.L Dn,(An) */ -{ CPUFUNC(op_c198_0), 0, 49560 }, /* AND.L Dn,(An)+ */ -{ CPUFUNC(op_c1a0_0), 0, 49568 }, /* AND.L Dn,-(An) */ -{ CPUFUNC(op_c1a8_0), 0, 49576 }, /* AND.L Dn,(d16,An) */ -{ CPUFUNC(op_c1b0_3), 0, 49584 }, /* AND.L Dn,(d8,An,Xn) */ -{ CPUFUNC(op_c1b8_0), 0, 49592 }, /* AND.L Dn,(xxx).W */ -{ CPUFUNC(op_c1b9_0), 0, 49593 }, /* AND.L Dn,(xxx).L */ -{ CPUFUNC(op_c1c0_0), 0, 49600 }, /* MULS.W Dn,Dn */ -{ CPUFUNC(op_c1d0_0), 0, 49616 }, /* MULS.W (An),Dn */ -{ CPUFUNC(op_c1d8_0), 0, 49624 }, /* MULS.W (An)+,Dn */ -{ CPUFUNC(op_c1e0_0), 0, 49632 }, /* MULS.W -(An),Dn */ -{ CPUFUNC(op_c1e8_0), 0, 49640 }, /* MULS.W (d16,An),Dn */ -{ CPUFUNC(op_c1f0_3), 0, 49648 }, /* MULS.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_c1f8_0), 0, 49656 }, /* MULS.W (xxx).W,Dn */ -{ CPUFUNC(op_c1f9_0), 0, 49657 }, /* MULS.W (xxx).L,Dn */ -{ CPUFUNC(op_c1fa_0), 0, 49658 }, /* MULS.W (d16,PC),Dn */ -{ CPUFUNC(op_c1fb_3), 0, 49659 }, /* MULS.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_c1fc_0), 0, 49660 }, /* MULS.W #.W,Dn */ -{ CPUFUNC(op_d000_0), 0, 53248 }, /* ADD.B Dn,Dn */ -{ CPUFUNC(op_d010_0), 0, 53264 }, /* ADD.B (An),Dn */ -{ CPUFUNC(op_d018_0), 0, 53272 }, /* ADD.B (An)+,Dn */ -{ CPUFUNC(op_d020_0), 0, 53280 }, /* ADD.B -(An),Dn */ -{ CPUFUNC(op_d028_0), 0, 53288 }, /* ADD.B (d16,An),Dn */ -{ CPUFUNC(op_d030_3), 0, 53296 }, /* ADD.B (d8,An,Xn),Dn */ -{ CPUFUNC(op_d038_0), 0, 53304 }, /* ADD.B (xxx).W,Dn */ -{ CPUFUNC(op_d039_0), 0, 53305 }, /* ADD.B (xxx).L,Dn */ -{ CPUFUNC(op_d03a_0), 0, 53306 }, /* ADD.B (d16,PC),Dn */ -{ CPUFUNC(op_d03b_3), 0, 53307 }, /* ADD.B (d8,PC,Xn),Dn */ -{ CPUFUNC(op_d03c_0), 0, 53308 }, /* ADD.B #.B,Dn */ -{ CPUFUNC(op_d040_0), 0, 53312 }, /* ADD.W Dn,Dn */ -{ CPUFUNC(op_d048_0), 0, 53320 }, /* ADD.W An,Dn */ -{ CPUFUNC(op_d050_0), 0, 53328 }, /* ADD.W (An),Dn */ -{ CPUFUNC(op_d058_0), 0, 53336 }, /* ADD.W (An)+,Dn */ -{ CPUFUNC(op_d060_0), 0, 53344 }, /* ADD.W -(An),Dn */ -{ CPUFUNC(op_d068_0), 0, 53352 }, /* ADD.W (d16,An),Dn */ -{ CPUFUNC(op_d070_3), 0, 53360 }, /* ADD.W (d8,An,Xn),Dn */ -{ CPUFUNC(op_d078_0), 0, 53368 }, /* ADD.W (xxx).W,Dn */ -{ CPUFUNC(op_d079_0), 0, 53369 }, /* ADD.W (xxx).L,Dn */ -{ CPUFUNC(op_d07a_0), 0, 53370 }, /* ADD.W (d16,PC),Dn */ -{ CPUFUNC(op_d07b_3), 0, 53371 }, /* ADD.W (d8,PC,Xn),Dn */ -{ CPUFUNC(op_d07c_0), 0, 53372 }, /* ADD.W #.W,Dn */ -{ CPUFUNC(op_d080_0), 0, 53376 }, /* ADD.L Dn,Dn */ -{ CPUFUNC(op_d088_0), 0, 53384 }, /* ADD.L An,Dn */ -{ CPUFUNC(op_d090_0), 0, 53392 }, /* ADD.L (An),Dn */ -{ CPUFUNC(op_d098_0), 0, 53400 }, /* ADD.L (An)+,Dn */ -{ CPUFUNC(op_d0a0_0), 0, 53408 }, /* ADD.L -(An),Dn */ -{ CPUFUNC(op_d0a8_0), 0, 53416 }, /* ADD.L (d16,An),Dn */ -{ CPUFUNC(op_d0b0_3), 0, 53424 }, /* ADD.L (d8,An,Xn),Dn */ -{ CPUFUNC(op_d0b8_0), 0, 53432 }, /* ADD.L (xxx).W,Dn */ -{ CPUFUNC(op_d0b9_0), 0, 53433 }, /* ADD.L (xxx).L,Dn */ -{ CPUFUNC(op_d0ba_0), 0, 53434 }, /* ADD.L (d16,PC),Dn */ -{ CPUFUNC(op_d0bb_3), 0, 53435 }, /* ADD.L (d8,PC,Xn),Dn */ -{ CPUFUNC(op_d0bc_0), 0, 53436 }, /* ADD.L #.L,Dn */ -{ CPUFUNC_FF(op_d0c0_0), 0, 53440 }, /* ADDA.W Dn,An */ -{ CPUFUNC_FF(op_d0c8_0), 0, 53448 }, /* ADDA.W An,An */ -{ CPUFUNC_FF(op_d0d0_0), 0, 53456 }, /* ADDA.W (An),An */ -{ CPUFUNC_FF(op_d0d8_0), 0, 53464 }, /* ADDA.W (An)+,An */ -{ CPUFUNC_FF(op_d0e0_0), 0, 53472 }, /* ADDA.W -(An),An */ -{ CPUFUNC_FF(op_d0e8_0), 0, 53480 }, /* ADDA.W (d16,An),An */ -{ CPUFUNC_FF(op_d0f0_3), 0, 53488 }, /* ADDA.W (d8,An,Xn),An */ -{ CPUFUNC_FF(op_d0f8_0), 0, 53496 }, /* ADDA.W (xxx).W,An */ -{ CPUFUNC_FF(op_d0f9_0), 0, 53497 }, /* ADDA.W (xxx).L,An */ -{ CPUFUNC_FF(op_d0fa_0), 0, 53498 }, /* ADDA.W (d16,PC),An */ -{ CPUFUNC_FF(op_d0fb_3), 0, 53499 }, /* ADDA.W (d8,PC,Xn),An */ -{ CPUFUNC_FF(op_d0fc_0), 0, 53500 }, /* ADDA.W #.W,An */ -{ CPUFUNC(op_d100_0), 0, 53504 }, /* ADDX.B Dn,Dn */ -{ CPUFUNC(op_d108_0), 0, 53512 }, /* ADDX.B -(An),-(An) */ -{ CPUFUNC(op_d110_0), 0, 53520 }, /* ADD.B Dn,(An) */ -{ CPUFUNC(op_d118_0), 0, 53528 }, /* ADD.B Dn,(An)+ */ -{ CPUFUNC(op_d120_0), 0, 53536 }, /* ADD.B Dn,-(An) */ -{ CPUFUNC(op_d128_0), 0, 53544 }, /* ADD.B Dn,(d16,An) */ -{ CPUFUNC(op_d130_3), 0, 53552 }, /* ADD.B Dn,(d8,An,Xn) */ -{ CPUFUNC(op_d138_0), 0, 53560 }, /* ADD.B Dn,(xxx).W */ -{ CPUFUNC(op_d139_0), 0, 53561 }, /* ADD.B Dn,(xxx).L */ -{ CPUFUNC(op_d140_0), 0, 53568 }, /* ADDX.W Dn,Dn */ -{ CPUFUNC(op_d148_0), 0, 53576 }, /* ADDX.W -(An),-(An) */ -{ CPUFUNC(op_d150_0), 0, 53584 }, /* ADD.W Dn,(An) */ -{ CPUFUNC(op_d158_0), 0, 53592 }, /* ADD.W Dn,(An)+ */ -{ CPUFUNC(op_d160_0), 0, 53600 }, /* ADD.W Dn,-(An) */ -{ CPUFUNC(op_d168_0), 0, 53608 }, /* ADD.W Dn,(d16,An) */ -{ CPUFUNC(op_d170_3), 0, 53616 }, /* ADD.W Dn,(d8,An,Xn) */ -{ CPUFUNC(op_d178_0), 0, 53624 }, /* ADD.W Dn,(xxx).W */ -{ CPUFUNC(op_d179_0), 0, 53625 }, /* ADD.W Dn,(xxx).L */ -{ CPUFUNC(op_d180_0), 0, 53632 }, /* ADDX.L Dn,Dn */ -{ CPUFUNC(op_d188_0), 0, 53640 }, /* ADDX.L -(An),-(An) */ -{ CPUFUNC(op_d190_0), 0, 53648 }, /* ADD.L Dn,(An) */ -{ CPUFUNC(op_d198_0), 0, 53656 }, /* ADD.L Dn,(An)+ */ -{ CPUFUNC(op_d1a0_0), 0, 53664 }, /* ADD.L Dn,-(An) */ -{ CPUFUNC(op_d1a8_0), 0, 53672 }, /* ADD.L Dn,(d16,An) */ -{ CPUFUNC(op_d1b0_3), 0, 53680 }, /* ADD.L Dn,(d8,An,Xn) */ -{ CPUFUNC(op_d1b8_0), 0, 53688 }, /* ADD.L Dn,(xxx).W */ -{ CPUFUNC(op_d1b9_0), 0, 53689 }, /* ADD.L Dn,(xxx).L */ -{ CPUFUNC_FF(op_d1c0_0), 0, 53696 }, /* ADDA.L Dn,An */ -{ CPUFUNC_FF(op_d1c8_0), 0, 53704 }, /* ADDA.L An,An */ -{ CPUFUNC_FF(op_d1d0_0), 0, 53712 }, /* ADDA.L (An),An */ -{ CPUFUNC_FF(op_d1d8_0), 0, 53720 }, /* ADDA.L (An)+,An */ -{ CPUFUNC_FF(op_d1e0_0), 0, 53728 }, /* ADDA.L -(An),An */ -{ CPUFUNC_FF(op_d1e8_0), 0, 53736 }, /* ADDA.L (d16,An),An */ -{ CPUFUNC_FF(op_d1f0_3), 0, 53744 }, /* ADDA.L (d8,An,Xn),An */ -{ CPUFUNC_FF(op_d1f8_0), 0, 53752 }, /* ADDA.L (xxx).W,An */ -{ CPUFUNC_FF(op_d1f9_0), 0, 53753 }, /* ADDA.L (xxx).L,An */ -{ CPUFUNC_FF(op_d1fa_0), 0, 53754 }, /* ADDA.L (d16,PC),An */ -{ CPUFUNC_FF(op_d1fb_3), 0, 53755 }, /* ADDA.L (d8,PC,Xn),An */ -{ CPUFUNC_FF(op_d1fc_0), 0, 53756 }, /* ADDA.L #.L,An */ -{ CPUFUNC(op_e000_0), 0, 57344 }, /* ASR.B #,Dn */ -{ CPUFUNC(op_e008_0), 0, 57352 }, /* LSR.B #,Dn */ -{ CPUFUNC(op_e010_0), 0, 57360 }, /* ROXR.B #,Dn */ -{ CPUFUNC(op_e018_0), 0, 57368 }, /* ROR.B #,Dn */ -{ CPUFUNC(op_e020_0), 0, 57376 }, /* ASR.B Dn,Dn */ -{ CPUFUNC(op_e028_0), 0, 57384 }, /* LSR.B Dn,Dn */ -{ CPUFUNC(op_e030_0), 0, 57392 }, /* ROXR.B Dn,Dn */ -{ CPUFUNC(op_e038_0), 0, 57400 }, /* ROR.B Dn,Dn */ -{ CPUFUNC(op_e040_0), 0, 57408 }, /* ASR.W #,Dn */ -{ CPUFUNC(op_e048_0), 0, 57416 }, /* LSR.W #,Dn */ -{ CPUFUNC(op_e050_0), 0, 57424 }, /* ROXR.W #,Dn */ -{ CPUFUNC(op_e058_0), 0, 57432 }, /* ROR.W #,Dn */ -{ CPUFUNC(op_e060_0), 0, 57440 }, /* ASR.W Dn,Dn */ -{ CPUFUNC(op_e068_0), 0, 57448 }, /* LSR.W Dn,Dn */ -{ CPUFUNC(op_e070_0), 0, 57456 }, /* ROXR.W Dn,Dn */ -{ CPUFUNC(op_e078_0), 0, 57464 }, /* ROR.W Dn,Dn */ -{ CPUFUNC(op_e080_0), 0, 57472 }, /* ASR.L #,Dn */ -{ CPUFUNC(op_e088_0), 0, 57480 }, /* LSR.L #,Dn */ -{ CPUFUNC(op_e090_0), 0, 57488 }, /* ROXR.L #,Dn */ -{ CPUFUNC(op_e098_0), 0, 57496 }, /* ROR.L #,Dn */ -{ CPUFUNC(op_e0a0_0), 0, 57504 }, /* ASR.L Dn,Dn */ -{ CPUFUNC(op_e0a8_0), 0, 57512 }, /* LSR.L Dn,Dn */ -{ CPUFUNC(op_e0b0_0), 0, 57520 }, /* ROXR.L Dn,Dn */ -{ CPUFUNC(op_e0b8_0), 0, 57528 }, /* ROR.L Dn,Dn */ -{ CPUFUNC(op_e0d0_0), 0, 57552 }, /* ASRW.W (An) */ -{ CPUFUNC(op_e0d8_0), 0, 57560 }, /* ASRW.W (An)+ */ -{ CPUFUNC(op_e0e0_0), 0, 57568 }, /* ASRW.W -(An) */ -{ CPUFUNC(op_e0e8_0), 0, 57576 }, /* ASRW.W (d16,An) */ -{ CPUFUNC(op_e0f0_3), 0, 57584 }, /* ASRW.W (d8,An,Xn) */ -{ CPUFUNC(op_e0f8_0), 0, 57592 }, /* ASRW.W (xxx).W */ -{ CPUFUNC(op_e0f9_0), 0, 57593 }, /* ASRW.W (xxx).L */ -{ CPUFUNC(op_e100_0), 0, 57600 }, /* ASL.B #,Dn */ -{ CPUFUNC(op_e108_0), 0, 57608 }, /* LSL.B #,Dn */ -{ CPUFUNC(op_e110_0), 0, 57616 }, /* ROXL.B #,Dn */ -{ CPUFUNC(op_e118_0), 0, 57624 }, /* ROL.B #,Dn */ -{ CPUFUNC(op_e120_0), 0, 57632 }, /* ASL.B Dn,Dn */ -{ CPUFUNC(op_e128_0), 0, 57640 }, /* LSL.B Dn,Dn */ -{ CPUFUNC(op_e130_0), 0, 57648 }, /* ROXL.B Dn,Dn */ -{ CPUFUNC(op_e138_0), 0, 57656 }, /* ROL.B Dn,Dn */ -{ CPUFUNC(op_e140_0), 0, 57664 }, /* ASL.W #,Dn */ -{ CPUFUNC(op_e148_0), 0, 57672 }, /* LSL.W #,Dn */ -{ CPUFUNC(op_e150_0), 0, 57680 }, /* ROXL.W #,Dn */ -{ CPUFUNC(op_e158_0), 0, 57688 }, /* ROL.W #,Dn */ -{ CPUFUNC(op_e160_0), 0, 57696 }, /* ASL.W Dn,Dn */ -{ CPUFUNC(op_e168_0), 0, 57704 }, /* LSL.W Dn,Dn */ -{ CPUFUNC(op_e170_0), 0, 57712 }, /* ROXL.W Dn,Dn */ -{ CPUFUNC(op_e178_0), 0, 57720 }, /* ROL.W Dn,Dn */ -{ CPUFUNC(op_e180_0), 0, 57728 }, /* ASL.L #,Dn */ -{ CPUFUNC(op_e188_0), 0, 57736 }, /* LSL.L #,Dn */ -{ CPUFUNC(op_e190_0), 0, 57744 }, /* ROXL.L #,Dn */ -{ CPUFUNC(op_e198_0), 0, 57752 }, /* ROL.L #,Dn */ -{ CPUFUNC(op_e1a0_0), 0, 57760 }, /* ASL.L Dn,Dn */ -{ CPUFUNC(op_e1a8_0), 0, 57768 }, /* LSL.L Dn,Dn */ -{ CPUFUNC(op_e1b0_0), 0, 57776 }, /* ROXL.L Dn,Dn */ -{ CPUFUNC(op_e1b8_0), 0, 57784 }, /* ROL.L Dn,Dn */ -{ CPUFUNC(op_e1d0_0), 0, 57808 }, /* ASLW.W (An) */ -{ CPUFUNC(op_e1d8_0), 0, 57816 }, /* ASLW.W (An)+ */ -{ CPUFUNC(op_e1e0_0), 0, 57824 }, /* ASLW.W -(An) */ -{ CPUFUNC(op_e1e8_0), 0, 57832 }, /* ASLW.W (d16,An) */ -{ CPUFUNC(op_e1f0_3), 0, 57840 }, /* ASLW.W (d8,An,Xn) */ -{ CPUFUNC(op_e1f8_0), 0, 57848 }, /* ASLW.W (xxx).W */ -{ CPUFUNC(op_e1f9_0), 0, 57849 }, /* ASLW.W (xxx).L */ -{ CPUFUNC(op_e2d0_0), 0, 58064 }, /* LSRW.W (An) */ -{ CPUFUNC(op_e2d8_0), 0, 58072 }, /* LSRW.W (An)+ */ -{ CPUFUNC(op_e2e0_0), 0, 58080 }, /* LSRW.W -(An) */ -{ CPUFUNC(op_e2e8_0), 0, 58088 }, /* LSRW.W (d16,An) */ -{ CPUFUNC(op_e2f0_3), 0, 58096 }, /* LSRW.W (d8,An,Xn) */ -{ CPUFUNC(op_e2f8_0), 0, 58104 }, /* LSRW.W (xxx).W */ -{ CPUFUNC(op_e2f9_0), 0, 58105 }, /* LSRW.W (xxx).L */ -{ CPUFUNC(op_e3d0_0), 0, 58320 }, /* LSLW.W (An) */ -{ CPUFUNC(op_e3d8_0), 0, 58328 }, /* LSLW.W (An)+ */ -{ CPUFUNC(op_e3e0_0), 0, 58336 }, /* LSLW.W -(An) */ -{ CPUFUNC(op_e3e8_0), 0, 58344 }, /* LSLW.W (d16,An) */ -{ CPUFUNC(op_e3f0_3), 0, 58352 }, /* LSLW.W (d8,An,Xn) */ -{ CPUFUNC(op_e3f8_0), 0, 58360 }, /* LSLW.W (xxx).W */ -{ CPUFUNC(op_e3f9_0), 0, 58361 }, /* LSLW.W (xxx).L */ -{ CPUFUNC(op_e4d0_0), 0, 58576 }, /* ROXRW.W (An) */ -{ CPUFUNC(op_e4d8_0), 0, 58584 }, /* ROXRW.W (An)+ */ -{ CPUFUNC(op_e4e0_0), 0, 58592 }, /* ROXRW.W -(An) */ -{ CPUFUNC(op_e4e8_0), 0, 58600 }, /* ROXRW.W (d16,An) */ -{ CPUFUNC(op_e4f0_3), 0, 58608 }, /* ROXRW.W (d8,An,Xn) */ -{ CPUFUNC(op_e4f8_0), 0, 58616 }, /* ROXRW.W (xxx).W */ -{ CPUFUNC(op_e4f9_0), 0, 58617 }, /* ROXRW.W (xxx).L */ -{ CPUFUNC(op_e5d0_0), 0, 58832 }, /* ROXLW.W (An) */ -{ CPUFUNC(op_e5d8_0), 0, 58840 }, /* ROXLW.W (An)+ */ -{ CPUFUNC(op_e5e0_0), 0, 58848 }, /* ROXLW.W -(An) */ -{ CPUFUNC(op_e5e8_0), 0, 58856 }, /* ROXLW.W (d16,An) */ -{ CPUFUNC(op_e5f0_3), 0, 58864 }, /* ROXLW.W (d8,An,Xn) */ -{ CPUFUNC(op_e5f8_0), 0, 58872 }, /* ROXLW.W (xxx).W */ -{ CPUFUNC(op_e5f9_0), 0, 58873 }, /* ROXLW.W (xxx).L */ -{ CPUFUNC(op_e6d0_0), 0, 59088 }, /* RORW.W (An) */ -{ CPUFUNC(op_e6d8_0), 0, 59096 }, /* RORW.W (An)+ */ -{ CPUFUNC(op_e6e0_0), 0, 59104 }, /* RORW.W -(An) */ -{ CPUFUNC(op_e6e8_0), 0, 59112 }, /* RORW.W (d16,An) */ -{ CPUFUNC(op_e6f0_3), 0, 59120 }, /* RORW.W (d8,An,Xn) */ -{ CPUFUNC(op_e6f8_0), 0, 59128 }, /* RORW.W (xxx).W */ -{ CPUFUNC(op_e6f9_0), 0, 59129 }, /* RORW.W (xxx).L */ -{ CPUFUNC(op_e7d0_0), 0, 59344 }, /* ROLW.W (An) */ -{ CPUFUNC(op_e7d8_0), 0, 59352 }, /* ROLW.W (An)+ */ -{ CPUFUNC(op_e7e0_0), 0, 59360 }, /* ROLW.W -(An) */ -{ CPUFUNC(op_e7e8_0), 0, 59368 }, /* ROLW.W (d16,An) */ -{ CPUFUNC(op_e7f0_3), 0, 59376 }, /* ROLW.W (d8,An,Xn) */ -{ CPUFUNC(op_e7f8_0), 0, 59384 }, /* ROLW.W (xxx).W */ -{ CPUFUNC(op_e7f9_0), 0, 59385 }, /* ROLW.W (xxx).L */ -{ 0, 0, 0 }}; diff --git a/BasiliskII/src/uae_cpu/cpustbl_nf.cpp b/BasiliskII/src/uae_cpu/cpustbl_nf.cpp deleted file mode 100644 index e59ae0f0..00000000 --- a/BasiliskII/src/uae_cpu/cpustbl_nf.cpp +++ /dev/null @@ -1,2 +0,0 @@ -#define NOFLAGS -#include "cpustbl.cpp" diff --git a/BasiliskII/src/uae_cpu/cputbl.h b/BasiliskII/src/uae_cpu/cputbl.h deleted file mode 100644 index 421a51d3..00000000 --- a/BasiliskII/src/uae_cpu/cputbl.h +++ /dev/null @@ -1,4322 +0,0 @@ -extern cpuop_func op_0_0_nf; -extern cpuop_func op_0_0_ff; -extern cpuop_func op_10_0_nf; -extern cpuop_func op_10_0_ff; -extern cpuop_func op_18_0_nf; -extern cpuop_func op_18_0_ff; -extern cpuop_func op_20_0_nf; -extern cpuop_func op_20_0_ff; -extern cpuop_func op_28_0_nf; -extern cpuop_func op_28_0_ff; -extern cpuop_func op_30_0_nf; -extern cpuop_func op_30_0_ff; -extern cpuop_func op_38_0_nf; -extern cpuop_func op_38_0_ff; -extern cpuop_func op_39_0_nf; -extern cpuop_func op_39_0_ff; -extern cpuop_func op_3c_0_nf; -extern cpuop_func op_3c_0_ff; -extern cpuop_func op_40_0_nf; -extern cpuop_func op_40_0_ff; -extern cpuop_func op_50_0_nf; -extern cpuop_func op_50_0_ff; -extern cpuop_func op_58_0_nf; -extern cpuop_func op_58_0_ff; -extern cpuop_func op_60_0_nf; -extern cpuop_func op_60_0_ff; -extern cpuop_func op_68_0_nf; -extern cpuop_func op_68_0_ff; -extern cpuop_func op_70_0_nf; -extern cpuop_func op_70_0_ff; -extern cpuop_func op_78_0_nf; -extern cpuop_func op_78_0_ff; -extern cpuop_func op_79_0_nf; -extern cpuop_func op_79_0_ff; -extern cpuop_func op_7c_0_nf; -extern cpuop_func op_7c_0_ff; -extern cpuop_func op_80_0_nf; -extern cpuop_func op_80_0_ff; -extern cpuop_func op_90_0_nf; -extern cpuop_func op_90_0_ff; -extern cpuop_func op_98_0_nf; -extern cpuop_func op_98_0_ff; -extern cpuop_func op_a0_0_nf; -extern cpuop_func op_a0_0_ff; -extern cpuop_func op_a8_0_nf; -extern cpuop_func op_a8_0_ff; -extern cpuop_func op_b0_0_nf; -extern cpuop_func op_b0_0_ff; -extern cpuop_func op_b8_0_nf; -extern cpuop_func op_b8_0_ff; -extern cpuop_func op_b9_0_nf; -extern cpuop_func op_b9_0_ff; -extern cpuop_func op_d0_0_nf; -extern cpuop_func op_d0_0_ff; -extern cpuop_func op_e8_0_nf; -extern cpuop_func op_e8_0_ff; -extern cpuop_func op_f0_0_nf; -extern cpuop_func op_f0_0_ff; -extern cpuop_func op_f8_0_nf; -extern cpuop_func op_f8_0_ff; -extern cpuop_func op_f9_0_nf; -extern cpuop_func op_f9_0_ff; -extern cpuop_func op_fa_0_nf; -extern cpuop_func op_fa_0_ff; -extern cpuop_func op_fb_0_nf; -extern cpuop_func op_fb_0_ff; -extern cpuop_func op_100_0_nf; -extern cpuop_func op_100_0_ff; -extern cpuop_func op_108_0_nf; -extern cpuop_func op_108_0_ff; -extern cpuop_func op_110_0_nf; -extern cpuop_func op_110_0_ff; -extern cpuop_func op_118_0_nf; -extern cpuop_func op_118_0_ff; -extern cpuop_func op_120_0_nf; -extern cpuop_func op_120_0_ff; -extern cpuop_func op_128_0_nf; -extern cpuop_func op_128_0_ff; -extern cpuop_func op_130_0_nf; -extern cpuop_func op_130_0_ff; -extern cpuop_func op_138_0_nf; -extern cpuop_func op_138_0_ff; -extern cpuop_func op_139_0_nf; -extern cpuop_func op_139_0_ff; -extern cpuop_func op_13a_0_nf; -extern cpuop_func op_13a_0_ff; -extern cpuop_func op_13b_0_nf; -extern cpuop_func op_13b_0_ff; -extern cpuop_func op_13c_0_nf; -extern cpuop_func op_13c_0_ff; -extern cpuop_func op_140_0_nf; -extern cpuop_func op_140_0_ff; -extern cpuop_func op_148_0_nf; -extern cpuop_func op_148_0_ff; -extern cpuop_func op_150_0_nf; -extern cpuop_func op_150_0_ff; -extern cpuop_func op_158_0_nf; -extern cpuop_func op_158_0_ff; -extern cpuop_func op_160_0_nf; -extern cpuop_func op_160_0_ff; -extern cpuop_func op_168_0_nf; -extern cpuop_func op_168_0_ff; -extern cpuop_func op_170_0_nf; -extern cpuop_func op_170_0_ff; -extern cpuop_func op_178_0_nf; -extern cpuop_func op_178_0_ff; -extern cpuop_func op_179_0_nf; -extern cpuop_func op_179_0_ff; -extern cpuop_func op_17a_0_nf; -extern cpuop_func op_17a_0_ff; -extern cpuop_func op_17b_0_nf; -extern cpuop_func op_17b_0_ff; -extern cpuop_func op_180_0_nf; -extern cpuop_func op_180_0_ff; -extern cpuop_func op_188_0_nf; -extern cpuop_func op_188_0_ff; -extern cpuop_func op_190_0_nf; -extern cpuop_func op_190_0_ff; -extern cpuop_func op_198_0_nf; -extern cpuop_func op_198_0_ff; -extern cpuop_func op_1a0_0_nf; -extern cpuop_func op_1a0_0_ff; -extern cpuop_func op_1a8_0_nf; -extern cpuop_func op_1a8_0_ff; -extern cpuop_func op_1b0_0_nf; -extern cpuop_func op_1b0_0_ff; -extern cpuop_func op_1b8_0_nf; -extern cpuop_func op_1b8_0_ff; -extern cpuop_func op_1b9_0_nf; -extern cpuop_func op_1b9_0_ff; -extern cpuop_func op_1ba_0_nf; -extern cpuop_func op_1ba_0_ff; -extern cpuop_func op_1bb_0_nf; -extern cpuop_func op_1bb_0_ff; -extern cpuop_func op_1c0_0_nf; -extern cpuop_func op_1c0_0_ff; -extern cpuop_func op_1c8_0_nf; -extern cpuop_func op_1c8_0_ff; -extern cpuop_func op_1d0_0_nf; -extern cpuop_func op_1d0_0_ff; -extern cpuop_func op_1d8_0_nf; -extern cpuop_func op_1d8_0_ff; -extern cpuop_func op_1e0_0_nf; -extern cpuop_func op_1e0_0_ff; -extern cpuop_func op_1e8_0_nf; -extern cpuop_func op_1e8_0_ff; -extern cpuop_func op_1f0_0_nf; -extern cpuop_func op_1f0_0_ff; -extern cpuop_func op_1f8_0_nf; -extern cpuop_func op_1f8_0_ff; -extern cpuop_func op_1f9_0_nf; -extern cpuop_func op_1f9_0_ff; -extern cpuop_func op_1fa_0_nf; -extern cpuop_func op_1fa_0_ff; -extern cpuop_func op_1fb_0_nf; -extern cpuop_func op_1fb_0_ff; -extern cpuop_func op_200_0_nf; -extern cpuop_func op_200_0_ff; -extern cpuop_func op_210_0_nf; -extern cpuop_func op_210_0_ff; -extern cpuop_func op_218_0_nf; -extern cpuop_func op_218_0_ff; -extern cpuop_func op_220_0_nf; -extern cpuop_func op_220_0_ff; -extern cpuop_func op_228_0_nf; -extern cpuop_func op_228_0_ff; -extern cpuop_func op_230_0_nf; -extern cpuop_func op_230_0_ff; -extern cpuop_func op_238_0_nf; -extern cpuop_func op_238_0_ff; -extern cpuop_func op_239_0_nf; -extern cpuop_func op_239_0_ff; -extern cpuop_func op_23c_0_nf; -extern cpuop_func op_23c_0_ff; -extern cpuop_func op_240_0_nf; -extern cpuop_func op_240_0_ff; -extern cpuop_func op_250_0_nf; -extern cpuop_func op_250_0_ff; -extern cpuop_func op_258_0_nf; -extern cpuop_func op_258_0_ff; -extern cpuop_func op_260_0_nf; -extern cpuop_func op_260_0_ff; -extern cpuop_func op_268_0_nf; -extern cpuop_func op_268_0_ff; -extern cpuop_func op_270_0_nf; -extern cpuop_func op_270_0_ff; -extern cpuop_func op_278_0_nf; -extern cpuop_func op_278_0_ff; -extern cpuop_func op_279_0_nf; -extern cpuop_func op_279_0_ff; -extern cpuop_func op_27c_0_nf; -extern cpuop_func op_27c_0_ff; -extern cpuop_func op_280_0_nf; -extern cpuop_func op_280_0_ff; -extern cpuop_func op_290_0_nf; -extern cpuop_func op_290_0_ff; -extern cpuop_func op_298_0_nf; -extern cpuop_func op_298_0_ff; -extern cpuop_func op_2a0_0_nf; -extern cpuop_func op_2a0_0_ff; -extern cpuop_func op_2a8_0_nf; -extern cpuop_func op_2a8_0_ff; -extern cpuop_func op_2b0_0_nf; -extern cpuop_func op_2b0_0_ff; -extern cpuop_func op_2b8_0_nf; -extern cpuop_func op_2b8_0_ff; -extern cpuop_func op_2b9_0_nf; -extern cpuop_func op_2b9_0_ff; -extern cpuop_func op_2d0_0_nf; -extern cpuop_func op_2d0_0_ff; -extern cpuop_func op_2e8_0_nf; -extern cpuop_func op_2e8_0_ff; -extern cpuop_func op_2f0_0_nf; -extern cpuop_func op_2f0_0_ff; -extern cpuop_func op_2f8_0_nf; -extern cpuop_func op_2f8_0_ff; -extern cpuop_func op_2f9_0_nf; -extern cpuop_func op_2f9_0_ff; -extern cpuop_func op_2fa_0_nf; -extern cpuop_func op_2fa_0_ff; -extern cpuop_func op_2fb_0_nf; -extern cpuop_func op_2fb_0_ff; -extern cpuop_func op_400_0_nf; -extern cpuop_func op_400_0_ff; -extern cpuop_func op_410_0_nf; -extern cpuop_func op_410_0_ff; -extern cpuop_func op_418_0_nf; -extern cpuop_func op_418_0_ff; -extern cpuop_func op_420_0_nf; -extern cpuop_func op_420_0_ff; -extern cpuop_func op_428_0_nf; -extern cpuop_func op_428_0_ff; -extern cpuop_func op_430_0_nf; -extern cpuop_func op_430_0_ff; -extern cpuop_func op_438_0_nf; -extern cpuop_func op_438_0_ff; -extern cpuop_func op_439_0_nf; -extern cpuop_func op_439_0_ff; -extern cpuop_func op_440_0_nf; -extern cpuop_func op_440_0_ff; -extern cpuop_func op_450_0_nf; -extern cpuop_func op_450_0_ff; -extern cpuop_func op_458_0_nf; -extern cpuop_func op_458_0_ff; -extern cpuop_func op_460_0_nf; -extern cpuop_func op_460_0_ff; -extern cpuop_func op_468_0_nf; -extern cpuop_func op_468_0_ff; -extern cpuop_func op_470_0_nf; -extern cpuop_func op_470_0_ff; -extern cpuop_func op_478_0_nf; -extern cpuop_func op_478_0_ff; -extern cpuop_func op_479_0_nf; -extern cpuop_func op_479_0_ff; -extern cpuop_func op_480_0_nf; -extern cpuop_func op_480_0_ff; -extern cpuop_func op_490_0_nf; -extern cpuop_func op_490_0_ff; -extern cpuop_func op_498_0_nf; -extern cpuop_func op_498_0_ff; -extern cpuop_func op_4a0_0_nf; -extern cpuop_func op_4a0_0_ff; -extern cpuop_func op_4a8_0_nf; -extern cpuop_func op_4a8_0_ff; -extern cpuop_func op_4b0_0_nf; -extern cpuop_func op_4b0_0_ff; -extern cpuop_func op_4b8_0_nf; -extern cpuop_func op_4b8_0_ff; -extern cpuop_func op_4b9_0_nf; -extern cpuop_func op_4b9_0_ff; -extern cpuop_func op_4d0_0_nf; -extern cpuop_func op_4d0_0_ff; -extern cpuop_func op_4e8_0_nf; -extern cpuop_func op_4e8_0_ff; -extern cpuop_func op_4f0_0_nf; -extern cpuop_func op_4f0_0_ff; -extern cpuop_func op_4f8_0_nf; -extern cpuop_func op_4f8_0_ff; -extern cpuop_func op_4f9_0_nf; -extern cpuop_func op_4f9_0_ff; -extern cpuop_func op_4fa_0_nf; -extern cpuop_func op_4fa_0_ff; -extern cpuop_func op_4fb_0_nf; -extern cpuop_func op_4fb_0_ff; -extern cpuop_func op_600_0_nf; -extern cpuop_func op_600_0_ff; -extern cpuop_func op_610_0_nf; -extern cpuop_func op_610_0_ff; -extern cpuop_func op_618_0_nf; -extern cpuop_func op_618_0_ff; -extern cpuop_func op_620_0_nf; -extern cpuop_func op_620_0_ff; -extern cpuop_func op_628_0_nf; -extern cpuop_func op_628_0_ff; -extern cpuop_func op_630_0_nf; -extern cpuop_func op_630_0_ff; -extern cpuop_func op_638_0_nf; -extern cpuop_func op_638_0_ff; -extern cpuop_func op_639_0_nf; -extern cpuop_func op_639_0_ff; -extern cpuop_func op_640_0_nf; -extern cpuop_func op_640_0_ff; -extern cpuop_func op_650_0_nf; -extern cpuop_func op_650_0_ff; -extern cpuop_func op_658_0_nf; -extern cpuop_func op_658_0_ff; -extern cpuop_func op_660_0_nf; -extern cpuop_func op_660_0_ff; -extern cpuop_func op_668_0_nf; -extern cpuop_func op_668_0_ff; -extern cpuop_func op_670_0_nf; -extern cpuop_func op_670_0_ff; -extern cpuop_func op_678_0_nf; -extern cpuop_func op_678_0_ff; -extern cpuop_func op_679_0_nf; -extern cpuop_func op_679_0_ff; -extern cpuop_func op_680_0_nf; -extern cpuop_func op_680_0_ff; -extern cpuop_func op_690_0_nf; -extern cpuop_func op_690_0_ff; -extern cpuop_func op_698_0_nf; -extern cpuop_func op_698_0_ff; -extern cpuop_func op_6a0_0_nf; -extern cpuop_func op_6a0_0_ff; -extern cpuop_func op_6a8_0_nf; -extern cpuop_func op_6a8_0_ff; -extern cpuop_func op_6b0_0_nf; -extern cpuop_func op_6b0_0_ff; -extern cpuop_func op_6b8_0_nf; -extern cpuop_func op_6b8_0_ff; -extern cpuop_func op_6b9_0_nf; -extern cpuop_func op_6b9_0_ff; -extern cpuop_func op_6c0_0_nf; -extern cpuop_func op_6c0_0_ff; -extern cpuop_func op_6c8_0_nf; -extern cpuop_func op_6c8_0_ff; -extern cpuop_func op_6d0_0_nf; -extern cpuop_func op_6d0_0_ff; -extern cpuop_func op_6e8_0_nf; -extern cpuop_func op_6e8_0_ff; -extern cpuop_func op_6f0_0_nf; -extern cpuop_func op_6f0_0_ff; -extern cpuop_func op_6f8_0_nf; -extern cpuop_func op_6f8_0_ff; -extern cpuop_func op_6f9_0_nf; -extern cpuop_func op_6f9_0_ff; -extern cpuop_func op_6fa_0_nf; -extern cpuop_func op_6fa_0_ff; -extern cpuop_func op_6fb_0_nf; -extern cpuop_func op_6fb_0_ff; -extern cpuop_func op_800_0_nf; -extern cpuop_func op_800_0_ff; -extern cpuop_func op_810_0_nf; -extern cpuop_func op_810_0_ff; -extern cpuop_func op_818_0_nf; -extern cpuop_func op_818_0_ff; -extern cpuop_func op_820_0_nf; -extern cpuop_func op_820_0_ff; -extern cpuop_func op_828_0_nf; -extern cpuop_func op_828_0_ff; -extern cpuop_func op_830_0_nf; -extern cpuop_func op_830_0_ff; -extern cpuop_func op_838_0_nf; -extern cpuop_func op_838_0_ff; -extern cpuop_func op_839_0_nf; -extern cpuop_func op_839_0_ff; -extern cpuop_func op_83a_0_nf; -extern cpuop_func op_83a_0_ff; -extern cpuop_func op_83b_0_nf; -extern cpuop_func op_83b_0_ff; -extern cpuop_func op_83c_0_nf; -extern cpuop_func op_83c_0_ff; -extern cpuop_func op_840_0_nf; -extern cpuop_func op_840_0_ff; -extern cpuop_func op_850_0_nf; -extern cpuop_func op_850_0_ff; -extern cpuop_func op_858_0_nf; -extern cpuop_func op_858_0_ff; -extern cpuop_func op_860_0_nf; -extern cpuop_func op_860_0_ff; -extern cpuop_func op_868_0_nf; -extern cpuop_func op_868_0_ff; -extern cpuop_func op_870_0_nf; -extern cpuop_func op_870_0_ff; -extern cpuop_func op_878_0_nf; -extern cpuop_func op_878_0_ff; -extern cpuop_func op_879_0_nf; -extern cpuop_func op_879_0_ff; -extern cpuop_func op_87a_0_nf; -extern cpuop_func op_87a_0_ff; -extern cpuop_func op_87b_0_nf; -extern cpuop_func op_87b_0_ff; -extern cpuop_func op_880_0_nf; -extern cpuop_func op_880_0_ff; -extern cpuop_func op_890_0_nf; -extern cpuop_func op_890_0_ff; -extern cpuop_func op_898_0_nf; -extern cpuop_func op_898_0_ff; -extern cpuop_func op_8a0_0_nf; -extern cpuop_func op_8a0_0_ff; -extern cpuop_func op_8a8_0_nf; -extern cpuop_func op_8a8_0_ff; -extern cpuop_func op_8b0_0_nf; -extern cpuop_func op_8b0_0_ff; -extern cpuop_func op_8b8_0_nf; -extern cpuop_func op_8b8_0_ff; -extern cpuop_func op_8b9_0_nf; -extern cpuop_func op_8b9_0_ff; -extern cpuop_func op_8ba_0_nf; -extern cpuop_func op_8ba_0_ff; -extern cpuop_func op_8bb_0_nf; -extern cpuop_func op_8bb_0_ff; -extern cpuop_func op_8c0_0_nf; -extern cpuop_func op_8c0_0_ff; -extern cpuop_func op_8d0_0_nf; -extern cpuop_func op_8d0_0_ff; -extern cpuop_func op_8d8_0_nf; -extern cpuop_func op_8d8_0_ff; -extern cpuop_func op_8e0_0_nf; -extern cpuop_func op_8e0_0_ff; -extern cpuop_func op_8e8_0_nf; -extern cpuop_func op_8e8_0_ff; -extern cpuop_func op_8f0_0_nf; -extern cpuop_func op_8f0_0_ff; -extern cpuop_func op_8f8_0_nf; -extern cpuop_func op_8f8_0_ff; -extern cpuop_func op_8f9_0_nf; -extern cpuop_func op_8f9_0_ff; -extern cpuop_func op_8fa_0_nf; -extern cpuop_func op_8fa_0_ff; -extern cpuop_func op_8fb_0_nf; -extern cpuop_func op_8fb_0_ff; -extern cpuop_func op_a00_0_nf; -extern cpuop_func op_a00_0_ff; -extern cpuop_func op_a10_0_nf; -extern cpuop_func op_a10_0_ff; -extern cpuop_func op_a18_0_nf; -extern cpuop_func op_a18_0_ff; -extern cpuop_func op_a20_0_nf; -extern cpuop_func op_a20_0_ff; -extern cpuop_func op_a28_0_nf; -extern cpuop_func op_a28_0_ff; -extern cpuop_func op_a30_0_nf; -extern cpuop_func op_a30_0_ff; -extern cpuop_func op_a38_0_nf; -extern cpuop_func op_a38_0_ff; -extern cpuop_func op_a39_0_nf; -extern cpuop_func op_a39_0_ff; -extern cpuop_func op_a3c_0_nf; -extern cpuop_func op_a3c_0_ff; -extern cpuop_func op_a40_0_nf; -extern cpuop_func op_a40_0_ff; -extern cpuop_func op_a50_0_nf; -extern cpuop_func op_a50_0_ff; -extern cpuop_func op_a58_0_nf; -extern cpuop_func op_a58_0_ff; -extern cpuop_func op_a60_0_nf; -extern cpuop_func op_a60_0_ff; -extern cpuop_func op_a68_0_nf; -extern cpuop_func op_a68_0_ff; -extern cpuop_func op_a70_0_nf; -extern cpuop_func op_a70_0_ff; -extern cpuop_func op_a78_0_nf; -extern cpuop_func op_a78_0_ff; -extern cpuop_func op_a79_0_nf; -extern cpuop_func op_a79_0_ff; -extern cpuop_func op_a7c_0_nf; -extern cpuop_func op_a7c_0_ff; -extern cpuop_func op_a80_0_nf; -extern cpuop_func op_a80_0_ff; -extern cpuop_func op_a90_0_nf; -extern cpuop_func op_a90_0_ff; -extern cpuop_func op_a98_0_nf; -extern cpuop_func op_a98_0_ff; -extern cpuop_func op_aa0_0_nf; -extern cpuop_func op_aa0_0_ff; -extern cpuop_func op_aa8_0_nf; -extern cpuop_func op_aa8_0_ff; -extern cpuop_func op_ab0_0_nf; -extern cpuop_func op_ab0_0_ff; -extern cpuop_func op_ab8_0_nf; -extern cpuop_func op_ab8_0_ff; -extern cpuop_func op_ab9_0_nf; -extern cpuop_func op_ab9_0_ff; -extern cpuop_func op_ad0_0_nf; -extern cpuop_func op_ad0_0_ff; -extern cpuop_func op_ad8_0_nf; -extern cpuop_func op_ad8_0_ff; -extern cpuop_func op_ae0_0_nf; -extern cpuop_func op_ae0_0_ff; -extern cpuop_func op_ae8_0_nf; -extern cpuop_func op_ae8_0_ff; -extern cpuop_func op_af0_0_nf; -extern cpuop_func op_af0_0_ff; -extern cpuop_func op_af8_0_nf; -extern cpuop_func op_af8_0_ff; -extern cpuop_func op_af9_0_nf; -extern cpuop_func op_af9_0_ff; -extern cpuop_func op_c00_0_nf; -extern cpuop_func op_c00_0_ff; -extern cpuop_func op_c10_0_nf; -extern cpuop_func op_c10_0_ff; -extern cpuop_func op_c18_0_nf; -extern cpuop_func op_c18_0_ff; -extern cpuop_func op_c20_0_nf; -extern cpuop_func op_c20_0_ff; -extern cpuop_func op_c28_0_nf; -extern cpuop_func op_c28_0_ff; -extern cpuop_func op_c30_0_nf; -extern cpuop_func op_c30_0_ff; -extern cpuop_func op_c38_0_nf; -extern cpuop_func op_c38_0_ff; -extern cpuop_func op_c39_0_nf; -extern cpuop_func op_c39_0_ff; -extern cpuop_func op_c3a_0_nf; -extern cpuop_func op_c3a_0_ff; -extern cpuop_func op_c3b_0_nf; -extern cpuop_func op_c3b_0_ff; -extern cpuop_func op_c40_0_nf; -extern cpuop_func op_c40_0_ff; -extern cpuop_func op_c50_0_nf; -extern cpuop_func op_c50_0_ff; -extern cpuop_func op_c58_0_nf; -extern cpuop_func op_c58_0_ff; -extern cpuop_func op_c60_0_nf; -extern cpuop_func op_c60_0_ff; -extern cpuop_func op_c68_0_nf; -extern cpuop_func op_c68_0_ff; -extern cpuop_func op_c70_0_nf; -extern cpuop_func op_c70_0_ff; -extern cpuop_func op_c78_0_nf; -extern cpuop_func op_c78_0_ff; -extern cpuop_func op_c79_0_nf; -extern cpuop_func op_c79_0_ff; -extern cpuop_func op_c7a_0_nf; -extern cpuop_func op_c7a_0_ff; -extern cpuop_func op_c7b_0_nf; -extern cpuop_func op_c7b_0_ff; -extern cpuop_func op_c80_0_nf; -extern cpuop_func op_c80_0_ff; -extern cpuop_func op_c90_0_nf; -extern cpuop_func op_c90_0_ff; -extern cpuop_func op_c98_0_nf; -extern cpuop_func op_c98_0_ff; -extern cpuop_func op_ca0_0_nf; -extern cpuop_func op_ca0_0_ff; -extern cpuop_func op_ca8_0_nf; -extern cpuop_func op_ca8_0_ff; -extern cpuop_func op_cb0_0_nf; -extern cpuop_func op_cb0_0_ff; -extern cpuop_func op_cb8_0_nf; -extern cpuop_func op_cb8_0_ff; -extern cpuop_func op_cb9_0_nf; -extern cpuop_func op_cb9_0_ff; -extern cpuop_func op_cba_0_nf; -extern cpuop_func op_cba_0_ff; -extern cpuop_func op_cbb_0_nf; -extern cpuop_func op_cbb_0_ff; -extern cpuop_func op_cd0_0_nf; -extern cpuop_func op_cd0_0_ff; -extern cpuop_func op_cd8_0_nf; -extern cpuop_func op_cd8_0_ff; -extern cpuop_func op_ce0_0_nf; -extern cpuop_func op_ce0_0_ff; -extern cpuop_func op_ce8_0_nf; -extern cpuop_func op_ce8_0_ff; -extern cpuop_func op_cf0_0_nf; -extern cpuop_func op_cf0_0_ff; -extern cpuop_func op_cf8_0_nf; -extern cpuop_func op_cf8_0_ff; -extern cpuop_func op_cf9_0_nf; -extern cpuop_func op_cf9_0_ff; -extern cpuop_func op_cfc_0_nf; -extern cpuop_func op_cfc_0_ff; -extern cpuop_func op_e10_0_nf; -extern cpuop_func op_e10_0_ff; -extern cpuop_func op_e18_0_nf; -extern cpuop_func op_e18_0_ff; -extern cpuop_func op_e20_0_nf; -extern cpuop_func op_e20_0_ff; -extern cpuop_func op_e28_0_nf; -extern cpuop_func op_e28_0_ff; -extern cpuop_func op_e30_0_nf; -extern cpuop_func op_e30_0_ff; -extern cpuop_func op_e38_0_nf; -extern cpuop_func op_e38_0_ff; -extern cpuop_func op_e39_0_nf; -extern cpuop_func op_e39_0_ff; -extern cpuop_func op_e50_0_nf; -extern cpuop_func op_e50_0_ff; -extern cpuop_func op_e58_0_nf; -extern cpuop_func op_e58_0_ff; -extern cpuop_func op_e60_0_nf; -extern cpuop_func op_e60_0_ff; -extern cpuop_func op_e68_0_nf; -extern cpuop_func op_e68_0_ff; -extern cpuop_func op_e70_0_nf; -extern cpuop_func op_e70_0_ff; -extern cpuop_func op_e78_0_nf; -extern cpuop_func op_e78_0_ff; -extern cpuop_func op_e79_0_nf; -extern cpuop_func op_e79_0_ff; -extern cpuop_func op_e90_0_nf; -extern cpuop_func op_e90_0_ff; -extern cpuop_func op_e98_0_nf; -extern cpuop_func op_e98_0_ff; -extern cpuop_func op_ea0_0_nf; -extern cpuop_func op_ea0_0_ff; -extern cpuop_func op_ea8_0_nf; -extern cpuop_func op_ea8_0_ff; -extern cpuop_func op_eb0_0_nf; -extern cpuop_func op_eb0_0_ff; -extern cpuop_func op_eb8_0_nf; -extern cpuop_func op_eb8_0_ff; -extern cpuop_func op_eb9_0_nf; -extern cpuop_func op_eb9_0_ff; -extern cpuop_func op_ed0_0_nf; -extern cpuop_func op_ed0_0_ff; -extern cpuop_func op_ed8_0_nf; -extern cpuop_func op_ed8_0_ff; -extern cpuop_func op_ee0_0_nf; -extern cpuop_func op_ee0_0_ff; -extern cpuop_func op_ee8_0_nf; -extern cpuop_func op_ee8_0_ff; -extern cpuop_func op_ef0_0_nf; -extern cpuop_func op_ef0_0_ff; -extern cpuop_func op_ef8_0_nf; -extern cpuop_func op_ef8_0_ff; -extern cpuop_func op_ef9_0_nf; -extern cpuop_func op_ef9_0_ff; -extern cpuop_func op_efc_0_nf; -extern cpuop_func op_efc_0_ff; -extern cpuop_func op_1000_0_nf; -extern cpuop_func op_1000_0_ff; -extern cpuop_func op_1010_0_nf; -extern cpuop_func op_1010_0_ff; -extern cpuop_func op_1018_0_nf; -extern cpuop_func op_1018_0_ff; -extern cpuop_func op_1020_0_nf; -extern cpuop_func op_1020_0_ff; -extern cpuop_func op_1028_0_nf; -extern cpuop_func op_1028_0_ff; -extern cpuop_func op_1030_0_nf; -extern cpuop_func op_1030_0_ff; -extern cpuop_func op_1038_0_nf; -extern cpuop_func op_1038_0_ff; -extern cpuop_func op_1039_0_nf; -extern cpuop_func op_1039_0_ff; -extern cpuop_func op_103a_0_nf; -extern cpuop_func op_103a_0_ff; -extern cpuop_func op_103b_0_nf; -extern cpuop_func op_103b_0_ff; -extern cpuop_func op_103c_0_nf; -extern cpuop_func op_103c_0_ff; -extern cpuop_func op_1080_0_nf; -extern cpuop_func op_1080_0_ff; -extern cpuop_func op_1090_0_nf; -extern cpuop_func op_1090_0_ff; -extern cpuop_func op_1098_0_nf; -extern cpuop_func op_1098_0_ff; -extern cpuop_func op_10a0_0_nf; -extern cpuop_func op_10a0_0_ff; -extern cpuop_func op_10a8_0_nf; -extern cpuop_func op_10a8_0_ff; -extern cpuop_func op_10b0_0_nf; -extern cpuop_func op_10b0_0_ff; -extern cpuop_func op_10b8_0_nf; -extern cpuop_func op_10b8_0_ff; -extern cpuop_func op_10b9_0_nf; -extern cpuop_func op_10b9_0_ff; -extern cpuop_func op_10ba_0_nf; -extern cpuop_func op_10ba_0_ff; -extern cpuop_func op_10bb_0_nf; -extern cpuop_func op_10bb_0_ff; -extern cpuop_func op_10bc_0_nf; -extern cpuop_func op_10bc_0_ff; -extern cpuop_func op_10c0_0_nf; -extern cpuop_func op_10c0_0_ff; -extern cpuop_func op_10d0_0_nf; -extern cpuop_func op_10d0_0_ff; -extern cpuop_func op_10d8_0_nf; -extern cpuop_func op_10d8_0_ff; -extern cpuop_func op_10e0_0_nf; -extern cpuop_func op_10e0_0_ff; -extern cpuop_func op_10e8_0_nf; -extern cpuop_func op_10e8_0_ff; -extern cpuop_func op_10f0_0_nf; -extern cpuop_func op_10f0_0_ff; -extern cpuop_func op_10f8_0_nf; -extern cpuop_func op_10f8_0_ff; -extern cpuop_func op_10f9_0_nf; -extern cpuop_func op_10f9_0_ff; -extern cpuop_func op_10fa_0_nf; -extern cpuop_func op_10fa_0_ff; -extern cpuop_func op_10fb_0_nf; -extern cpuop_func op_10fb_0_ff; -extern cpuop_func op_10fc_0_nf; -extern cpuop_func op_10fc_0_ff; -extern cpuop_func op_1100_0_nf; -extern cpuop_func op_1100_0_ff; -extern cpuop_func op_1110_0_nf; -extern cpuop_func op_1110_0_ff; -extern cpuop_func op_1118_0_nf; -extern cpuop_func op_1118_0_ff; -extern cpuop_func op_1120_0_nf; -extern cpuop_func op_1120_0_ff; -extern cpuop_func op_1128_0_nf; -extern cpuop_func op_1128_0_ff; -extern cpuop_func op_1130_0_nf; -extern cpuop_func op_1130_0_ff; -extern cpuop_func op_1138_0_nf; -extern cpuop_func op_1138_0_ff; -extern cpuop_func op_1139_0_nf; -extern cpuop_func op_1139_0_ff; -extern cpuop_func op_113a_0_nf; -extern cpuop_func op_113a_0_ff; -extern cpuop_func op_113b_0_nf; -extern cpuop_func op_113b_0_ff; -extern cpuop_func op_113c_0_nf; -extern cpuop_func op_113c_0_ff; -extern cpuop_func op_1140_0_nf; -extern cpuop_func op_1140_0_ff; -extern cpuop_func op_1150_0_nf; -extern cpuop_func op_1150_0_ff; -extern cpuop_func op_1158_0_nf; -extern cpuop_func op_1158_0_ff; -extern cpuop_func op_1160_0_nf; -extern cpuop_func op_1160_0_ff; -extern cpuop_func op_1168_0_nf; -extern cpuop_func op_1168_0_ff; -extern cpuop_func op_1170_0_nf; -extern cpuop_func op_1170_0_ff; -extern cpuop_func op_1178_0_nf; -extern cpuop_func op_1178_0_ff; -extern cpuop_func op_1179_0_nf; -extern cpuop_func op_1179_0_ff; -extern cpuop_func op_117a_0_nf; -extern cpuop_func op_117a_0_ff; -extern cpuop_func op_117b_0_nf; -extern cpuop_func op_117b_0_ff; -extern cpuop_func op_117c_0_nf; -extern cpuop_func op_117c_0_ff; -extern cpuop_func op_1180_0_nf; -extern cpuop_func op_1180_0_ff; -extern cpuop_func op_1190_0_nf; -extern cpuop_func op_1190_0_ff; -extern cpuop_func op_1198_0_nf; -extern cpuop_func op_1198_0_ff; -extern cpuop_func op_11a0_0_nf; -extern cpuop_func op_11a0_0_ff; -extern cpuop_func op_11a8_0_nf; -extern cpuop_func op_11a8_0_ff; -extern cpuop_func op_11b0_0_nf; -extern cpuop_func op_11b0_0_ff; -extern cpuop_func op_11b8_0_nf; -extern cpuop_func op_11b8_0_ff; -extern cpuop_func op_11b9_0_nf; -extern cpuop_func op_11b9_0_ff; -extern cpuop_func op_11ba_0_nf; -extern cpuop_func op_11ba_0_ff; -extern cpuop_func op_11bb_0_nf; -extern cpuop_func op_11bb_0_ff; -extern cpuop_func op_11bc_0_nf; -extern cpuop_func op_11bc_0_ff; -extern cpuop_func op_11c0_0_nf; -extern cpuop_func op_11c0_0_ff; -extern cpuop_func op_11d0_0_nf; -extern cpuop_func op_11d0_0_ff; -extern cpuop_func op_11d8_0_nf; -extern cpuop_func op_11d8_0_ff; -extern cpuop_func op_11e0_0_nf; -extern cpuop_func op_11e0_0_ff; -extern cpuop_func op_11e8_0_nf; -extern cpuop_func op_11e8_0_ff; -extern cpuop_func op_11f0_0_nf; -extern cpuop_func op_11f0_0_ff; -extern cpuop_func op_11f8_0_nf; -extern cpuop_func op_11f8_0_ff; -extern cpuop_func op_11f9_0_nf; -extern cpuop_func op_11f9_0_ff; -extern cpuop_func op_11fa_0_nf; -extern cpuop_func op_11fa_0_ff; -extern cpuop_func op_11fb_0_nf; -extern cpuop_func op_11fb_0_ff; -extern cpuop_func op_11fc_0_nf; -extern cpuop_func op_11fc_0_ff; -extern cpuop_func op_13c0_0_nf; -extern cpuop_func op_13c0_0_ff; -extern cpuop_func op_13d0_0_nf; -extern cpuop_func op_13d0_0_ff; -extern cpuop_func op_13d8_0_nf; -extern cpuop_func op_13d8_0_ff; -extern cpuop_func op_13e0_0_nf; -extern cpuop_func op_13e0_0_ff; -extern cpuop_func op_13e8_0_nf; -extern cpuop_func op_13e8_0_ff; -extern cpuop_func op_13f0_0_nf; -extern cpuop_func op_13f0_0_ff; -extern cpuop_func op_13f8_0_nf; -extern cpuop_func op_13f8_0_ff; -extern cpuop_func op_13f9_0_nf; -extern cpuop_func op_13f9_0_ff; -extern cpuop_func op_13fa_0_nf; -extern cpuop_func op_13fa_0_ff; -extern cpuop_func op_13fb_0_nf; -extern cpuop_func op_13fb_0_ff; -extern cpuop_func op_13fc_0_nf; -extern cpuop_func op_13fc_0_ff; -extern cpuop_func op_2000_0_nf; -extern cpuop_func op_2000_0_ff; -extern cpuop_func op_2008_0_nf; -extern cpuop_func op_2008_0_ff; -extern cpuop_func op_2010_0_nf; -extern cpuop_func op_2010_0_ff; -extern cpuop_func op_2018_0_nf; -extern cpuop_func op_2018_0_ff; -extern cpuop_func op_2020_0_nf; -extern cpuop_func op_2020_0_ff; -extern cpuop_func op_2028_0_nf; -extern cpuop_func op_2028_0_ff; -extern cpuop_func op_2030_0_nf; -extern cpuop_func op_2030_0_ff; -extern cpuop_func op_2038_0_nf; -extern cpuop_func op_2038_0_ff; -extern cpuop_func op_2039_0_nf; -extern cpuop_func op_2039_0_ff; -extern cpuop_func op_203a_0_nf; -extern cpuop_func op_203a_0_ff; -extern cpuop_func op_203b_0_nf; -extern cpuop_func op_203b_0_ff; -extern cpuop_func op_203c_0_nf; -extern cpuop_func op_203c_0_ff; -extern cpuop_func op_2040_0_nf; -extern cpuop_func op_2040_0_ff; -extern cpuop_func op_2048_0_nf; -extern cpuop_func op_2048_0_ff; -extern cpuop_func op_2050_0_nf; -extern cpuop_func op_2050_0_ff; -extern cpuop_func op_2058_0_nf; -extern cpuop_func op_2058_0_ff; -extern cpuop_func op_2060_0_nf; -extern cpuop_func op_2060_0_ff; -extern cpuop_func op_2068_0_nf; -extern cpuop_func op_2068_0_ff; -extern cpuop_func op_2070_0_nf; -extern cpuop_func op_2070_0_ff; -extern cpuop_func op_2078_0_nf; -extern cpuop_func op_2078_0_ff; -extern cpuop_func op_2079_0_nf; -extern cpuop_func op_2079_0_ff; -extern cpuop_func op_207a_0_nf; -extern cpuop_func op_207a_0_ff; -extern cpuop_func op_207b_0_nf; -extern cpuop_func op_207b_0_ff; -extern cpuop_func op_207c_0_nf; -extern cpuop_func op_207c_0_ff; -extern cpuop_func op_2080_0_nf; -extern cpuop_func op_2080_0_ff; -extern cpuop_func op_2088_0_nf; -extern cpuop_func op_2088_0_ff; -extern cpuop_func op_2090_0_nf; -extern cpuop_func op_2090_0_ff; -extern cpuop_func op_2098_0_nf; -extern cpuop_func op_2098_0_ff; -extern cpuop_func op_20a0_0_nf; -extern cpuop_func op_20a0_0_ff; -extern cpuop_func op_20a8_0_nf; -extern cpuop_func op_20a8_0_ff; -extern cpuop_func op_20b0_0_nf; -extern cpuop_func op_20b0_0_ff; -extern cpuop_func op_20b8_0_nf; -extern cpuop_func op_20b8_0_ff; -extern cpuop_func op_20b9_0_nf; -extern cpuop_func op_20b9_0_ff; -extern cpuop_func op_20ba_0_nf; -extern cpuop_func op_20ba_0_ff; -extern cpuop_func op_20bb_0_nf; -extern cpuop_func op_20bb_0_ff; -extern cpuop_func op_20bc_0_nf; -extern cpuop_func op_20bc_0_ff; -extern cpuop_func op_20c0_0_nf; -extern cpuop_func op_20c0_0_ff; -extern cpuop_func op_20c8_0_nf; -extern cpuop_func op_20c8_0_ff; -extern cpuop_func op_20d0_0_nf; -extern cpuop_func op_20d0_0_ff; -extern cpuop_func op_20d8_0_nf; -extern cpuop_func op_20d8_0_ff; -extern cpuop_func op_20e0_0_nf; -extern cpuop_func op_20e0_0_ff; -extern cpuop_func op_20e8_0_nf; -extern cpuop_func op_20e8_0_ff; -extern cpuop_func op_20f0_0_nf; -extern cpuop_func op_20f0_0_ff; -extern cpuop_func op_20f8_0_nf; -extern cpuop_func op_20f8_0_ff; -extern cpuop_func op_20f9_0_nf; -extern cpuop_func op_20f9_0_ff; -extern cpuop_func op_20fa_0_nf; -extern cpuop_func op_20fa_0_ff; -extern cpuop_func op_20fb_0_nf; -extern cpuop_func op_20fb_0_ff; -extern cpuop_func op_20fc_0_nf; -extern cpuop_func op_20fc_0_ff; -extern cpuop_func op_2100_0_nf; -extern cpuop_func op_2100_0_ff; -extern cpuop_func op_2108_0_nf; -extern cpuop_func op_2108_0_ff; -extern cpuop_func op_2110_0_nf; -extern cpuop_func op_2110_0_ff; -extern cpuop_func op_2118_0_nf; -extern cpuop_func op_2118_0_ff; -extern cpuop_func op_2120_0_nf; -extern cpuop_func op_2120_0_ff; -extern cpuop_func op_2128_0_nf; -extern cpuop_func op_2128_0_ff; -extern cpuop_func op_2130_0_nf; -extern cpuop_func op_2130_0_ff; -extern cpuop_func op_2138_0_nf; -extern cpuop_func op_2138_0_ff; -extern cpuop_func op_2139_0_nf; -extern cpuop_func op_2139_0_ff; -extern cpuop_func op_213a_0_nf; -extern cpuop_func op_213a_0_ff; -extern cpuop_func op_213b_0_nf; -extern cpuop_func op_213b_0_ff; -extern cpuop_func op_213c_0_nf; -extern cpuop_func op_213c_0_ff; -extern cpuop_func op_2140_0_nf; -extern cpuop_func op_2140_0_ff; -extern cpuop_func op_2148_0_nf; -extern cpuop_func op_2148_0_ff; -extern cpuop_func op_2150_0_nf; -extern cpuop_func op_2150_0_ff; -extern cpuop_func op_2158_0_nf; -extern cpuop_func op_2158_0_ff; -extern cpuop_func op_2160_0_nf; -extern cpuop_func op_2160_0_ff; -extern cpuop_func op_2168_0_nf; -extern cpuop_func op_2168_0_ff; -extern cpuop_func op_2170_0_nf; -extern cpuop_func op_2170_0_ff; -extern cpuop_func op_2178_0_nf; -extern cpuop_func op_2178_0_ff; -extern cpuop_func op_2179_0_nf; -extern cpuop_func op_2179_0_ff; -extern cpuop_func op_217a_0_nf; -extern cpuop_func op_217a_0_ff; -extern cpuop_func op_217b_0_nf; -extern cpuop_func op_217b_0_ff; -extern cpuop_func op_217c_0_nf; -extern cpuop_func op_217c_0_ff; -extern cpuop_func op_2180_0_nf; -extern cpuop_func op_2180_0_ff; -extern cpuop_func op_2188_0_nf; -extern cpuop_func op_2188_0_ff; -extern cpuop_func op_2190_0_nf; -extern cpuop_func op_2190_0_ff; -extern cpuop_func op_2198_0_nf; -extern cpuop_func op_2198_0_ff; -extern cpuop_func op_21a0_0_nf; -extern cpuop_func op_21a0_0_ff; -extern cpuop_func op_21a8_0_nf; -extern cpuop_func op_21a8_0_ff; -extern cpuop_func op_21b0_0_nf; -extern cpuop_func op_21b0_0_ff; -extern cpuop_func op_21b8_0_nf; -extern cpuop_func op_21b8_0_ff; -extern cpuop_func op_21b9_0_nf; -extern cpuop_func op_21b9_0_ff; -extern cpuop_func op_21ba_0_nf; -extern cpuop_func op_21ba_0_ff; -extern cpuop_func op_21bb_0_nf; -extern cpuop_func op_21bb_0_ff; -extern cpuop_func op_21bc_0_nf; -extern cpuop_func op_21bc_0_ff; -extern cpuop_func op_21c0_0_nf; -extern cpuop_func op_21c0_0_ff; -extern cpuop_func op_21c8_0_nf; -extern cpuop_func op_21c8_0_ff; -extern cpuop_func op_21d0_0_nf; -extern cpuop_func op_21d0_0_ff; -extern cpuop_func op_21d8_0_nf; -extern cpuop_func op_21d8_0_ff; -extern cpuop_func op_21e0_0_nf; -extern cpuop_func op_21e0_0_ff; -extern cpuop_func op_21e8_0_nf; -extern cpuop_func op_21e8_0_ff; -extern cpuop_func op_21f0_0_nf; -extern cpuop_func op_21f0_0_ff; -extern cpuop_func op_21f8_0_nf; -extern cpuop_func op_21f8_0_ff; -extern cpuop_func op_21f9_0_nf; -extern cpuop_func op_21f9_0_ff; -extern cpuop_func op_21fa_0_nf; -extern cpuop_func op_21fa_0_ff; -extern cpuop_func op_21fb_0_nf; -extern cpuop_func op_21fb_0_ff; -extern cpuop_func op_21fc_0_nf; -extern cpuop_func op_21fc_0_ff; -extern cpuop_func op_23c0_0_nf; -extern cpuop_func op_23c0_0_ff; -extern cpuop_func op_23c8_0_nf; -extern cpuop_func op_23c8_0_ff; -extern cpuop_func op_23d0_0_nf; -extern cpuop_func op_23d0_0_ff; -extern cpuop_func op_23d8_0_nf; -extern cpuop_func op_23d8_0_ff; -extern cpuop_func op_23e0_0_nf; -extern cpuop_func op_23e0_0_ff; -extern cpuop_func op_23e8_0_nf; -extern cpuop_func op_23e8_0_ff; -extern cpuop_func op_23f0_0_nf; -extern cpuop_func op_23f0_0_ff; -extern cpuop_func op_23f8_0_nf; -extern cpuop_func op_23f8_0_ff; -extern cpuop_func op_23f9_0_nf; -extern cpuop_func op_23f9_0_ff; -extern cpuop_func op_23fa_0_nf; -extern cpuop_func op_23fa_0_ff; -extern cpuop_func op_23fb_0_nf; -extern cpuop_func op_23fb_0_ff; -extern cpuop_func op_23fc_0_nf; -extern cpuop_func op_23fc_0_ff; -extern cpuop_func op_3000_0_nf; -extern cpuop_func op_3000_0_ff; -extern cpuop_func op_3008_0_nf; -extern cpuop_func op_3008_0_ff; -extern cpuop_func op_3010_0_nf; -extern cpuop_func op_3010_0_ff; -extern cpuop_func op_3018_0_nf; -extern cpuop_func op_3018_0_ff; -extern cpuop_func op_3020_0_nf; -extern cpuop_func op_3020_0_ff; -extern cpuop_func op_3028_0_nf; -extern cpuop_func op_3028_0_ff; -extern cpuop_func op_3030_0_nf; -extern cpuop_func op_3030_0_ff; -extern cpuop_func op_3038_0_nf; -extern cpuop_func op_3038_0_ff; -extern cpuop_func op_3039_0_nf; -extern cpuop_func op_3039_0_ff; -extern cpuop_func op_303a_0_nf; -extern cpuop_func op_303a_0_ff; -extern cpuop_func op_303b_0_nf; -extern cpuop_func op_303b_0_ff; -extern cpuop_func op_303c_0_nf; -extern cpuop_func op_303c_0_ff; -extern cpuop_func op_3040_0_nf; -extern cpuop_func op_3040_0_ff; -extern cpuop_func op_3048_0_nf; -extern cpuop_func op_3048_0_ff; -extern cpuop_func op_3050_0_nf; -extern cpuop_func op_3050_0_ff; -extern cpuop_func op_3058_0_nf; -extern cpuop_func op_3058_0_ff; -extern cpuop_func op_3060_0_nf; -extern cpuop_func op_3060_0_ff; -extern cpuop_func op_3068_0_nf; -extern cpuop_func op_3068_0_ff; -extern cpuop_func op_3070_0_nf; -extern cpuop_func op_3070_0_ff; -extern cpuop_func op_3078_0_nf; -extern cpuop_func op_3078_0_ff; -extern cpuop_func op_3079_0_nf; -extern cpuop_func op_3079_0_ff; -extern cpuop_func op_307a_0_nf; -extern cpuop_func op_307a_0_ff; -extern cpuop_func op_307b_0_nf; -extern cpuop_func op_307b_0_ff; -extern cpuop_func op_307c_0_nf; -extern cpuop_func op_307c_0_ff; -extern cpuop_func op_3080_0_nf; -extern cpuop_func op_3080_0_ff; -extern cpuop_func op_3088_0_nf; -extern cpuop_func op_3088_0_ff; -extern cpuop_func op_3090_0_nf; -extern cpuop_func op_3090_0_ff; -extern cpuop_func op_3098_0_nf; -extern cpuop_func op_3098_0_ff; -extern cpuop_func op_30a0_0_nf; -extern cpuop_func op_30a0_0_ff; -extern cpuop_func op_30a8_0_nf; -extern cpuop_func op_30a8_0_ff; -extern cpuop_func op_30b0_0_nf; -extern cpuop_func op_30b0_0_ff; -extern cpuop_func op_30b8_0_nf; -extern cpuop_func op_30b8_0_ff; -extern cpuop_func op_30b9_0_nf; -extern cpuop_func op_30b9_0_ff; -extern cpuop_func op_30ba_0_nf; -extern cpuop_func op_30ba_0_ff; -extern cpuop_func op_30bb_0_nf; -extern cpuop_func op_30bb_0_ff; -extern cpuop_func op_30bc_0_nf; -extern cpuop_func op_30bc_0_ff; -extern cpuop_func op_30c0_0_nf; -extern cpuop_func op_30c0_0_ff; -extern cpuop_func op_30c8_0_nf; -extern cpuop_func op_30c8_0_ff; -extern cpuop_func op_30d0_0_nf; -extern cpuop_func op_30d0_0_ff; -extern cpuop_func op_30d8_0_nf; -extern cpuop_func op_30d8_0_ff; -extern cpuop_func op_30e0_0_nf; -extern cpuop_func op_30e0_0_ff; -extern cpuop_func op_30e8_0_nf; -extern cpuop_func op_30e8_0_ff; -extern cpuop_func op_30f0_0_nf; -extern cpuop_func op_30f0_0_ff; -extern cpuop_func op_30f8_0_nf; -extern cpuop_func op_30f8_0_ff; -extern cpuop_func op_30f9_0_nf; -extern cpuop_func op_30f9_0_ff; -extern cpuop_func op_30fa_0_nf; -extern cpuop_func op_30fa_0_ff; -extern cpuop_func op_30fb_0_nf; -extern cpuop_func op_30fb_0_ff; -extern cpuop_func op_30fc_0_nf; -extern cpuop_func op_30fc_0_ff; -extern cpuop_func op_3100_0_nf; -extern cpuop_func op_3100_0_ff; -extern cpuop_func op_3108_0_nf; -extern cpuop_func op_3108_0_ff; -extern cpuop_func op_3110_0_nf; -extern cpuop_func op_3110_0_ff; -extern cpuop_func op_3118_0_nf; -extern cpuop_func op_3118_0_ff; -extern cpuop_func op_3120_0_nf; -extern cpuop_func op_3120_0_ff; -extern cpuop_func op_3128_0_nf; -extern cpuop_func op_3128_0_ff; -extern cpuop_func op_3130_0_nf; -extern cpuop_func op_3130_0_ff; -extern cpuop_func op_3138_0_nf; -extern cpuop_func op_3138_0_ff; -extern cpuop_func op_3139_0_nf; -extern cpuop_func op_3139_0_ff; -extern cpuop_func op_313a_0_nf; -extern cpuop_func op_313a_0_ff; -extern cpuop_func op_313b_0_nf; -extern cpuop_func op_313b_0_ff; -extern cpuop_func op_313c_0_nf; -extern cpuop_func op_313c_0_ff; -extern cpuop_func op_3140_0_nf; -extern cpuop_func op_3140_0_ff; -extern cpuop_func op_3148_0_nf; -extern cpuop_func op_3148_0_ff; -extern cpuop_func op_3150_0_nf; -extern cpuop_func op_3150_0_ff; -extern cpuop_func op_3158_0_nf; -extern cpuop_func op_3158_0_ff; -extern cpuop_func op_3160_0_nf; -extern cpuop_func op_3160_0_ff; -extern cpuop_func op_3168_0_nf; -extern cpuop_func op_3168_0_ff; -extern cpuop_func op_3170_0_nf; -extern cpuop_func op_3170_0_ff; -extern cpuop_func op_3178_0_nf; -extern cpuop_func op_3178_0_ff; -extern cpuop_func op_3179_0_nf; -extern cpuop_func op_3179_0_ff; -extern cpuop_func op_317a_0_nf; -extern cpuop_func op_317a_0_ff; -extern cpuop_func op_317b_0_nf; -extern cpuop_func op_317b_0_ff; -extern cpuop_func op_317c_0_nf; -extern cpuop_func op_317c_0_ff; -extern cpuop_func op_3180_0_nf; -extern cpuop_func op_3180_0_ff; -extern cpuop_func op_3188_0_nf; -extern cpuop_func op_3188_0_ff; -extern cpuop_func op_3190_0_nf; -extern cpuop_func op_3190_0_ff; -extern cpuop_func op_3198_0_nf; -extern cpuop_func op_3198_0_ff; -extern cpuop_func op_31a0_0_nf; -extern cpuop_func op_31a0_0_ff; -extern cpuop_func op_31a8_0_nf; -extern cpuop_func op_31a8_0_ff; -extern cpuop_func op_31b0_0_nf; -extern cpuop_func op_31b0_0_ff; -extern cpuop_func op_31b8_0_nf; -extern cpuop_func op_31b8_0_ff; -extern cpuop_func op_31b9_0_nf; -extern cpuop_func op_31b9_0_ff; -extern cpuop_func op_31ba_0_nf; -extern cpuop_func op_31ba_0_ff; -extern cpuop_func op_31bb_0_nf; -extern cpuop_func op_31bb_0_ff; -extern cpuop_func op_31bc_0_nf; -extern cpuop_func op_31bc_0_ff; -extern cpuop_func op_31c0_0_nf; -extern cpuop_func op_31c0_0_ff; -extern cpuop_func op_31c8_0_nf; -extern cpuop_func op_31c8_0_ff; -extern cpuop_func op_31d0_0_nf; -extern cpuop_func op_31d0_0_ff; -extern cpuop_func op_31d8_0_nf; -extern cpuop_func op_31d8_0_ff; -extern cpuop_func op_31e0_0_nf; -extern cpuop_func op_31e0_0_ff; -extern cpuop_func op_31e8_0_nf; -extern cpuop_func op_31e8_0_ff; -extern cpuop_func op_31f0_0_nf; -extern cpuop_func op_31f0_0_ff; -extern cpuop_func op_31f8_0_nf; -extern cpuop_func op_31f8_0_ff; -extern cpuop_func op_31f9_0_nf; -extern cpuop_func op_31f9_0_ff; -extern cpuop_func op_31fa_0_nf; -extern cpuop_func op_31fa_0_ff; -extern cpuop_func op_31fb_0_nf; -extern cpuop_func op_31fb_0_ff; -extern cpuop_func op_31fc_0_nf; -extern cpuop_func op_31fc_0_ff; -extern cpuop_func op_33c0_0_nf; -extern cpuop_func op_33c0_0_ff; -extern cpuop_func op_33c8_0_nf; -extern cpuop_func op_33c8_0_ff; -extern cpuop_func op_33d0_0_nf; -extern cpuop_func op_33d0_0_ff; -extern cpuop_func op_33d8_0_nf; -extern cpuop_func op_33d8_0_ff; -extern cpuop_func op_33e0_0_nf; -extern cpuop_func op_33e0_0_ff; -extern cpuop_func op_33e8_0_nf; -extern cpuop_func op_33e8_0_ff; -extern cpuop_func op_33f0_0_nf; -extern cpuop_func op_33f0_0_ff; -extern cpuop_func op_33f8_0_nf; -extern cpuop_func op_33f8_0_ff; -extern cpuop_func op_33f9_0_nf; -extern cpuop_func op_33f9_0_ff; -extern cpuop_func op_33fa_0_nf; -extern cpuop_func op_33fa_0_ff; -extern cpuop_func op_33fb_0_nf; -extern cpuop_func op_33fb_0_ff; -extern cpuop_func op_33fc_0_nf; -extern cpuop_func op_33fc_0_ff; -extern cpuop_func op_4000_0_nf; -extern cpuop_func op_4000_0_ff; -extern cpuop_func op_4010_0_nf; -extern cpuop_func op_4010_0_ff; -extern cpuop_func op_4018_0_nf; -extern cpuop_func op_4018_0_ff; -extern cpuop_func op_4020_0_nf; -extern cpuop_func op_4020_0_ff; -extern cpuop_func op_4028_0_nf; -extern cpuop_func op_4028_0_ff; -extern cpuop_func op_4030_0_nf; -extern cpuop_func op_4030_0_ff; -extern cpuop_func op_4038_0_nf; -extern cpuop_func op_4038_0_ff; -extern cpuop_func op_4039_0_nf; -extern cpuop_func op_4039_0_ff; -extern cpuop_func op_4040_0_nf; -extern cpuop_func op_4040_0_ff; -extern cpuop_func op_4050_0_nf; -extern cpuop_func op_4050_0_ff; -extern cpuop_func op_4058_0_nf; -extern cpuop_func op_4058_0_ff; -extern cpuop_func op_4060_0_nf; -extern cpuop_func op_4060_0_ff; -extern cpuop_func op_4068_0_nf; -extern cpuop_func op_4068_0_ff; -extern cpuop_func op_4070_0_nf; -extern cpuop_func op_4070_0_ff; -extern cpuop_func op_4078_0_nf; -extern cpuop_func op_4078_0_ff; -extern cpuop_func op_4079_0_nf; -extern cpuop_func op_4079_0_ff; -extern cpuop_func op_4080_0_nf; -extern cpuop_func op_4080_0_ff; -extern cpuop_func op_4090_0_nf; -extern cpuop_func op_4090_0_ff; -extern cpuop_func op_4098_0_nf; -extern cpuop_func op_4098_0_ff; -extern cpuop_func op_40a0_0_nf; -extern cpuop_func op_40a0_0_ff; -extern cpuop_func op_40a8_0_nf; -extern cpuop_func op_40a8_0_ff; -extern cpuop_func op_40b0_0_nf; -extern cpuop_func op_40b0_0_ff; -extern cpuop_func op_40b8_0_nf; -extern cpuop_func op_40b8_0_ff; -extern cpuop_func op_40b9_0_nf; -extern cpuop_func op_40b9_0_ff; -extern cpuop_func op_40c0_0_nf; -extern cpuop_func op_40c0_0_ff; -extern cpuop_func op_40d0_0_nf; -extern cpuop_func op_40d0_0_ff; -extern cpuop_func op_40d8_0_nf; -extern cpuop_func op_40d8_0_ff; -extern cpuop_func op_40e0_0_nf; -extern cpuop_func op_40e0_0_ff; -extern cpuop_func op_40e8_0_nf; -extern cpuop_func op_40e8_0_ff; -extern cpuop_func op_40f0_0_nf; -extern cpuop_func op_40f0_0_ff; -extern cpuop_func op_40f8_0_nf; -extern cpuop_func op_40f8_0_ff; -extern cpuop_func op_40f9_0_nf; -extern cpuop_func op_40f9_0_ff; -extern cpuop_func op_4100_0_nf; -extern cpuop_func op_4100_0_ff; -extern cpuop_func op_4110_0_nf; -extern cpuop_func op_4110_0_ff; -extern cpuop_func op_4118_0_nf; -extern cpuop_func op_4118_0_ff; -extern cpuop_func op_4120_0_nf; -extern cpuop_func op_4120_0_ff; -extern cpuop_func op_4128_0_nf; -extern cpuop_func op_4128_0_ff; -extern cpuop_func op_4130_0_nf; -extern cpuop_func op_4130_0_ff; -extern cpuop_func op_4138_0_nf; -extern cpuop_func op_4138_0_ff; -extern cpuop_func op_4139_0_nf; -extern cpuop_func op_4139_0_ff; -extern cpuop_func op_413a_0_nf; -extern cpuop_func op_413a_0_ff; -extern cpuop_func op_413b_0_nf; -extern cpuop_func op_413b_0_ff; -extern cpuop_func op_413c_0_nf; -extern cpuop_func op_413c_0_ff; -extern cpuop_func op_4180_0_nf; -extern cpuop_func op_4180_0_ff; -extern cpuop_func op_4190_0_nf; -extern cpuop_func op_4190_0_ff; -extern cpuop_func op_4198_0_nf; -extern cpuop_func op_4198_0_ff; -extern cpuop_func op_41a0_0_nf; -extern cpuop_func op_41a0_0_ff; -extern cpuop_func op_41a8_0_nf; -extern cpuop_func op_41a8_0_ff; -extern cpuop_func op_41b0_0_nf; -extern cpuop_func op_41b0_0_ff; -extern cpuop_func op_41b8_0_nf; -extern cpuop_func op_41b8_0_ff; -extern cpuop_func op_41b9_0_nf; -extern cpuop_func op_41b9_0_ff; -extern cpuop_func op_41ba_0_nf; -extern cpuop_func op_41ba_0_ff; -extern cpuop_func op_41bb_0_nf; -extern cpuop_func op_41bb_0_ff; -extern cpuop_func op_41bc_0_nf; -extern cpuop_func op_41bc_0_ff; -extern cpuop_func op_41d0_0_nf; -extern cpuop_func op_41d0_0_ff; -extern cpuop_func op_41e8_0_nf; -extern cpuop_func op_41e8_0_ff; -extern cpuop_func op_41f0_0_nf; -extern cpuop_func op_41f0_0_ff; -extern cpuop_func op_41f8_0_nf; -extern cpuop_func op_41f8_0_ff; -extern cpuop_func op_41f9_0_nf; -extern cpuop_func op_41f9_0_ff; -extern cpuop_func op_41fa_0_nf; -extern cpuop_func op_41fa_0_ff; -extern cpuop_func op_41fb_0_nf; -extern cpuop_func op_41fb_0_ff; -extern cpuop_func op_4200_0_nf; -extern cpuop_func op_4200_0_ff; -extern cpuop_func op_4210_0_nf; -extern cpuop_func op_4210_0_ff; -extern cpuop_func op_4218_0_nf; -extern cpuop_func op_4218_0_ff; -extern cpuop_func op_4220_0_nf; -extern cpuop_func op_4220_0_ff; -extern cpuop_func op_4228_0_nf; -extern cpuop_func op_4228_0_ff; -extern cpuop_func op_4230_0_nf; -extern cpuop_func op_4230_0_ff; -extern cpuop_func op_4238_0_nf; -extern cpuop_func op_4238_0_ff; -extern cpuop_func op_4239_0_nf; -extern cpuop_func op_4239_0_ff; -extern cpuop_func op_4240_0_nf; -extern cpuop_func op_4240_0_ff; -extern cpuop_func op_4250_0_nf; -extern cpuop_func op_4250_0_ff; -extern cpuop_func op_4258_0_nf; -extern cpuop_func op_4258_0_ff; -extern cpuop_func op_4260_0_nf; -extern cpuop_func op_4260_0_ff; -extern cpuop_func op_4268_0_nf; -extern cpuop_func op_4268_0_ff; -extern cpuop_func op_4270_0_nf; -extern cpuop_func op_4270_0_ff; -extern cpuop_func op_4278_0_nf; -extern cpuop_func op_4278_0_ff; -extern cpuop_func op_4279_0_nf; -extern cpuop_func op_4279_0_ff; -extern cpuop_func op_4280_0_nf; -extern cpuop_func op_4280_0_ff; -extern cpuop_func op_4290_0_nf; -extern cpuop_func op_4290_0_ff; -extern cpuop_func op_4298_0_nf; -extern cpuop_func op_4298_0_ff; -extern cpuop_func op_42a0_0_nf; -extern cpuop_func op_42a0_0_ff; -extern cpuop_func op_42a8_0_nf; -extern cpuop_func op_42a8_0_ff; -extern cpuop_func op_42b0_0_nf; -extern cpuop_func op_42b0_0_ff; -extern cpuop_func op_42b8_0_nf; -extern cpuop_func op_42b8_0_ff; -extern cpuop_func op_42b9_0_nf; -extern cpuop_func op_42b9_0_ff; -extern cpuop_func op_42c0_0_nf; -extern cpuop_func op_42c0_0_ff; -extern cpuop_func op_42d0_0_nf; -extern cpuop_func op_42d0_0_ff; -extern cpuop_func op_42d8_0_nf; -extern cpuop_func op_42d8_0_ff; -extern cpuop_func op_42e0_0_nf; -extern cpuop_func op_42e0_0_ff; -extern cpuop_func op_42e8_0_nf; -extern cpuop_func op_42e8_0_ff; -extern cpuop_func op_42f0_0_nf; -extern cpuop_func op_42f0_0_ff; -extern cpuop_func op_42f8_0_nf; -extern cpuop_func op_42f8_0_ff; -extern cpuop_func op_42f9_0_nf; -extern cpuop_func op_42f9_0_ff; -extern cpuop_func op_4400_0_nf; -extern cpuop_func op_4400_0_ff; -extern cpuop_func op_4410_0_nf; -extern cpuop_func op_4410_0_ff; -extern cpuop_func op_4418_0_nf; -extern cpuop_func op_4418_0_ff; -extern cpuop_func op_4420_0_nf; -extern cpuop_func op_4420_0_ff; -extern cpuop_func op_4428_0_nf; -extern cpuop_func op_4428_0_ff; -extern cpuop_func op_4430_0_nf; -extern cpuop_func op_4430_0_ff; -extern cpuop_func op_4438_0_nf; -extern cpuop_func op_4438_0_ff; -extern cpuop_func op_4439_0_nf; -extern cpuop_func op_4439_0_ff; -extern cpuop_func op_4440_0_nf; -extern cpuop_func op_4440_0_ff; -extern cpuop_func op_4450_0_nf; -extern cpuop_func op_4450_0_ff; -extern cpuop_func op_4458_0_nf; -extern cpuop_func op_4458_0_ff; -extern cpuop_func op_4460_0_nf; -extern cpuop_func op_4460_0_ff; -extern cpuop_func op_4468_0_nf; -extern cpuop_func op_4468_0_ff; -extern cpuop_func op_4470_0_nf; -extern cpuop_func op_4470_0_ff; -extern cpuop_func op_4478_0_nf; -extern cpuop_func op_4478_0_ff; -extern cpuop_func op_4479_0_nf; -extern cpuop_func op_4479_0_ff; -extern cpuop_func op_4480_0_nf; -extern cpuop_func op_4480_0_ff; -extern cpuop_func op_4490_0_nf; -extern cpuop_func op_4490_0_ff; -extern cpuop_func op_4498_0_nf; -extern cpuop_func op_4498_0_ff; -extern cpuop_func op_44a0_0_nf; -extern cpuop_func op_44a0_0_ff; -extern cpuop_func op_44a8_0_nf; -extern cpuop_func op_44a8_0_ff; -extern cpuop_func op_44b0_0_nf; -extern cpuop_func op_44b0_0_ff; -extern cpuop_func op_44b8_0_nf; -extern cpuop_func op_44b8_0_ff; -extern cpuop_func op_44b9_0_nf; -extern cpuop_func op_44b9_0_ff; -extern cpuop_func op_44c0_0_nf; -extern cpuop_func op_44c0_0_ff; -extern cpuop_func op_44d0_0_nf; -extern cpuop_func op_44d0_0_ff; -extern cpuop_func op_44d8_0_nf; -extern cpuop_func op_44d8_0_ff; -extern cpuop_func op_44e0_0_nf; -extern cpuop_func op_44e0_0_ff; -extern cpuop_func op_44e8_0_nf; -extern cpuop_func op_44e8_0_ff; -extern cpuop_func op_44f0_0_nf; -extern cpuop_func op_44f0_0_ff; -extern cpuop_func op_44f8_0_nf; -extern cpuop_func op_44f8_0_ff; -extern cpuop_func op_44f9_0_nf; -extern cpuop_func op_44f9_0_ff; -extern cpuop_func op_44fa_0_nf; -extern cpuop_func op_44fa_0_ff; -extern cpuop_func op_44fb_0_nf; -extern cpuop_func op_44fb_0_ff; -extern cpuop_func op_44fc_0_nf; -extern cpuop_func op_44fc_0_ff; -extern cpuop_func op_4600_0_nf; -extern cpuop_func op_4600_0_ff; -extern cpuop_func op_4610_0_nf; -extern cpuop_func op_4610_0_ff; -extern cpuop_func op_4618_0_nf; -extern cpuop_func op_4618_0_ff; -extern cpuop_func op_4620_0_nf; -extern cpuop_func op_4620_0_ff; -extern cpuop_func op_4628_0_nf; -extern cpuop_func op_4628_0_ff; -extern cpuop_func op_4630_0_nf; -extern cpuop_func op_4630_0_ff; -extern cpuop_func op_4638_0_nf; -extern cpuop_func op_4638_0_ff; -extern cpuop_func op_4639_0_nf; -extern cpuop_func op_4639_0_ff; -extern cpuop_func op_4640_0_nf; -extern cpuop_func op_4640_0_ff; -extern cpuop_func op_4650_0_nf; -extern cpuop_func op_4650_0_ff; -extern cpuop_func op_4658_0_nf; -extern cpuop_func op_4658_0_ff; -extern cpuop_func op_4660_0_nf; -extern cpuop_func op_4660_0_ff; -extern cpuop_func op_4668_0_nf; -extern cpuop_func op_4668_0_ff; -extern cpuop_func op_4670_0_nf; -extern cpuop_func op_4670_0_ff; -extern cpuop_func op_4678_0_nf; -extern cpuop_func op_4678_0_ff; -extern cpuop_func op_4679_0_nf; -extern cpuop_func op_4679_0_ff; -extern cpuop_func op_4680_0_nf; -extern cpuop_func op_4680_0_ff; -extern cpuop_func op_4690_0_nf; -extern cpuop_func op_4690_0_ff; -extern cpuop_func op_4698_0_nf; -extern cpuop_func op_4698_0_ff; -extern cpuop_func op_46a0_0_nf; -extern cpuop_func op_46a0_0_ff; -extern cpuop_func op_46a8_0_nf; -extern cpuop_func op_46a8_0_ff; -extern cpuop_func op_46b0_0_nf; -extern cpuop_func op_46b0_0_ff; -extern cpuop_func op_46b8_0_nf; -extern cpuop_func op_46b8_0_ff; -extern cpuop_func op_46b9_0_nf; -extern cpuop_func op_46b9_0_ff; -extern cpuop_func op_46c0_0_nf; -extern cpuop_func op_46c0_0_ff; -extern cpuop_func op_46d0_0_nf; -extern cpuop_func op_46d0_0_ff; -extern cpuop_func op_46d8_0_nf; -extern cpuop_func op_46d8_0_ff; -extern cpuop_func op_46e0_0_nf; -extern cpuop_func op_46e0_0_ff; -extern cpuop_func op_46e8_0_nf; -extern cpuop_func op_46e8_0_ff; -extern cpuop_func op_46f0_0_nf; -extern cpuop_func op_46f0_0_ff; -extern cpuop_func op_46f8_0_nf; -extern cpuop_func op_46f8_0_ff; -extern cpuop_func op_46f9_0_nf; -extern cpuop_func op_46f9_0_ff; -extern cpuop_func op_46fa_0_nf; -extern cpuop_func op_46fa_0_ff; -extern cpuop_func op_46fb_0_nf; -extern cpuop_func op_46fb_0_ff; -extern cpuop_func op_46fc_0_nf; -extern cpuop_func op_46fc_0_ff; -extern cpuop_func op_4800_0_nf; -extern cpuop_func op_4800_0_ff; -extern cpuop_func op_4808_0_nf; -extern cpuop_func op_4808_0_ff; -extern cpuop_func op_4810_0_nf; -extern cpuop_func op_4810_0_ff; -extern cpuop_func op_4818_0_nf; -extern cpuop_func op_4818_0_ff; -extern cpuop_func op_4820_0_nf; -extern cpuop_func op_4820_0_ff; -extern cpuop_func op_4828_0_nf; -extern cpuop_func op_4828_0_ff; -extern cpuop_func op_4830_0_nf; -extern cpuop_func op_4830_0_ff; -extern cpuop_func op_4838_0_nf; -extern cpuop_func op_4838_0_ff; -extern cpuop_func op_4839_0_nf; -extern cpuop_func op_4839_0_ff; -extern cpuop_func op_4840_0_nf; -extern cpuop_func op_4840_0_ff; -extern cpuop_func op_4848_0_nf; -extern cpuop_func op_4848_0_ff; -extern cpuop_func op_4850_0_nf; -extern cpuop_func op_4850_0_ff; -extern cpuop_func op_4868_0_nf; -extern cpuop_func op_4868_0_ff; -extern cpuop_func op_4870_0_nf; -extern cpuop_func op_4870_0_ff; -extern cpuop_func op_4878_0_nf; -extern cpuop_func op_4878_0_ff; -extern cpuop_func op_4879_0_nf; -extern cpuop_func op_4879_0_ff; -extern cpuop_func op_487a_0_nf; -extern cpuop_func op_487a_0_ff; -extern cpuop_func op_487b_0_nf; -extern cpuop_func op_487b_0_ff; -extern cpuop_func op_4880_0_nf; -extern cpuop_func op_4880_0_ff; -extern cpuop_func op_4890_0_nf; -extern cpuop_func op_4890_0_ff; -extern cpuop_func op_48a0_0_nf; -extern cpuop_func op_48a0_0_ff; -extern cpuop_func op_48a8_0_nf; -extern cpuop_func op_48a8_0_ff; -extern cpuop_func op_48b0_0_nf; -extern cpuop_func op_48b0_0_ff; -extern cpuop_func op_48b8_0_nf; -extern cpuop_func op_48b8_0_ff; -extern cpuop_func op_48b9_0_nf; -extern cpuop_func op_48b9_0_ff; -extern cpuop_func op_48c0_0_nf; -extern cpuop_func op_48c0_0_ff; -extern cpuop_func op_48d0_0_nf; -extern cpuop_func op_48d0_0_ff; -extern cpuop_func op_48e0_0_nf; -extern cpuop_func op_48e0_0_ff; -extern cpuop_func op_48e8_0_nf; -extern cpuop_func op_48e8_0_ff; -extern cpuop_func op_48f0_0_nf; -extern cpuop_func op_48f0_0_ff; -extern cpuop_func op_48f8_0_nf; -extern cpuop_func op_48f8_0_ff; -extern cpuop_func op_48f9_0_nf; -extern cpuop_func op_48f9_0_ff; -extern cpuop_func op_49c0_0_nf; -extern cpuop_func op_49c0_0_ff; -extern cpuop_func op_4a00_0_nf; -extern cpuop_func op_4a00_0_ff; -extern cpuop_func op_4a10_0_nf; -extern cpuop_func op_4a10_0_ff; -extern cpuop_func op_4a18_0_nf; -extern cpuop_func op_4a18_0_ff; -extern cpuop_func op_4a20_0_nf; -extern cpuop_func op_4a20_0_ff; -extern cpuop_func op_4a28_0_nf; -extern cpuop_func op_4a28_0_ff; -extern cpuop_func op_4a30_0_nf; -extern cpuop_func op_4a30_0_ff; -extern cpuop_func op_4a38_0_nf; -extern cpuop_func op_4a38_0_ff; -extern cpuop_func op_4a39_0_nf; -extern cpuop_func op_4a39_0_ff; -extern cpuop_func op_4a3a_0_nf; -extern cpuop_func op_4a3a_0_ff; -extern cpuop_func op_4a3b_0_nf; -extern cpuop_func op_4a3b_0_ff; -extern cpuop_func op_4a3c_0_nf; -extern cpuop_func op_4a3c_0_ff; -extern cpuop_func op_4a40_0_nf; -extern cpuop_func op_4a40_0_ff; -extern cpuop_func op_4a48_0_nf; -extern cpuop_func op_4a48_0_ff; -extern cpuop_func op_4a50_0_nf; -extern cpuop_func op_4a50_0_ff; -extern cpuop_func op_4a58_0_nf; -extern cpuop_func op_4a58_0_ff; -extern cpuop_func op_4a60_0_nf; -extern cpuop_func op_4a60_0_ff; -extern cpuop_func op_4a68_0_nf; -extern cpuop_func op_4a68_0_ff; -extern cpuop_func op_4a70_0_nf; -extern cpuop_func op_4a70_0_ff; -extern cpuop_func op_4a78_0_nf; -extern cpuop_func op_4a78_0_ff; -extern cpuop_func op_4a79_0_nf; -extern cpuop_func op_4a79_0_ff; -extern cpuop_func op_4a7a_0_nf; -extern cpuop_func op_4a7a_0_ff; -extern cpuop_func op_4a7b_0_nf; -extern cpuop_func op_4a7b_0_ff; -extern cpuop_func op_4a7c_0_nf; -extern cpuop_func op_4a7c_0_ff; -extern cpuop_func op_4a80_0_nf; -extern cpuop_func op_4a80_0_ff; -extern cpuop_func op_4a88_0_nf; -extern cpuop_func op_4a88_0_ff; -extern cpuop_func op_4a90_0_nf; -extern cpuop_func op_4a90_0_ff; -extern cpuop_func op_4a98_0_nf; -extern cpuop_func op_4a98_0_ff; -extern cpuop_func op_4aa0_0_nf; -extern cpuop_func op_4aa0_0_ff; -extern cpuop_func op_4aa8_0_nf; -extern cpuop_func op_4aa8_0_ff; -extern cpuop_func op_4ab0_0_nf; -extern cpuop_func op_4ab0_0_ff; -extern cpuop_func op_4ab8_0_nf; -extern cpuop_func op_4ab8_0_ff; -extern cpuop_func op_4ab9_0_nf; -extern cpuop_func op_4ab9_0_ff; -extern cpuop_func op_4aba_0_nf; -extern cpuop_func op_4aba_0_ff; -extern cpuop_func op_4abb_0_nf; -extern cpuop_func op_4abb_0_ff; -extern cpuop_func op_4abc_0_nf; -extern cpuop_func op_4abc_0_ff; -extern cpuop_func op_4ac0_0_nf; -extern cpuop_func op_4ac0_0_ff; -extern cpuop_func op_4ad0_0_nf; -extern cpuop_func op_4ad0_0_ff; -extern cpuop_func op_4ad8_0_nf; -extern cpuop_func op_4ad8_0_ff; -extern cpuop_func op_4ae0_0_nf; -extern cpuop_func op_4ae0_0_ff; -extern cpuop_func op_4ae8_0_nf; -extern cpuop_func op_4ae8_0_ff; -extern cpuop_func op_4af0_0_nf; -extern cpuop_func op_4af0_0_ff; -extern cpuop_func op_4af8_0_nf; -extern cpuop_func op_4af8_0_ff; -extern cpuop_func op_4af9_0_nf; -extern cpuop_func op_4af9_0_ff; -extern cpuop_func op_4c00_0_nf; -extern cpuop_func op_4c00_0_ff; -extern cpuop_func op_4c10_0_nf; -extern cpuop_func op_4c10_0_ff; -extern cpuop_func op_4c18_0_nf; -extern cpuop_func op_4c18_0_ff; -extern cpuop_func op_4c20_0_nf; -extern cpuop_func op_4c20_0_ff; -extern cpuop_func op_4c28_0_nf; -extern cpuop_func op_4c28_0_ff; -extern cpuop_func op_4c30_0_nf; -extern cpuop_func op_4c30_0_ff; -extern cpuop_func op_4c38_0_nf; -extern cpuop_func op_4c38_0_ff; -extern cpuop_func op_4c39_0_nf; -extern cpuop_func op_4c39_0_ff; -extern cpuop_func op_4c3a_0_nf; -extern cpuop_func op_4c3a_0_ff; -extern cpuop_func op_4c3b_0_nf; -extern cpuop_func op_4c3b_0_ff; -extern cpuop_func op_4c3c_0_nf; -extern cpuop_func op_4c3c_0_ff; -extern cpuop_func op_4c40_0_nf; -extern cpuop_func op_4c40_0_ff; -extern cpuop_func op_4c50_0_nf; -extern cpuop_func op_4c50_0_ff; -extern cpuop_func op_4c58_0_nf; -extern cpuop_func op_4c58_0_ff; -extern cpuop_func op_4c60_0_nf; -extern cpuop_func op_4c60_0_ff; -extern cpuop_func op_4c68_0_nf; -extern cpuop_func op_4c68_0_ff; -extern cpuop_func op_4c70_0_nf; -extern cpuop_func op_4c70_0_ff; -extern cpuop_func op_4c78_0_nf; -extern cpuop_func op_4c78_0_ff; -extern cpuop_func op_4c79_0_nf; -extern cpuop_func op_4c79_0_ff; -extern cpuop_func op_4c7a_0_nf; -extern cpuop_func op_4c7a_0_ff; -extern cpuop_func op_4c7b_0_nf; -extern cpuop_func op_4c7b_0_ff; -extern cpuop_func op_4c7c_0_nf; -extern cpuop_func op_4c7c_0_ff; -extern cpuop_func op_4c90_0_nf; -extern cpuop_func op_4c90_0_ff; -extern cpuop_func op_4c98_0_nf; -extern cpuop_func op_4c98_0_ff; -extern cpuop_func op_4ca8_0_nf; -extern cpuop_func op_4ca8_0_ff; -extern cpuop_func op_4cb0_0_nf; -extern cpuop_func op_4cb0_0_ff; -extern cpuop_func op_4cb8_0_nf; -extern cpuop_func op_4cb8_0_ff; -extern cpuop_func op_4cb9_0_nf; -extern cpuop_func op_4cb9_0_ff; -extern cpuop_func op_4cba_0_nf; -extern cpuop_func op_4cba_0_ff; -extern cpuop_func op_4cbb_0_nf; -extern cpuop_func op_4cbb_0_ff; -extern cpuop_func op_4cd0_0_nf; -extern cpuop_func op_4cd0_0_ff; -extern cpuop_func op_4cd8_0_nf; -extern cpuop_func op_4cd8_0_ff; -extern cpuop_func op_4ce8_0_nf; -extern cpuop_func op_4ce8_0_ff; -extern cpuop_func op_4cf0_0_nf; -extern cpuop_func op_4cf0_0_ff; -extern cpuop_func op_4cf8_0_nf; -extern cpuop_func op_4cf8_0_ff; -extern cpuop_func op_4cf9_0_nf; -extern cpuop_func op_4cf9_0_ff; -extern cpuop_func op_4cfa_0_nf; -extern cpuop_func op_4cfa_0_ff; -extern cpuop_func op_4cfb_0_nf; -extern cpuop_func op_4cfb_0_ff; -extern cpuop_func op_4e40_0_nf; -extern cpuop_func op_4e40_0_ff; -extern cpuop_func op_4e50_0_nf; -extern cpuop_func op_4e50_0_ff; -extern cpuop_func op_4e58_0_nf; -extern cpuop_func op_4e58_0_ff; -extern cpuop_func op_4e60_0_nf; -extern cpuop_func op_4e60_0_ff; -extern cpuop_func op_4e68_0_nf; -extern cpuop_func op_4e68_0_ff; -extern cpuop_func op_4e70_0_nf; -extern cpuop_func op_4e70_0_ff; -extern cpuop_func op_4e71_0_nf; -extern cpuop_func op_4e71_0_ff; -extern cpuop_func op_4e72_0_nf; -extern cpuop_func op_4e72_0_ff; -extern cpuop_func op_4e73_0_nf; -extern cpuop_func op_4e73_0_ff; -extern cpuop_func op_4e74_0_nf; -extern cpuop_func op_4e74_0_ff; -extern cpuop_func op_4e75_0_nf; -extern cpuop_func op_4e75_0_ff; -extern cpuop_func op_4e76_0_nf; -extern cpuop_func op_4e76_0_ff; -extern cpuop_func op_4e77_0_nf; -extern cpuop_func op_4e77_0_ff; -extern cpuop_func op_4e7a_0_nf; -extern cpuop_func op_4e7a_0_ff; -extern cpuop_func op_4e7b_0_nf; -extern cpuop_func op_4e7b_0_ff; -extern cpuop_func op_4e90_0_nf; -extern cpuop_func op_4e90_0_ff; -extern cpuop_func op_4ea8_0_nf; -extern cpuop_func op_4ea8_0_ff; -extern cpuop_func op_4eb0_0_nf; -extern cpuop_func op_4eb0_0_ff; -extern cpuop_func op_4eb8_0_nf; -extern cpuop_func op_4eb8_0_ff; -extern cpuop_func op_4eb9_0_nf; -extern cpuop_func op_4eb9_0_ff; -extern cpuop_func op_4eba_0_nf; -extern cpuop_func op_4eba_0_ff; -extern cpuop_func op_4ebb_0_nf; -extern cpuop_func op_4ebb_0_ff; -extern cpuop_func op_4ed0_0_nf; -extern cpuop_func op_4ed0_0_ff; -extern cpuop_func op_4ee8_0_nf; -extern cpuop_func op_4ee8_0_ff; -extern cpuop_func op_4ef0_0_nf; -extern cpuop_func op_4ef0_0_ff; -extern cpuop_func op_4ef8_0_nf; -extern cpuop_func op_4ef8_0_ff; -extern cpuop_func op_4ef9_0_nf; -extern cpuop_func op_4ef9_0_ff; -extern cpuop_func op_4efa_0_nf; -extern cpuop_func op_4efa_0_ff; -extern cpuop_func op_4efb_0_nf; -extern cpuop_func op_4efb_0_ff; -extern cpuop_func op_5000_0_nf; -extern cpuop_func op_5000_0_ff; -extern cpuop_func op_5010_0_nf; -extern cpuop_func op_5010_0_ff; -extern cpuop_func op_5018_0_nf; -extern cpuop_func op_5018_0_ff; -extern cpuop_func op_5020_0_nf; -extern cpuop_func op_5020_0_ff; -extern cpuop_func op_5028_0_nf; -extern cpuop_func op_5028_0_ff; -extern cpuop_func op_5030_0_nf; -extern cpuop_func op_5030_0_ff; -extern cpuop_func op_5038_0_nf; -extern cpuop_func op_5038_0_ff; -extern cpuop_func op_5039_0_nf; -extern cpuop_func op_5039_0_ff; -extern cpuop_func op_5040_0_nf; -extern cpuop_func op_5040_0_ff; -extern cpuop_func op_5048_0_nf; -extern cpuop_func op_5048_0_ff; -extern cpuop_func op_5050_0_nf; -extern cpuop_func op_5050_0_ff; -extern cpuop_func op_5058_0_nf; -extern cpuop_func op_5058_0_ff; -extern cpuop_func op_5060_0_nf; -extern cpuop_func op_5060_0_ff; -extern cpuop_func op_5068_0_nf; -extern cpuop_func op_5068_0_ff; -extern cpuop_func op_5070_0_nf; -extern cpuop_func op_5070_0_ff; -extern cpuop_func op_5078_0_nf; -extern cpuop_func op_5078_0_ff; -extern cpuop_func op_5079_0_nf; -extern cpuop_func op_5079_0_ff; -extern cpuop_func op_5080_0_nf; -extern cpuop_func op_5080_0_ff; -extern cpuop_func op_5088_0_nf; -extern cpuop_func op_5088_0_ff; -extern cpuop_func op_5090_0_nf; -extern cpuop_func op_5090_0_ff; -extern cpuop_func op_5098_0_nf; -extern cpuop_func op_5098_0_ff; -extern cpuop_func op_50a0_0_nf; -extern cpuop_func op_50a0_0_ff; -extern cpuop_func op_50a8_0_nf; -extern cpuop_func op_50a8_0_ff; -extern cpuop_func op_50b0_0_nf; -extern cpuop_func op_50b0_0_ff; -extern cpuop_func op_50b8_0_nf; -extern cpuop_func op_50b8_0_ff; -extern cpuop_func op_50b9_0_nf; -extern cpuop_func op_50b9_0_ff; -extern cpuop_func op_50c0_0_nf; -extern cpuop_func op_50c0_0_ff; -extern cpuop_func op_50c8_0_nf; -extern cpuop_func op_50c8_0_ff; -extern cpuop_func op_50d0_0_nf; -extern cpuop_func op_50d0_0_ff; -extern cpuop_func op_50d8_0_nf; -extern cpuop_func op_50d8_0_ff; -extern cpuop_func op_50e0_0_nf; -extern cpuop_func op_50e0_0_ff; -extern cpuop_func op_50e8_0_nf; -extern cpuop_func op_50e8_0_ff; -extern cpuop_func op_50f0_0_nf; -extern cpuop_func op_50f0_0_ff; -extern cpuop_func op_50f8_0_nf; -extern cpuop_func op_50f8_0_ff; -extern cpuop_func op_50f9_0_nf; -extern cpuop_func op_50f9_0_ff; -extern cpuop_func op_50fa_0_nf; -extern cpuop_func op_50fa_0_ff; -extern cpuop_func op_50fb_0_nf; -extern cpuop_func op_50fb_0_ff; -extern cpuop_func op_50fc_0_nf; -extern cpuop_func op_50fc_0_ff; -extern cpuop_func op_5100_0_nf; -extern cpuop_func op_5100_0_ff; -extern cpuop_func op_5110_0_nf; -extern cpuop_func op_5110_0_ff; -extern cpuop_func op_5118_0_nf; -extern cpuop_func op_5118_0_ff; -extern cpuop_func op_5120_0_nf; -extern cpuop_func op_5120_0_ff; -extern cpuop_func op_5128_0_nf; -extern cpuop_func op_5128_0_ff; -extern cpuop_func op_5130_0_nf; -extern cpuop_func op_5130_0_ff; -extern cpuop_func op_5138_0_nf; -extern cpuop_func op_5138_0_ff; -extern cpuop_func op_5139_0_nf; -extern cpuop_func op_5139_0_ff; -extern cpuop_func op_5140_0_nf; -extern cpuop_func op_5140_0_ff; -extern cpuop_func op_5148_0_nf; -extern cpuop_func op_5148_0_ff; -extern cpuop_func op_5150_0_nf; -extern cpuop_func op_5150_0_ff; -extern cpuop_func op_5158_0_nf; -extern cpuop_func op_5158_0_ff; -extern cpuop_func op_5160_0_nf; -extern cpuop_func op_5160_0_ff; -extern cpuop_func op_5168_0_nf; -extern cpuop_func op_5168_0_ff; -extern cpuop_func op_5170_0_nf; -extern cpuop_func op_5170_0_ff; -extern cpuop_func op_5178_0_nf; -extern cpuop_func op_5178_0_ff; -extern cpuop_func op_5179_0_nf; -extern cpuop_func op_5179_0_ff; -extern cpuop_func op_5180_0_nf; -extern cpuop_func op_5180_0_ff; -extern cpuop_func op_5188_0_nf; -extern cpuop_func op_5188_0_ff; -extern cpuop_func op_5190_0_nf; -extern cpuop_func op_5190_0_ff; -extern cpuop_func op_5198_0_nf; -extern cpuop_func op_5198_0_ff; -extern cpuop_func op_51a0_0_nf; -extern cpuop_func op_51a0_0_ff; -extern cpuop_func op_51a8_0_nf; -extern cpuop_func op_51a8_0_ff; -extern cpuop_func op_51b0_0_nf; -extern cpuop_func op_51b0_0_ff; -extern cpuop_func op_51b8_0_nf; -extern cpuop_func op_51b8_0_ff; -extern cpuop_func op_51b9_0_nf; -extern cpuop_func op_51b9_0_ff; -extern cpuop_func op_51c0_0_nf; -extern cpuop_func op_51c0_0_ff; -extern cpuop_func op_51c8_0_nf; -extern cpuop_func op_51c8_0_ff; -extern cpuop_func op_51d0_0_nf; -extern cpuop_func op_51d0_0_ff; -extern cpuop_func op_51d8_0_nf; -extern cpuop_func op_51d8_0_ff; -extern cpuop_func op_51e0_0_nf; -extern cpuop_func op_51e0_0_ff; -extern cpuop_func op_51e8_0_nf; -extern cpuop_func op_51e8_0_ff; -extern cpuop_func op_51f0_0_nf; -extern cpuop_func op_51f0_0_ff; -extern cpuop_func op_51f8_0_nf; -extern cpuop_func op_51f8_0_ff; -extern cpuop_func op_51f9_0_nf; -extern cpuop_func op_51f9_0_ff; -extern cpuop_func op_51fa_0_nf; -extern cpuop_func op_51fa_0_ff; -extern cpuop_func op_51fb_0_nf; -extern cpuop_func op_51fb_0_ff; -extern cpuop_func op_51fc_0_nf; -extern cpuop_func op_51fc_0_ff; -extern cpuop_func op_52c0_0_nf; -extern cpuop_func op_52c0_0_ff; -extern cpuop_func op_52c8_0_nf; -extern cpuop_func op_52c8_0_ff; -extern cpuop_func op_52d0_0_nf; -extern cpuop_func op_52d0_0_ff; -extern cpuop_func op_52d8_0_nf; -extern cpuop_func op_52d8_0_ff; -extern cpuop_func op_52e0_0_nf; -extern cpuop_func op_52e0_0_ff; -extern cpuop_func op_52e8_0_nf; -extern cpuop_func op_52e8_0_ff; -extern cpuop_func op_52f0_0_nf; -extern cpuop_func op_52f0_0_ff; -extern cpuop_func op_52f8_0_nf; -extern cpuop_func op_52f8_0_ff; -extern cpuop_func op_52f9_0_nf; -extern cpuop_func op_52f9_0_ff; -extern cpuop_func op_52fa_0_nf; -extern cpuop_func op_52fa_0_ff; -extern cpuop_func op_52fb_0_nf; -extern cpuop_func op_52fb_0_ff; -extern cpuop_func op_52fc_0_nf; -extern cpuop_func op_52fc_0_ff; -extern cpuop_func op_53c0_0_nf; -extern cpuop_func op_53c0_0_ff; -extern cpuop_func op_53c8_0_nf; -extern cpuop_func op_53c8_0_ff; -extern cpuop_func op_53d0_0_nf; -extern cpuop_func op_53d0_0_ff; -extern cpuop_func op_53d8_0_nf; -extern cpuop_func op_53d8_0_ff; -extern cpuop_func op_53e0_0_nf; -extern cpuop_func op_53e0_0_ff; -extern cpuop_func op_53e8_0_nf; -extern cpuop_func op_53e8_0_ff; -extern cpuop_func op_53f0_0_nf; -extern cpuop_func op_53f0_0_ff; -extern cpuop_func op_53f8_0_nf; -extern cpuop_func op_53f8_0_ff; -extern cpuop_func op_53f9_0_nf; -extern cpuop_func op_53f9_0_ff; -extern cpuop_func op_53fa_0_nf; -extern cpuop_func op_53fa_0_ff; -extern cpuop_func op_53fb_0_nf; -extern cpuop_func op_53fb_0_ff; -extern cpuop_func op_53fc_0_nf; -extern cpuop_func op_53fc_0_ff; -extern cpuop_func op_54c0_0_nf; -extern cpuop_func op_54c0_0_ff; -extern cpuop_func op_54c8_0_nf; -extern cpuop_func op_54c8_0_ff; -extern cpuop_func op_54d0_0_nf; -extern cpuop_func op_54d0_0_ff; -extern cpuop_func op_54d8_0_nf; -extern cpuop_func op_54d8_0_ff; -extern cpuop_func op_54e0_0_nf; -extern cpuop_func op_54e0_0_ff; -extern cpuop_func op_54e8_0_nf; -extern cpuop_func op_54e8_0_ff; -extern cpuop_func op_54f0_0_nf; -extern cpuop_func op_54f0_0_ff; -extern cpuop_func op_54f8_0_nf; -extern cpuop_func op_54f8_0_ff; -extern cpuop_func op_54f9_0_nf; -extern cpuop_func op_54f9_0_ff; -extern cpuop_func op_54fa_0_nf; -extern cpuop_func op_54fa_0_ff; -extern cpuop_func op_54fb_0_nf; -extern cpuop_func op_54fb_0_ff; -extern cpuop_func op_54fc_0_nf; -extern cpuop_func op_54fc_0_ff; -extern cpuop_func op_55c0_0_nf; -extern cpuop_func op_55c0_0_ff; -extern cpuop_func op_55c8_0_nf; -extern cpuop_func op_55c8_0_ff; -extern cpuop_func op_55d0_0_nf; -extern cpuop_func op_55d0_0_ff; -extern cpuop_func op_55d8_0_nf; -extern cpuop_func op_55d8_0_ff; -extern cpuop_func op_55e0_0_nf; -extern cpuop_func op_55e0_0_ff; -extern cpuop_func op_55e8_0_nf; -extern cpuop_func op_55e8_0_ff; -extern cpuop_func op_55f0_0_nf; -extern cpuop_func op_55f0_0_ff; -extern cpuop_func op_55f8_0_nf; -extern cpuop_func op_55f8_0_ff; -extern cpuop_func op_55f9_0_nf; -extern cpuop_func op_55f9_0_ff; -extern cpuop_func op_55fa_0_nf; -extern cpuop_func op_55fa_0_ff; -extern cpuop_func op_55fb_0_nf; -extern cpuop_func op_55fb_0_ff; -extern cpuop_func op_55fc_0_nf; -extern cpuop_func op_55fc_0_ff; -extern cpuop_func op_56c0_0_nf; -extern cpuop_func op_56c0_0_ff; -extern cpuop_func op_56c8_0_nf; -extern cpuop_func op_56c8_0_ff; -extern cpuop_func op_56d0_0_nf; -extern cpuop_func op_56d0_0_ff; -extern cpuop_func op_56d8_0_nf; -extern cpuop_func op_56d8_0_ff; -extern cpuop_func op_56e0_0_nf; -extern cpuop_func op_56e0_0_ff; -extern cpuop_func op_56e8_0_nf; -extern cpuop_func op_56e8_0_ff; -extern cpuop_func op_56f0_0_nf; -extern cpuop_func op_56f0_0_ff; -extern cpuop_func op_56f8_0_nf; -extern cpuop_func op_56f8_0_ff; -extern cpuop_func op_56f9_0_nf; -extern cpuop_func op_56f9_0_ff; -extern cpuop_func op_56fa_0_nf; -extern cpuop_func op_56fa_0_ff; -extern cpuop_func op_56fb_0_nf; -extern cpuop_func op_56fb_0_ff; -extern cpuop_func op_56fc_0_nf; -extern cpuop_func op_56fc_0_ff; -extern cpuop_func op_57c0_0_nf; -extern cpuop_func op_57c0_0_ff; -extern cpuop_func op_57c8_0_nf; -extern cpuop_func op_57c8_0_ff; -extern cpuop_func op_57d0_0_nf; -extern cpuop_func op_57d0_0_ff; -extern cpuop_func op_57d8_0_nf; -extern cpuop_func op_57d8_0_ff; -extern cpuop_func op_57e0_0_nf; -extern cpuop_func op_57e0_0_ff; -extern cpuop_func op_57e8_0_nf; -extern cpuop_func op_57e8_0_ff; -extern cpuop_func op_57f0_0_nf; -extern cpuop_func op_57f0_0_ff; -extern cpuop_func op_57f8_0_nf; -extern cpuop_func op_57f8_0_ff; -extern cpuop_func op_57f9_0_nf; -extern cpuop_func op_57f9_0_ff; -extern cpuop_func op_57fa_0_nf; -extern cpuop_func op_57fa_0_ff; -extern cpuop_func op_57fb_0_nf; -extern cpuop_func op_57fb_0_ff; -extern cpuop_func op_57fc_0_nf; -extern cpuop_func op_57fc_0_ff; -extern cpuop_func op_58c0_0_nf; -extern cpuop_func op_58c0_0_ff; -extern cpuop_func op_58c8_0_nf; -extern cpuop_func op_58c8_0_ff; -extern cpuop_func op_58d0_0_nf; -extern cpuop_func op_58d0_0_ff; -extern cpuop_func op_58d8_0_nf; -extern cpuop_func op_58d8_0_ff; -extern cpuop_func op_58e0_0_nf; -extern cpuop_func op_58e0_0_ff; -extern cpuop_func op_58e8_0_nf; -extern cpuop_func op_58e8_0_ff; -extern cpuop_func op_58f0_0_nf; -extern cpuop_func op_58f0_0_ff; -extern cpuop_func op_58f8_0_nf; -extern cpuop_func op_58f8_0_ff; -extern cpuop_func op_58f9_0_nf; -extern cpuop_func op_58f9_0_ff; -extern cpuop_func op_58fa_0_nf; -extern cpuop_func op_58fa_0_ff; -extern cpuop_func op_58fb_0_nf; -extern cpuop_func op_58fb_0_ff; -extern cpuop_func op_58fc_0_nf; -extern cpuop_func op_58fc_0_ff; -extern cpuop_func op_59c0_0_nf; -extern cpuop_func op_59c0_0_ff; -extern cpuop_func op_59c8_0_nf; -extern cpuop_func op_59c8_0_ff; -extern cpuop_func op_59d0_0_nf; -extern cpuop_func op_59d0_0_ff; -extern cpuop_func op_59d8_0_nf; -extern cpuop_func op_59d8_0_ff; -extern cpuop_func op_59e0_0_nf; -extern cpuop_func op_59e0_0_ff; -extern cpuop_func op_59e8_0_nf; -extern cpuop_func op_59e8_0_ff; -extern cpuop_func op_59f0_0_nf; -extern cpuop_func op_59f0_0_ff; -extern cpuop_func op_59f8_0_nf; -extern cpuop_func op_59f8_0_ff; -extern cpuop_func op_59f9_0_nf; -extern cpuop_func op_59f9_0_ff; -extern cpuop_func op_59fa_0_nf; -extern cpuop_func op_59fa_0_ff; -extern cpuop_func op_59fb_0_nf; -extern cpuop_func op_59fb_0_ff; -extern cpuop_func op_59fc_0_nf; -extern cpuop_func op_59fc_0_ff; -extern cpuop_func op_5ac0_0_nf; -extern cpuop_func op_5ac0_0_ff; -extern cpuop_func op_5ac8_0_nf; -extern cpuop_func op_5ac8_0_ff; -extern cpuop_func op_5ad0_0_nf; -extern cpuop_func op_5ad0_0_ff; -extern cpuop_func op_5ad8_0_nf; -extern cpuop_func op_5ad8_0_ff; -extern cpuop_func op_5ae0_0_nf; -extern cpuop_func op_5ae0_0_ff; -extern cpuop_func op_5ae8_0_nf; -extern cpuop_func op_5ae8_0_ff; -extern cpuop_func op_5af0_0_nf; -extern cpuop_func op_5af0_0_ff; -extern cpuop_func op_5af8_0_nf; -extern cpuop_func op_5af8_0_ff; -extern cpuop_func op_5af9_0_nf; -extern cpuop_func op_5af9_0_ff; -extern cpuop_func op_5afa_0_nf; -extern cpuop_func op_5afa_0_ff; -extern cpuop_func op_5afb_0_nf; -extern cpuop_func op_5afb_0_ff; -extern cpuop_func op_5afc_0_nf; -extern cpuop_func op_5afc_0_ff; -extern cpuop_func op_5bc0_0_nf; -extern cpuop_func op_5bc0_0_ff; -extern cpuop_func op_5bc8_0_nf; -extern cpuop_func op_5bc8_0_ff; -extern cpuop_func op_5bd0_0_nf; -extern cpuop_func op_5bd0_0_ff; -extern cpuop_func op_5bd8_0_nf; -extern cpuop_func op_5bd8_0_ff; -extern cpuop_func op_5be0_0_nf; -extern cpuop_func op_5be0_0_ff; -extern cpuop_func op_5be8_0_nf; -extern cpuop_func op_5be8_0_ff; -extern cpuop_func op_5bf0_0_nf; -extern cpuop_func op_5bf0_0_ff; -extern cpuop_func op_5bf8_0_nf; -extern cpuop_func op_5bf8_0_ff; -extern cpuop_func op_5bf9_0_nf; -extern cpuop_func op_5bf9_0_ff; -extern cpuop_func op_5bfa_0_nf; -extern cpuop_func op_5bfa_0_ff; -extern cpuop_func op_5bfb_0_nf; -extern cpuop_func op_5bfb_0_ff; -extern cpuop_func op_5bfc_0_nf; -extern cpuop_func op_5bfc_0_ff; -extern cpuop_func op_5cc0_0_nf; -extern cpuop_func op_5cc0_0_ff; -extern cpuop_func op_5cc8_0_nf; -extern cpuop_func op_5cc8_0_ff; -extern cpuop_func op_5cd0_0_nf; -extern cpuop_func op_5cd0_0_ff; -extern cpuop_func op_5cd8_0_nf; -extern cpuop_func op_5cd8_0_ff; -extern cpuop_func op_5ce0_0_nf; -extern cpuop_func op_5ce0_0_ff; -extern cpuop_func op_5ce8_0_nf; -extern cpuop_func op_5ce8_0_ff; -extern cpuop_func op_5cf0_0_nf; -extern cpuop_func op_5cf0_0_ff; -extern cpuop_func op_5cf8_0_nf; -extern cpuop_func op_5cf8_0_ff; -extern cpuop_func op_5cf9_0_nf; -extern cpuop_func op_5cf9_0_ff; -extern cpuop_func op_5cfa_0_nf; -extern cpuop_func op_5cfa_0_ff; -extern cpuop_func op_5cfb_0_nf; -extern cpuop_func op_5cfb_0_ff; -extern cpuop_func op_5cfc_0_nf; -extern cpuop_func op_5cfc_0_ff; -extern cpuop_func op_5dc0_0_nf; -extern cpuop_func op_5dc0_0_ff; -extern cpuop_func op_5dc8_0_nf; -extern cpuop_func op_5dc8_0_ff; -extern cpuop_func op_5dd0_0_nf; -extern cpuop_func op_5dd0_0_ff; -extern cpuop_func op_5dd8_0_nf; -extern cpuop_func op_5dd8_0_ff; -extern cpuop_func op_5de0_0_nf; -extern cpuop_func op_5de0_0_ff; -extern cpuop_func op_5de8_0_nf; -extern cpuop_func op_5de8_0_ff; -extern cpuop_func op_5df0_0_nf; -extern cpuop_func op_5df0_0_ff; -extern cpuop_func op_5df8_0_nf; -extern cpuop_func op_5df8_0_ff; -extern cpuop_func op_5df9_0_nf; -extern cpuop_func op_5df9_0_ff; -extern cpuop_func op_5dfa_0_nf; -extern cpuop_func op_5dfa_0_ff; -extern cpuop_func op_5dfb_0_nf; -extern cpuop_func op_5dfb_0_ff; -extern cpuop_func op_5dfc_0_nf; -extern cpuop_func op_5dfc_0_ff; -extern cpuop_func op_5ec0_0_nf; -extern cpuop_func op_5ec0_0_ff; -extern cpuop_func op_5ec8_0_nf; -extern cpuop_func op_5ec8_0_ff; -extern cpuop_func op_5ed0_0_nf; -extern cpuop_func op_5ed0_0_ff; -extern cpuop_func op_5ed8_0_nf; -extern cpuop_func op_5ed8_0_ff; -extern cpuop_func op_5ee0_0_nf; -extern cpuop_func op_5ee0_0_ff; -extern cpuop_func op_5ee8_0_nf; -extern cpuop_func op_5ee8_0_ff; -extern cpuop_func op_5ef0_0_nf; -extern cpuop_func op_5ef0_0_ff; -extern cpuop_func op_5ef8_0_nf; -extern cpuop_func op_5ef8_0_ff; -extern cpuop_func op_5ef9_0_nf; -extern cpuop_func op_5ef9_0_ff; -extern cpuop_func op_5efa_0_nf; -extern cpuop_func op_5efa_0_ff; -extern cpuop_func op_5efb_0_nf; -extern cpuop_func op_5efb_0_ff; -extern cpuop_func op_5efc_0_nf; -extern cpuop_func op_5efc_0_ff; -extern cpuop_func op_5fc0_0_nf; -extern cpuop_func op_5fc0_0_ff; -extern cpuop_func op_5fc8_0_nf; -extern cpuop_func op_5fc8_0_ff; -extern cpuop_func op_5fd0_0_nf; -extern cpuop_func op_5fd0_0_ff; -extern cpuop_func op_5fd8_0_nf; -extern cpuop_func op_5fd8_0_ff; -extern cpuop_func op_5fe0_0_nf; -extern cpuop_func op_5fe0_0_ff; -extern cpuop_func op_5fe8_0_nf; -extern cpuop_func op_5fe8_0_ff; -extern cpuop_func op_5ff0_0_nf; -extern cpuop_func op_5ff0_0_ff; -extern cpuop_func op_5ff8_0_nf; -extern cpuop_func op_5ff8_0_ff; -extern cpuop_func op_5ff9_0_nf; -extern cpuop_func op_5ff9_0_ff; -extern cpuop_func op_5ffa_0_nf; -extern cpuop_func op_5ffa_0_ff; -extern cpuop_func op_5ffb_0_nf; -extern cpuop_func op_5ffb_0_ff; -extern cpuop_func op_5ffc_0_nf; -extern cpuop_func op_5ffc_0_ff; -extern cpuop_func op_6000_0_nf; -extern cpuop_func op_6000_0_ff; -extern cpuop_func op_6001_0_nf; -extern cpuop_func op_6001_0_ff; -extern cpuop_func op_60ff_0_nf; -extern cpuop_func op_60ff_0_ff; -extern cpuop_func op_6100_0_nf; -extern cpuop_func op_6100_0_ff; -extern cpuop_func op_6101_0_nf; -extern cpuop_func op_6101_0_ff; -extern cpuop_func op_61ff_0_nf; -extern cpuop_func op_61ff_0_ff; -extern cpuop_func op_6200_0_nf; -extern cpuop_func op_6200_0_ff; -extern cpuop_func op_6201_0_nf; -extern cpuop_func op_6201_0_ff; -extern cpuop_func op_62ff_0_nf; -extern cpuop_func op_62ff_0_ff; -extern cpuop_func op_6300_0_nf; -extern cpuop_func op_6300_0_ff; -extern cpuop_func op_6301_0_nf; -extern cpuop_func op_6301_0_ff; -extern cpuop_func op_63ff_0_nf; -extern cpuop_func op_63ff_0_ff; -extern cpuop_func op_6400_0_nf; -extern cpuop_func op_6400_0_ff; -extern cpuop_func op_6401_0_nf; -extern cpuop_func op_6401_0_ff; -extern cpuop_func op_64ff_0_nf; -extern cpuop_func op_64ff_0_ff; -extern cpuop_func op_6500_0_nf; -extern cpuop_func op_6500_0_ff; -extern cpuop_func op_6501_0_nf; -extern cpuop_func op_6501_0_ff; -extern cpuop_func op_65ff_0_nf; -extern cpuop_func op_65ff_0_ff; -extern cpuop_func op_6600_0_nf; -extern cpuop_func op_6600_0_ff; -extern cpuop_func op_6601_0_nf; -extern cpuop_func op_6601_0_ff; -extern cpuop_func op_66ff_0_nf; -extern cpuop_func op_66ff_0_ff; -extern cpuop_func op_6700_0_nf; -extern cpuop_func op_6700_0_ff; -extern cpuop_func op_6701_0_nf; -extern cpuop_func op_6701_0_ff; -extern cpuop_func op_67ff_0_nf; -extern cpuop_func op_67ff_0_ff; -extern cpuop_func op_6800_0_nf; -extern cpuop_func op_6800_0_ff; -extern cpuop_func op_6801_0_nf; -extern cpuop_func op_6801_0_ff; -extern cpuop_func op_68ff_0_nf; -extern cpuop_func op_68ff_0_ff; -extern cpuop_func op_6900_0_nf; -extern cpuop_func op_6900_0_ff; -extern cpuop_func op_6901_0_nf; -extern cpuop_func op_6901_0_ff; -extern cpuop_func op_69ff_0_nf; -extern cpuop_func op_69ff_0_ff; -extern cpuop_func op_6a00_0_nf; -extern cpuop_func op_6a00_0_ff; -extern cpuop_func op_6a01_0_nf; -extern cpuop_func op_6a01_0_ff; -extern cpuop_func op_6aff_0_nf; -extern cpuop_func op_6aff_0_ff; -extern cpuop_func op_6b00_0_nf; -extern cpuop_func op_6b00_0_ff; -extern cpuop_func op_6b01_0_nf; -extern cpuop_func op_6b01_0_ff; -extern cpuop_func op_6bff_0_nf; -extern cpuop_func op_6bff_0_ff; -extern cpuop_func op_6c00_0_nf; -extern cpuop_func op_6c00_0_ff; -extern cpuop_func op_6c01_0_nf; -extern cpuop_func op_6c01_0_ff; -extern cpuop_func op_6cff_0_nf; -extern cpuop_func op_6cff_0_ff; -extern cpuop_func op_6d00_0_nf; -extern cpuop_func op_6d00_0_ff; -extern cpuop_func op_6d01_0_nf; -extern cpuop_func op_6d01_0_ff; -extern cpuop_func op_6dff_0_nf; -extern cpuop_func op_6dff_0_ff; -extern cpuop_func op_6e00_0_nf; -extern cpuop_func op_6e00_0_ff; -extern cpuop_func op_6e01_0_nf; -extern cpuop_func op_6e01_0_ff; -extern cpuop_func op_6eff_0_nf; -extern cpuop_func op_6eff_0_ff; -extern cpuop_func op_6f00_0_nf; -extern cpuop_func op_6f00_0_ff; -extern cpuop_func op_6f01_0_nf; -extern cpuop_func op_6f01_0_ff; -extern cpuop_func op_6fff_0_nf; -extern cpuop_func op_6fff_0_ff; -extern cpuop_func op_7000_0_nf; -extern cpuop_func op_7000_0_ff; -extern cpuop_func op_7100_0_nf; -extern cpuop_func op_7100_0_ff; -extern cpuop_func op_7101_0_nf; -extern cpuop_func op_7101_0_ff; -extern cpuop_func op_8000_0_nf; -extern cpuop_func op_8000_0_ff; -extern cpuop_func op_8010_0_nf; -extern cpuop_func op_8010_0_ff; -extern cpuop_func op_8018_0_nf; -extern cpuop_func op_8018_0_ff; -extern cpuop_func op_8020_0_nf; -extern cpuop_func op_8020_0_ff; -extern cpuop_func op_8028_0_nf; -extern cpuop_func op_8028_0_ff; -extern cpuop_func op_8030_0_nf; -extern cpuop_func op_8030_0_ff; -extern cpuop_func op_8038_0_nf; -extern cpuop_func op_8038_0_ff; -extern cpuop_func op_8039_0_nf; -extern cpuop_func op_8039_0_ff; -extern cpuop_func op_803a_0_nf; -extern cpuop_func op_803a_0_ff; -extern cpuop_func op_803b_0_nf; -extern cpuop_func op_803b_0_ff; -extern cpuop_func op_803c_0_nf; -extern cpuop_func op_803c_0_ff; -extern cpuop_func op_8040_0_nf; -extern cpuop_func op_8040_0_ff; -extern cpuop_func op_8050_0_nf; -extern cpuop_func op_8050_0_ff; -extern cpuop_func op_8058_0_nf; -extern cpuop_func op_8058_0_ff; -extern cpuop_func op_8060_0_nf; -extern cpuop_func op_8060_0_ff; -extern cpuop_func op_8068_0_nf; -extern cpuop_func op_8068_0_ff; -extern cpuop_func op_8070_0_nf; -extern cpuop_func op_8070_0_ff; -extern cpuop_func op_8078_0_nf; -extern cpuop_func op_8078_0_ff; -extern cpuop_func op_8079_0_nf; -extern cpuop_func op_8079_0_ff; -extern cpuop_func op_807a_0_nf; -extern cpuop_func op_807a_0_ff; -extern cpuop_func op_807b_0_nf; -extern cpuop_func op_807b_0_ff; -extern cpuop_func op_807c_0_nf; -extern cpuop_func op_807c_0_ff; -extern cpuop_func op_8080_0_nf; -extern cpuop_func op_8080_0_ff; -extern cpuop_func op_8090_0_nf; -extern cpuop_func op_8090_0_ff; -extern cpuop_func op_8098_0_nf; -extern cpuop_func op_8098_0_ff; -extern cpuop_func op_80a0_0_nf; -extern cpuop_func op_80a0_0_ff; -extern cpuop_func op_80a8_0_nf; -extern cpuop_func op_80a8_0_ff; -extern cpuop_func op_80b0_0_nf; -extern cpuop_func op_80b0_0_ff; -extern cpuop_func op_80b8_0_nf; -extern cpuop_func op_80b8_0_ff; -extern cpuop_func op_80b9_0_nf; -extern cpuop_func op_80b9_0_ff; -extern cpuop_func op_80ba_0_nf; -extern cpuop_func op_80ba_0_ff; -extern cpuop_func op_80bb_0_nf; -extern cpuop_func op_80bb_0_ff; -extern cpuop_func op_80bc_0_nf; -extern cpuop_func op_80bc_0_ff; -extern cpuop_func op_80c0_0_nf; -extern cpuop_func op_80c0_0_ff; -extern cpuop_func op_80d0_0_nf; -extern cpuop_func op_80d0_0_ff; -extern cpuop_func op_80d8_0_nf; -extern cpuop_func op_80d8_0_ff; -extern cpuop_func op_80e0_0_nf; -extern cpuop_func op_80e0_0_ff; -extern cpuop_func op_80e8_0_nf; -extern cpuop_func op_80e8_0_ff; -extern cpuop_func op_80f0_0_nf; -extern cpuop_func op_80f0_0_ff; -extern cpuop_func op_80f8_0_nf; -extern cpuop_func op_80f8_0_ff; -extern cpuop_func op_80f9_0_nf; -extern cpuop_func op_80f9_0_ff; -extern cpuop_func op_80fa_0_nf; -extern cpuop_func op_80fa_0_ff; -extern cpuop_func op_80fb_0_nf; -extern cpuop_func op_80fb_0_ff; -extern cpuop_func op_80fc_0_nf; -extern cpuop_func op_80fc_0_ff; -extern cpuop_func op_8100_0_nf; -extern cpuop_func op_8100_0_ff; -extern cpuop_func op_8108_0_nf; -extern cpuop_func op_8108_0_ff; -extern cpuop_func op_8110_0_nf; -extern cpuop_func op_8110_0_ff; -extern cpuop_func op_8118_0_nf; -extern cpuop_func op_8118_0_ff; -extern cpuop_func op_8120_0_nf; -extern cpuop_func op_8120_0_ff; -extern cpuop_func op_8128_0_nf; -extern cpuop_func op_8128_0_ff; -extern cpuop_func op_8130_0_nf; -extern cpuop_func op_8130_0_ff; -extern cpuop_func op_8138_0_nf; -extern cpuop_func op_8138_0_ff; -extern cpuop_func op_8139_0_nf; -extern cpuop_func op_8139_0_ff; -extern cpuop_func op_8140_0_nf; -extern cpuop_func op_8140_0_ff; -extern cpuop_func op_8148_0_nf; -extern cpuop_func op_8148_0_ff; -extern cpuop_func op_8150_0_nf; -extern cpuop_func op_8150_0_ff; -extern cpuop_func op_8158_0_nf; -extern cpuop_func op_8158_0_ff; -extern cpuop_func op_8160_0_nf; -extern cpuop_func op_8160_0_ff; -extern cpuop_func op_8168_0_nf; -extern cpuop_func op_8168_0_ff; -extern cpuop_func op_8170_0_nf; -extern cpuop_func op_8170_0_ff; -extern cpuop_func op_8178_0_nf; -extern cpuop_func op_8178_0_ff; -extern cpuop_func op_8179_0_nf; -extern cpuop_func op_8179_0_ff; -extern cpuop_func op_8180_0_nf; -extern cpuop_func op_8180_0_ff; -extern cpuop_func op_8188_0_nf; -extern cpuop_func op_8188_0_ff; -extern cpuop_func op_8190_0_nf; -extern cpuop_func op_8190_0_ff; -extern cpuop_func op_8198_0_nf; -extern cpuop_func op_8198_0_ff; -extern cpuop_func op_81a0_0_nf; -extern cpuop_func op_81a0_0_ff; -extern cpuop_func op_81a8_0_nf; -extern cpuop_func op_81a8_0_ff; -extern cpuop_func op_81b0_0_nf; -extern cpuop_func op_81b0_0_ff; -extern cpuop_func op_81b8_0_nf; -extern cpuop_func op_81b8_0_ff; -extern cpuop_func op_81b9_0_nf; -extern cpuop_func op_81b9_0_ff; -extern cpuop_func op_81c0_0_nf; -extern cpuop_func op_81c0_0_ff; -extern cpuop_func op_81d0_0_nf; -extern cpuop_func op_81d0_0_ff; -extern cpuop_func op_81d8_0_nf; -extern cpuop_func op_81d8_0_ff; -extern cpuop_func op_81e0_0_nf; -extern cpuop_func op_81e0_0_ff; -extern cpuop_func op_81e8_0_nf; -extern cpuop_func op_81e8_0_ff; -extern cpuop_func op_81f0_0_nf; -extern cpuop_func op_81f0_0_ff; -extern cpuop_func op_81f8_0_nf; -extern cpuop_func op_81f8_0_ff; -extern cpuop_func op_81f9_0_nf; -extern cpuop_func op_81f9_0_ff; -extern cpuop_func op_81fa_0_nf; -extern cpuop_func op_81fa_0_ff; -extern cpuop_func op_81fb_0_nf; -extern cpuop_func op_81fb_0_ff; -extern cpuop_func op_81fc_0_nf; -extern cpuop_func op_81fc_0_ff; -extern cpuop_func op_9000_0_nf; -extern cpuop_func op_9000_0_ff; -extern cpuop_func op_9010_0_nf; -extern cpuop_func op_9010_0_ff; -extern cpuop_func op_9018_0_nf; -extern cpuop_func op_9018_0_ff; -extern cpuop_func op_9020_0_nf; -extern cpuop_func op_9020_0_ff; -extern cpuop_func op_9028_0_nf; -extern cpuop_func op_9028_0_ff; -extern cpuop_func op_9030_0_nf; -extern cpuop_func op_9030_0_ff; -extern cpuop_func op_9038_0_nf; -extern cpuop_func op_9038_0_ff; -extern cpuop_func op_9039_0_nf; -extern cpuop_func op_9039_0_ff; -extern cpuop_func op_903a_0_nf; -extern cpuop_func op_903a_0_ff; -extern cpuop_func op_903b_0_nf; -extern cpuop_func op_903b_0_ff; -extern cpuop_func op_903c_0_nf; -extern cpuop_func op_903c_0_ff; -extern cpuop_func op_9040_0_nf; -extern cpuop_func op_9040_0_ff; -extern cpuop_func op_9048_0_nf; -extern cpuop_func op_9048_0_ff; -extern cpuop_func op_9050_0_nf; -extern cpuop_func op_9050_0_ff; -extern cpuop_func op_9058_0_nf; -extern cpuop_func op_9058_0_ff; -extern cpuop_func op_9060_0_nf; -extern cpuop_func op_9060_0_ff; -extern cpuop_func op_9068_0_nf; -extern cpuop_func op_9068_0_ff; -extern cpuop_func op_9070_0_nf; -extern cpuop_func op_9070_0_ff; -extern cpuop_func op_9078_0_nf; -extern cpuop_func op_9078_0_ff; -extern cpuop_func op_9079_0_nf; -extern cpuop_func op_9079_0_ff; -extern cpuop_func op_907a_0_nf; -extern cpuop_func op_907a_0_ff; -extern cpuop_func op_907b_0_nf; -extern cpuop_func op_907b_0_ff; -extern cpuop_func op_907c_0_nf; -extern cpuop_func op_907c_0_ff; -extern cpuop_func op_9080_0_nf; -extern cpuop_func op_9080_0_ff; -extern cpuop_func op_9088_0_nf; -extern cpuop_func op_9088_0_ff; -extern cpuop_func op_9090_0_nf; -extern cpuop_func op_9090_0_ff; -extern cpuop_func op_9098_0_nf; -extern cpuop_func op_9098_0_ff; -extern cpuop_func op_90a0_0_nf; -extern cpuop_func op_90a0_0_ff; -extern cpuop_func op_90a8_0_nf; -extern cpuop_func op_90a8_0_ff; -extern cpuop_func op_90b0_0_nf; -extern cpuop_func op_90b0_0_ff; -extern cpuop_func op_90b8_0_nf; -extern cpuop_func op_90b8_0_ff; -extern cpuop_func op_90b9_0_nf; -extern cpuop_func op_90b9_0_ff; -extern cpuop_func op_90ba_0_nf; -extern cpuop_func op_90ba_0_ff; -extern cpuop_func op_90bb_0_nf; -extern cpuop_func op_90bb_0_ff; -extern cpuop_func op_90bc_0_nf; -extern cpuop_func op_90bc_0_ff; -extern cpuop_func op_90c0_0_nf; -extern cpuop_func op_90c0_0_ff; -extern cpuop_func op_90c8_0_nf; -extern cpuop_func op_90c8_0_ff; -extern cpuop_func op_90d0_0_nf; -extern cpuop_func op_90d0_0_ff; -extern cpuop_func op_90d8_0_nf; -extern cpuop_func op_90d8_0_ff; -extern cpuop_func op_90e0_0_nf; -extern cpuop_func op_90e0_0_ff; -extern cpuop_func op_90e8_0_nf; -extern cpuop_func op_90e8_0_ff; -extern cpuop_func op_90f0_0_nf; -extern cpuop_func op_90f0_0_ff; -extern cpuop_func op_90f8_0_nf; -extern cpuop_func op_90f8_0_ff; -extern cpuop_func op_90f9_0_nf; -extern cpuop_func op_90f9_0_ff; -extern cpuop_func op_90fa_0_nf; -extern cpuop_func op_90fa_0_ff; -extern cpuop_func op_90fb_0_nf; -extern cpuop_func op_90fb_0_ff; -extern cpuop_func op_90fc_0_nf; -extern cpuop_func op_90fc_0_ff; -extern cpuop_func op_9100_0_nf; -extern cpuop_func op_9100_0_ff; -extern cpuop_func op_9108_0_nf; -extern cpuop_func op_9108_0_ff; -extern cpuop_func op_9110_0_nf; -extern cpuop_func op_9110_0_ff; -extern cpuop_func op_9118_0_nf; -extern cpuop_func op_9118_0_ff; -extern cpuop_func op_9120_0_nf; -extern cpuop_func op_9120_0_ff; -extern cpuop_func op_9128_0_nf; -extern cpuop_func op_9128_0_ff; -extern cpuop_func op_9130_0_nf; -extern cpuop_func op_9130_0_ff; -extern cpuop_func op_9138_0_nf; -extern cpuop_func op_9138_0_ff; -extern cpuop_func op_9139_0_nf; -extern cpuop_func op_9139_0_ff; -extern cpuop_func op_9140_0_nf; -extern cpuop_func op_9140_0_ff; -extern cpuop_func op_9148_0_nf; -extern cpuop_func op_9148_0_ff; -extern cpuop_func op_9150_0_nf; -extern cpuop_func op_9150_0_ff; -extern cpuop_func op_9158_0_nf; -extern cpuop_func op_9158_0_ff; -extern cpuop_func op_9160_0_nf; -extern cpuop_func op_9160_0_ff; -extern cpuop_func op_9168_0_nf; -extern cpuop_func op_9168_0_ff; -extern cpuop_func op_9170_0_nf; -extern cpuop_func op_9170_0_ff; -extern cpuop_func op_9178_0_nf; -extern cpuop_func op_9178_0_ff; -extern cpuop_func op_9179_0_nf; -extern cpuop_func op_9179_0_ff; -extern cpuop_func op_9180_0_nf; -extern cpuop_func op_9180_0_ff; -extern cpuop_func op_9188_0_nf; -extern cpuop_func op_9188_0_ff; -extern cpuop_func op_9190_0_nf; -extern cpuop_func op_9190_0_ff; -extern cpuop_func op_9198_0_nf; -extern cpuop_func op_9198_0_ff; -extern cpuop_func op_91a0_0_nf; -extern cpuop_func op_91a0_0_ff; -extern cpuop_func op_91a8_0_nf; -extern cpuop_func op_91a8_0_ff; -extern cpuop_func op_91b0_0_nf; -extern cpuop_func op_91b0_0_ff; -extern cpuop_func op_91b8_0_nf; -extern cpuop_func op_91b8_0_ff; -extern cpuop_func op_91b9_0_nf; -extern cpuop_func op_91b9_0_ff; -extern cpuop_func op_91c0_0_nf; -extern cpuop_func op_91c0_0_ff; -extern cpuop_func op_91c8_0_nf; -extern cpuop_func op_91c8_0_ff; -extern cpuop_func op_91d0_0_nf; -extern cpuop_func op_91d0_0_ff; -extern cpuop_func op_91d8_0_nf; -extern cpuop_func op_91d8_0_ff; -extern cpuop_func op_91e0_0_nf; -extern cpuop_func op_91e0_0_ff; -extern cpuop_func op_91e8_0_nf; -extern cpuop_func op_91e8_0_ff; -extern cpuop_func op_91f0_0_nf; -extern cpuop_func op_91f0_0_ff; -extern cpuop_func op_91f8_0_nf; -extern cpuop_func op_91f8_0_ff; -extern cpuop_func op_91f9_0_nf; -extern cpuop_func op_91f9_0_ff; -extern cpuop_func op_91fa_0_nf; -extern cpuop_func op_91fa_0_ff; -extern cpuop_func op_91fb_0_nf; -extern cpuop_func op_91fb_0_ff; -extern cpuop_func op_91fc_0_nf; -extern cpuop_func op_91fc_0_ff; -extern cpuop_func op_b000_0_nf; -extern cpuop_func op_b000_0_ff; -extern cpuop_func op_b010_0_nf; -extern cpuop_func op_b010_0_ff; -extern cpuop_func op_b018_0_nf; -extern cpuop_func op_b018_0_ff; -extern cpuop_func op_b020_0_nf; -extern cpuop_func op_b020_0_ff; -extern cpuop_func op_b028_0_nf; -extern cpuop_func op_b028_0_ff; -extern cpuop_func op_b030_0_nf; -extern cpuop_func op_b030_0_ff; -extern cpuop_func op_b038_0_nf; -extern cpuop_func op_b038_0_ff; -extern cpuop_func op_b039_0_nf; -extern cpuop_func op_b039_0_ff; -extern cpuop_func op_b03a_0_nf; -extern cpuop_func op_b03a_0_ff; -extern cpuop_func op_b03b_0_nf; -extern cpuop_func op_b03b_0_ff; -extern cpuop_func op_b03c_0_nf; -extern cpuop_func op_b03c_0_ff; -extern cpuop_func op_b040_0_nf; -extern cpuop_func op_b040_0_ff; -extern cpuop_func op_b048_0_nf; -extern cpuop_func op_b048_0_ff; -extern cpuop_func op_b050_0_nf; -extern cpuop_func op_b050_0_ff; -extern cpuop_func op_b058_0_nf; -extern cpuop_func op_b058_0_ff; -extern cpuop_func op_b060_0_nf; -extern cpuop_func op_b060_0_ff; -extern cpuop_func op_b068_0_nf; -extern cpuop_func op_b068_0_ff; -extern cpuop_func op_b070_0_nf; -extern cpuop_func op_b070_0_ff; -extern cpuop_func op_b078_0_nf; -extern cpuop_func op_b078_0_ff; -extern cpuop_func op_b079_0_nf; -extern cpuop_func op_b079_0_ff; -extern cpuop_func op_b07a_0_nf; -extern cpuop_func op_b07a_0_ff; -extern cpuop_func op_b07b_0_nf; -extern cpuop_func op_b07b_0_ff; -extern cpuop_func op_b07c_0_nf; -extern cpuop_func op_b07c_0_ff; -extern cpuop_func op_b080_0_nf; -extern cpuop_func op_b080_0_ff; -extern cpuop_func op_b088_0_nf; -extern cpuop_func op_b088_0_ff; -extern cpuop_func op_b090_0_nf; -extern cpuop_func op_b090_0_ff; -extern cpuop_func op_b098_0_nf; -extern cpuop_func op_b098_0_ff; -extern cpuop_func op_b0a0_0_nf; -extern cpuop_func op_b0a0_0_ff; -extern cpuop_func op_b0a8_0_nf; -extern cpuop_func op_b0a8_0_ff; -extern cpuop_func op_b0b0_0_nf; -extern cpuop_func op_b0b0_0_ff; -extern cpuop_func op_b0b8_0_nf; -extern cpuop_func op_b0b8_0_ff; -extern cpuop_func op_b0b9_0_nf; -extern cpuop_func op_b0b9_0_ff; -extern cpuop_func op_b0ba_0_nf; -extern cpuop_func op_b0ba_0_ff; -extern cpuop_func op_b0bb_0_nf; -extern cpuop_func op_b0bb_0_ff; -extern cpuop_func op_b0bc_0_nf; -extern cpuop_func op_b0bc_0_ff; -extern cpuop_func op_b0c0_0_nf; -extern cpuop_func op_b0c0_0_ff; -extern cpuop_func op_b0c8_0_nf; -extern cpuop_func op_b0c8_0_ff; -extern cpuop_func op_b0d0_0_nf; -extern cpuop_func op_b0d0_0_ff; -extern cpuop_func op_b0d8_0_nf; -extern cpuop_func op_b0d8_0_ff; -extern cpuop_func op_b0e0_0_nf; -extern cpuop_func op_b0e0_0_ff; -extern cpuop_func op_b0e8_0_nf; -extern cpuop_func op_b0e8_0_ff; -extern cpuop_func op_b0f0_0_nf; -extern cpuop_func op_b0f0_0_ff; -extern cpuop_func op_b0f8_0_nf; -extern cpuop_func op_b0f8_0_ff; -extern cpuop_func op_b0f9_0_nf; -extern cpuop_func op_b0f9_0_ff; -extern cpuop_func op_b0fa_0_nf; -extern cpuop_func op_b0fa_0_ff; -extern cpuop_func op_b0fb_0_nf; -extern cpuop_func op_b0fb_0_ff; -extern cpuop_func op_b0fc_0_nf; -extern cpuop_func op_b0fc_0_ff; -extern cpuop_func op_b100_0_nf; -extern cpuop_func op_b100_0_ff; -extern cpuop_func op_b108_0_nf; -extern cpuop_func op_b108_0_ff; -extern cpuop_func op_b110_0_nf; -extern cpuop_func op_b110_0_ff; -extern cpuop_func op_b118_0_nf; -extern cpuop_func op_b118_0_ff; -extern cpuop_func op_b120_0_nf; -extern cpuop_func op_b120_0_ff; -extern cpuop_func op_b128_0_nf; -extern cpuop_func op_b128_0_ff; -extern cpuop_func op_b130_0_nf; -extern cpuop_func op_b130_0_ff; -extern cpuop_func op_b138_0_nf; -extern cpuop_func op_b138_0_ff; -extern cpuop_func op_b139_0_nf; -extern cpuop_func op_b139_0_ff; -extern cpuop_func op_b140_0_nf; -extern cpuop_func op_b140_0_ff; -extern cpuop_func op_b148_0_nf; -extern cpuop_func op_b148_0_ff; -extern cpuop_func op_b150_0_nf; -extern cpuop_func op_b150_0_ff; -extern cpuop_func op_b158_0_nf; -extern cpuop_func op_b158_0_ff; -extern cpuop_func op_b160_0_nf; -extern cpuop_func op_b160_0_ff; -extern cpuop_func op_b168_0_nf; -extern cpuop_func op_b168_0_ff; -extern cpuop_func op_b170_0_nf; -extern cpuop_func op_b170_0_ff; -extern cpuop_func op_b178_0_nf; -extern cpuop_func op_b178_0_ff; -extern cpuop_func op_b179_0_nf; -extern cpuop_func op_b179_0_ff; -extern cpuop_func op_b180_0_nf; -extern cpuop_func op_b180_0_ff; -extern cpuop_func op_b188_0_nf; -extern cpuop_func op_b188_0_ff; -extern cpuop_func op_b190_0_nf; -extern cpuop_func op_b190_0_ff; -extern cpuop_func op_b198_0_nf; -extern cpuop_func op_b198_0_ff; -extern cpuop_func op_b1a0_0_nf; -extern cpuop_func op_b1a0_0_ff; -extern cpuop_func op_b1a8_0_nf; -extern cpuop_func op_b1a8_0_ff; -extern cpuop_func op_b1b0_0_nf; -extern cpuop_func op_b1b0_0_ff; -extern cpuop_func op_b1b8_0_nf; -extern cpuop_func op_b1b8_0_ff; -extern cpuop_func op_b1b9_0_nf; -extern cpuop_func op_b1b9_0_ff; -extern cpuop_func op_b1c0_0_nf; -extern cpuop_func op_b1c0_0_ff; -extern cpuop_func op_b1c8_0_nf; -extern cpuop_func op_b1c8_0_ff; -extern cpuop_func op_b1d0_0_nf; -extern cpuop_func op_b1d0_0_ff; -extern cpuop_func op_b1d8_0_nf; -extern cpuop_func op_b1d8_0_ff; -extern cpuop_func op_b1e0_0_nf; -extern cpuop_func op_b1e0_0_ff; -extern cpuop_func op_b1e8_0_nf; -extern cpuop_func op_b1e8_0_ff; -extern cpuop_func op_b1f0_0_nf; -extern cpuop_func op_b1f0_0_ff; -extern cpuop_func op_b1f8_0_nf; -extern cpuop_func op_b1f8_0_ff; -extern cpuop_func op_b1f9_0_nf; -extern cpuop_func op_b1f9_0_ff; -extern cpuop_func op_b1fa_0_nf; -extern cpuop_func op_b1fa_0_ff; -extern cpuop_func op_b1fb_0_nf; -extern cpuop_func op_b1fb_0_ff; -extern cpuop_func op_b1fc_0_nf; -extern cpuop_func op_b1fc_0_ff; -extern cpuop_func op_c000_0_nf; -extern cpuop_func op_c000_0_ff; -extern cpuop_func op_c010_0_nf; -extern cpuop_func op_c010_0_ff; -extern cpuop_func op_c018_0_nf; -extern cpuop_func op_c018_0_ff; -extern cpuop_func op_c020_0_nf; -extern cpuop_func op_c020_0_ff; -extern cpuop_func op_c028_0_nf; -extern cpuop_func op_c028_0_ff; -extern cpuop_func op_c030_0_nf; -extern cpuop_func op_c030_0_ff; -extern cpuop_func op_c038_0_nf; -extern cpuop_func op_c038_0_ff; -extern cpuop_func op_c039_0_nf; -extern cpuop_func op_c039_0_ff; -extern cpuop_func op_c03a_0_nf; -extern cpuop_func op_c03a_0_ff; -extern cpuop_func op_c03b_0_nf; -extern cpuop_func op_c03b_0_ff; -extern cpuop_func op_c03c_0_nf; -extern cpuop_func op_c03c_0_ff; -extern cpuop_func op_c040_0_nf; -extern cpuop_func op_c040_0_ff; -extern cpuop_func op_c050_0_nf; -extern cpuop_func op_c050_0_ff; -extern cpuop_func op_c058_0_nf; -extern cpuop_func op_c058_0_ff; -extern cpuop_func op_c060_0_nf; -extern cpuop_func op_c060_0_ff; -extern cpuop_func op_c068_0_nf; -extern cpuop_func op_c068_0_ff; -extern cpuop_func op_c070_0_nf; -extern cpuop_func op_c070_0_ff; -extern cpuop_func op_c078_0_nf; -extern cpuop_func op_c078_0_ff; -extern cpuop_func op_c079_0_nf; -extern cpuop_func op_c079_0_ff; -extern cpuop_func op_c07a_0_nf; -extern cpuop_func op_c07a_0_ff; -extern cpuop_func op_c07b_0_nf; -extern cpuop_func op_c07b_0_ff; -extern cpuop_func op_c07c_0_nf; -extern cpuop_func op_c07c_0_ff; -extern cpuop_func op_c080_0_nf; -extern cpuop_func op_c080_0_ff; -extern cpuop_func op_c090_0_nf; -extern cpuop_func op_c090_0_ff; -extern cpuop_func op_c098_0_nf; -extern cpuop_func op_c098_0_ff; -extern cpuop_func op_c0a0_0_nf; -extern cpuop_func op_c0a0_0_ff; -extern cpuop_func op_c0a8_0_nf; -extern cpuop_func op_c0a8_0_ff; -extern cpuop_func op_c0b0_0_nf; -extern cpuop_func op_c0b0_0_ff; -extern cpuop_func op_c0b8_0_nf; -extern cpuop_func op_c0b8_0_ff; -extern cpuop_func op_c0b9_0_nf; -extern cpuop_func op_c0b9_0_ff; -extern cpuop_func op_c0ba_0_nf; -extern cpuop_func op_c0ba_0_ff; -extern cpuop_func op_c0bb_0_nf; -extern cpuop_func op_c0bb_0_ff; -extern cpuop_func op_c0bc_0_nf; -extern cpuop_func op_c0bc_0_ff; -extern cpuop_func op_c0c0_0_nf; -extern cpuop_func op_c0c0_0_ff; -extern cpuop_func op_c0d0_0_nf; -extern cpuop_func op_c0d0_0_ff; -extern cpuop_func op_c0d8_0_nf; -extern cpuop_func op_c0d8_0_ff; -extern cpuop_func op_c0e0_0_nf; -extern cpuop_func op_c0e0_0_ff; -extern cpuop_func op_c0e8_0_nf; -extern cpuop_func op_c0e8_0_ff; -extern cpuop_func op_c0f0_0_nf; -extern cpuop_func op_c0f0_0_ff; -extern cpuop_func op_c0f8_0_nf; -extern cpuop_func op_c0f8_0_ff; -extern cpuop_func op_c0f9_0_nf; -extern cpuop_func op_c0f9_0_ff; -extern cpuop_func op_c0fa_0_nf; -extern cpuop_func op_c0fa_0_ff; -extern cpuop_func op_c0fb_0_nf; -extern cpuop_func op_c0fb_0_ff; -extern cpuop_func op_c0fc_0_nf; -extern cpuop_func op_c0fc_0_ff; -extern cpuop_func op_c100_0_nf; -extern cpuop_func op_c100_0_ff; -extern cpuop_func op_c108_0_nf; -extern cpuop_func op_c108_0_ff; -extern cpuop_func op_c110_0_nf; -extern cpuop_func op_c110_0_ff; -extern cpuop_func op_c118_0_nf; -extern cpuop_func op_c118_0_ff; -extern cpuop_func op_c120_0_nf; -extern cpuop_func op_c120_0_ff; -extern cpuop_func op_c128_0_nf; -extern cpuop_func op_c128_0_ff; -extern cpuop_func op_c130_0_nf; -extern cpuop_func op_c130_0_ff; -extern cpuop_func op_c138_0_nf; -extern cpuop_func op_c138_0_ff; -extern cpuop_func op_c139_0_nf; -extern cpuop_func op_c139_0_ff; -extern cpuop_func op_c140_0_nf; -extern cpuop_func op_c140_0_ff; -extern cpuop_func op_c148_0_nf; -extern cpuop_func op_c148_0_ff; -extern cpuop_func op_c150_0_nf; -extern cpuop_func op_c150_0_ff; -extern cpuop_func op_c158_0_nf; -extern cpuop_func op_c158_0_ff; -extern cpuop_func op_c160_0_nf; -extern cpuop_func op_c160_0_ff; -extern cpuop_func op_c168_0_nf; -extern cpuop_func op_c168_0_ff; -extern cpuop_func op_c170_0_nf; -extern cpuop_func op_c170_0_ff; -extern cpuop_func op_c178_0_nf; -extern cpuop_func op_c178_0_ff; -extern cpuop_func op_c179_0_nf; -extern cpuop_func op_c179_0_ff; -extern cpuop_func op_c188_0_nf; -extern cpuop_func op_c188_0_ff; -extern cpuop_func op_c190_0_nf; -extern cpuop_func op_c190_0_ff; -extern cpuop_func op_c198_0_nf; -extern cpuop_func op_c198_0_ff; -extern cpuop_func op_c1a0_0_nf; -extern cpuop_func op_c1a0_0_ff; -extern cpuop_func op_c1a8_0_nf; -extern cpuop_func op_c1a8_0_ff; -extern cpuop_func op_c1b0_0_nf; -extern cpuop_func op_c1b0_0_ff; -extern cpuop_func op_c1b8_0_nf; -extern cpuop_func op_c1b8_0_ff; -extern cpuop_func op_c1b9_0_nf; -extern cpuop_func op_c1b9_0_ff; -extern cpuop_func op_c1c0_0_nf; -extern cpuop_func op_c1c0_0_ff; -extern cpuop_func op_c1d0_0_nf; -extern cpuop_func op_c1d0_0_ff; -extern cpuop_func op_c1d8_0_nf; -extern cpuop_func op_c1d8_0_ff; -extern cpuop_func op_c1e0_0_nf; -extern cpuop_func op_c1e0_0_ff; -extern cpuop_func op_c1e8_0_nf; -extern cpuop_func op_c1e8_0_ff; -extern cpuop_func op_c1f0_0_nf; -extern cpuop_func op_c1f0_0_ff; -extern cpuop_func op_c1f8_0_nf; -extern cpuop_func op_c1f8_0_ff; -extern cpuop_func op_c1f9_0_nf; -extern cpuop_func op_c1f9_0_ff; -extern cpuop_func op_c1fa_0_nf; -extern cpuop_func op_c1fa_0_ff; -extern cpuop_func op_c1fb_0_nf; -extern cpuop_func op_c1fb_0_ff; -extern cpuop_func op_c1fc_0_nf; -extern cpuop_func op_c1fc_0_ff; -extern cpuop_func op_d000_0_nf; -extern cpuop_func op_d000_0_ff; -extern cpuop_func op_d010_0_nf; -extern cpuop_func op_d010_0_ff; -extern cpuop_func op_d018_0_nf; -extern cpuop_func op_d018_0_ff; -extern cpuop_func op_d020_0_nf; -extern cpuop_func op_d020_0_ff; -extern cpuop_func op_d028_0_nf; -extern cpuop_func op_d028_0_ff; -extern cpuop_func op_d030_0_nf; -extern cpuop_func op_d030_0_ff; -extern cpuop_func op_d038_0_nf; -extern cpuop_func op_d038_0_ff; -extern cpuop_func op_d039_0_nf; -extern cpuop_func op_d039_0_ff; -extern cpuop_func op_d03a_0_nf; -extern cpuop_func op_d03a_0_ff; -extern cpuop_func op_d03b_0_nf; -extern cpuop_func op_d03b_0_ff; -extern cpuop_func op_d03c_0_nf; -extern cpuop_func op_d03c_0_ff; -extern cpuop_func op_d040_0_nf; -extern cpuop_func op_d040_0_ff; -extern cpuop_func op_d048_0_nf; -extern cpuop_func op_d048_0_ff; -extern cpuop_func op_d050_0_nf; -extern cpuop_func op_d050_0_ff; -extern cpuop_func op_d058_0_nf; -extern cpuop_func op_d058_0_ff; -extern cpuop_func op_d060_0_nf; -extern cpuop_func op_d060_0_ff; -extern cpuop_func op_d068_0_nf; -extern cpuop_func op_d068_0_ff; -extern cpuop_func op_d070_0_nf; -extern cpuop_func op_d070_0_ff; -extern cpuop_func op_d078_0_nf; -extern cpuop_func op_d078_0_ff; -extern cpuop_func op_d079_0_nf; -extern cpuop_func op_d079_0_ff; -extern cpuop_func op_d07a_0_nf; -extern cpuop_func op_d07a_0_ff; -extern cpuop_func op_d07b_0_nf; -extern cpuop_func op_d07b_0_ff; -extern cpuop_func op_d07c_0_nf; -extern cpuop_func op_d07c_0_ff; -extern cpuop_func op_d080_0_nf; -extern cpuop_func op_d080_0_ff; -extern cpuop_func op_d088_0_nf; -extern cpuop_func op_d088_0_ff; -extern cpuop_func op_d090_0_nf; -extern cpuop_func op_d090_0_ff; -extern cpuop_func op_d098_0_nf; -extern cpuop_func op_d098_0_ff; -extern cpuop_func op_d0a0_0_nf; -extern cpuop_func op_d0a0_0_ff; -extern cpuop_func op_d0a8_0_nf; -extern cpuop_func op_d0a8_0_ff; -extern cpuop_func op_d0b0_0_nf; -extern cpuop_func op_d0b0_0_ff; -extern cpuop_func op_d0b8_0_nf; -extern cpuop_func op_d0b8_0_ff; -extern cpuop_func op_d0b9_0_nf; -extern cpuop_func op_d0b9_0_ff; -extern cpuop_func op_d0ba_0_nf; -extern cpuop_func op_d0ba_0_ff; -extern cpuop_func op_d0bb_0_nf; -extern cpuop_func op_d0bb_0_ff; -extern cpuop_func op_d0bc_0_nf; -extern cpuop_func op_d0bc_0_ff; -extern cpuop_func op_d0c0_0_nf; -extern cpuop_func op_d0c0_0_ff; -extern cpuop_func op_d0c8_0_nf; -extern cpuop_func op_d0c8_0_ff; -extern cpuop_func op_d0d0_0_nf; -extern cpuop_func op_d0d0_0_ff; -extern cpuop_func op_d0d8_0_nf; -extern cpuop_func op_d0d8_0_ff; -extern cpuop_func op_d0e0_0_nf; -extern cpuop_func op_d0e0_0_ff; -extern cpuop_func op_d0e8_0_nf; -extern cpuop_func op_d0e8_0_ff; -extern cpuop_func op_d0f0_0_nf; -extern cpuop_func op_d0f0_0_ff; -extern cpuop_func op_d0f8_0_nf; -extern cpuop_func op_d0f8_0_ff; -extern cpuop_func op_d0f9_0_nf; -extern cpuop_func op_d0f9_0_ff; -extern cpuop_func op_d0fa_0_nf; -extern cpuop_func op_d0fa_0_ff; -extern cpuop_func op_d0fb_0_nf; -extern cpuop_func op_d0fb_0_ff; -extern cpuop_func op_d0fc_0_nf; -extern cpuop_func op_d0fc_0_ff; -extern cpuop_func op_d100_0_nf; -extern cpuop_func op_d100_0_ff; -extern cpuop_func op_d108_0_nf; -extern cpuop_func op_d108_0_ff; -extern cpuop_func op_d110_0_nf; -extern cpuop_func op_d110_0_ff; -extern cpuop_func op_d118_0_nf; -extern cpuop_func op_d118_0_ff; -extern cpuop_func op_d120_0_nf; -extern cpuop_func op_d120_0_ff; -extern cpuop_func op_d128_0_nf; -extern cpuop_func op_d128_0_ff; -extern cpuop_func op_d130_0_nf; -extern cpuop_func op_d130_0_ff; -extern cpuop_func op_d138_0_nf; -extern cpuop_func op_d138_0_ff; -extern cpuop_func op_d139_0_nf; -extern cpuop_func op_d139_0_ff; -extern cpuop_func op_d140_0_nf; -extern cpuop_func op_d140_0_ff; -extern cpuop_func op_d148_0_nf; -extern cpuop_func op_d148_0_ff; -extern cpuop_func op_d150_0_nf; -extern cpuop_func op_d150_0_ff; -extern cpuop_func op_d158_0_nf; -extern cpuop_func op_d158_0_ff; -extern cpuop_func op_d160_0_nf; -extern cpuop_func op_d160_0_ff; -extern cpuop_func op_d168_0_nf; -extern cpuop_func op_d168_0_ff; -extern cpuop_func op_d170_0_nf; -extern cpuop_func op_d170_0_ff; -extern cpuop_func op_d178_0_nf; -extern cpuop_func op_d178_0_ff; -extern cpuop_func op_d179_0_nf; -extern cpuop_func op_d179_0_ff; -extern cpuop_func op_d180_0_nf; -extern cpuop_func op_d180_0_ff; -extern cpuop_func op_d188_0_nf; -extern cpuop_func op_d188_0_ff; -extern cpuop_func op_d190_0_nf; -extern cpuop_func op_d190_0_ff; -extern cpuop_func op_d198_0_nf; -extern cpuop_func op_d198_0_ff; -extern cpuop_func op_d1a0_0_nf; -extern cpuop_func op_d1a0_0_ff; -extern cpuop_func op_d1a8_0_nf; -extern cpuop_func op_d1a8_0_ff; -extern cpuop_func op_d1b0_0_nf; -extern cpuop_func op_d1b0_0_ff; -extern cpuop_func op_d1b8_0_nf; -extern cpuop_func op_d1b8_0_ff; -extern cpuop_func op_d1b9_0_nf; -extern cpuop_func op_d1b9_0_ff; -extern cpuop_func op_d1c0_0_nf; -extern cpuop_func op_d1c0_0_ff; -extern cpuop_func op_d1c8_0_nf; -extern cpuop_func op_d1c8_0_ff; -extern cpuop_func op_d1d0_0_nf; -extern cpuop_func op_d1d0_0_ff; -extern cpuop_func op_d1d8_0_nf; -extern cpuop_func op_d1d8_0_ff; -extern cpuop_func op_d1e0_0_nf; -extern cpuop_func op_d1e0_0_ff; -extern cpuop_func op_d1e8_0_nf; -extern cpuop_func op_d1e8_0_ff; -extern cpuop_func op_d1f0_0_nf; -extern cpuop_func op_d1f0_0_ff; -extern cpuop_func op_d1f8_0_nf; -extern cpuop_func op_d1f8_0_ff; -extern cpuop_func op_d1f9_0_nf; -extern cpuop_func op_d1f9_0_ff; -extern cpuop_func op_d1fa_0_nf; -extern cpuop_func op_d1fa_0_ff; -extern cpuop_func op_d1fb_0_nf; -extern cpuop_func op_d1fb_0_ff; -extern cpuop_func op_d1fc_0_nf; -extern cpuop_func op_d1fc_0_ff; -extern cpuop_func op_e000_0_nf; -extern cpuop_func op_e000_0_ff; -extern cpuop_func op_e008_0_nf; -extern cpuop_func op_e008_0_ff; -extern cpuop_func op_e010_0_nf; -extern cpuop_func op_e010_0_ff; -extern cpuop_func op_e018_0_nf; -extern cpuop_func op_e018_0_ff; -extern cpuop_func op_e020_0_nf; -extern cpuop_func op_e020_0_ff; -extern cpuop_func op_e028_0_nf; -extern cpuop_func op_e028_0_ff; -extern cpuop_func op_e030_0_nf; -extern cpuop_func op_e030_0_ff; -extern cpuop_func op_e038_0_nf; -extern cpuop_func op_e038_0_ff; -extern cpuop_func op_e040_0_nf; -extern cpuop_func op_e040_0_ff; -extern cpuop_func op_e048_0_nf; -extern cpuop_func op_e048_0_ff; -extern cpuop_func op_e050_0_nf; -extern cpuop_func op_e050_0_ff; -extern cpuop_func op_e058_0_nf; -extern cpuop_func op_e058_0_ff; -extern cpuop_func op_e060_0_nf; -extern cpuop_func op_e060_0_ff; -extern cpuop_func op_e068_0_nf; -extern cpuop_func op_e068_0_ff; -extern cpuop_func op_e070_0_nf; -extern cpuop_func op_e070_0_ff; -extern cpuop_func op_e078_0_nf; -extern cpuop_func op_e078_0_ff; -extern cpuop_func op_e080_0_nf; -extern cpuop_func op_e080_0_ff; -extern cpuop_func op_e088_0_nf; -extern cpuop_func op_e088_0_ff; -extern cpuop_func op_e090_0_nf; -extern cpuop_func op_e090_0_ff; -extern cpuop_func op_e098_0_nf; -extern cpuop_func op_e098_0_ff; -extern cpuop_func op_e0a0_0_nf; -extern cpuop_func op_e0a0_0_ff; -extern cpuop_func op_e0a8_0_nf; -extern cpuop_func op_e0a8_0_ff; -extern cpuop_func op_e0b0_0_nf; -extern cpuop_func op_e0b0_0_ff; -extern cpuop_func op_e0b8_0_nf; -extern cpuop_func op_e0b8_0_ff; -extern cpuop_func op_e0d0_0_nf; -extern cpuop_func op_e0d0_0_ff; -extern cpuop_func op_e0d8_0_nf; -extern cpuop_func op_e0d8_0_ff; -extern cpuop_func op_e0e0_0_nf; -extern cpuop_func op_e0e0_0_ff; -extern cpuop_func op_e0e8_0_nf; -extern cpuop_func op_e0e8_0_ff; -extern cpuop_func op_e0f0_0_nf; -extern cpuop_func op_e0f0_0_ff; -extern cpuop_func op_e0f8_0_nf; -extern cpuop_func op_e0f8_0_ff; -extern cpuop_func op_e0f9_0_nf; -extern cpuop_func op_e0f9_0_ff; -extern cpuop_func op_e100_0_nf; -extern cpuop_func op_e100_0_ff; -extern cpuop_func op_e108_0_nf; -extern cpuop_func op_e108_0_ff; -extern cpuop_func op_e110_0_nf; -extern cpuop_func op_e110_0_ff; -extern cpuop_func op_e118_0_nf; -extern cpuop_func op_e118_0_ff; -extern cpuop_func op_e120_0_nf; -extern cpuop_func op_e120_0_ff; -extern cpuop_func op_e128_0_nf; -extern cpuop_func op_e128_0_ff; -extern cpuop_func op_e130_0_nf; -extern cpuop_func op_e130_0_ff; -extern cpuop_func op_e138_0_nf; -extern cpuop_func op_e138_0_ff; -extern cpuop_func op_e140_0_nf; -extern cpuop_func op_e140_0_ff; -extern cpuop_func op_e148_0_nf; -extern cpuop_func op_e148_0_ff; -extern cpuop_func op_e150_0_nf; -extern cpuop_func op_e150_0_ff; -extern cpuop_func op_e158_0_nf; -extern cpuop_func op_e158_0_ff; -extern cpuop_func op_e160_0_nf; -extern cpuop_func op_e160_0_ff; -extern cpuop_func op_e168_0_nf; -extern cpuop_func op_e168_0_ff; -extern cpuop_func op_e170_0_nf; -extern cpuop_func op_e170_0_ff; -extern cpuop_func op_e178_0_nf; -extern cpuop_func op_e178_0_ff; -extern cpuop_func op_e180_0_nf; -extern cpuop_func op_e180_0_ff; -extern cpuop_func op_e188_0_nf; -extern cpuop_func op_e188_0_ff; -extern cpuop_func op_e190_0_nf; -extern cpuop_func op_e190_0_ff; -extern cpuop_func op_e198_0_nf; -extern cpuop_func op_e198_0_ff; -extern cpuop_func op_e1a0_0_nf; -extern cpuop_func op_e1a0_0_ff; -extern cpuop_func op_e1a8_0_nf; -extern cpuop_func op_e1a8_0_ff; -extern cpuop_func op_e1b0_0_nf; -extern cpuop_func op_e1b0_0_ff; -extern cpuop_func op_e1b8_0_nf; -extern cpuop_func op_e1b8_0_ff; -extern cpuop_func op_e1d0_0_nf; -extern cpuop_func op_e1d0_0_ff; -extern cpuop_func op_e1d8_0_nf; -extern cpuop_func op_e1d8_0_ff; -extern cpuop_func op_e1e0_0_nf; -extern cpuop_func op_e1e0_0_ff; -extern cpuop_func op_e1e8_0_nf; -extern cpuop_func op_e1e8_0_ff; -extern cpuop_func op_e1f0_0_nf; -extern cpuop_func op_e1f0_0_ff; -extern cpuop_func op_e1f8_0_nf; -extern cpuop_func op_e1f8_0_ff; -extern cpuop_func op_e1f9_0_nf; -extern cpuop_func op_e1f9_0_ff; -extern cpuop_func op_e2d0_0_nf; -extern cpuop_func op_e2d0_0_ff; -extern cpuop_func op_e2d8_0_nf; -extern cpuop_func op_e2d8_0_ff; -extern cpuop_func op_e2e0_0_nf; -extern cpuop_func op_e2e0_0_ff; -extern cpuop_func op_e2e8_0_nf; -extern cpuop_func op_e2e8_0_ff; -extern cpuop_func op_e2f0_0_nf; -extern cpuop_func op_e2f0_0_ff; -extern cpuop_func op_e2f8_0_nf; -extern cpuop_func op_e2f8_0_ff; -extern cpuop_func op_e2f9_0_nf; -extern cpuop_func op_e2f9_0_ff; -extern cpuop_func op_e3d0_0_nf; -extern cpuop_func op_e3d0_0_ff; -extern cpuop_func op_e3d8_0_nf; -extern cpuop_func op_e3d8_0_ff; -extern cpuop_func op_e3e0_0_nf; -extern cpuop_func op_e3e0_0_ff; -extern cpuop_func op_e3e8_0_nf; -extern cpuop_func op_e3e8_0_ff; -extern cpuop_func op_e3f0_0_nf; -extern cpuop_func op_e3f0_0_ff; -extern cpuop_func op_e3f8_0_nf; -extern cpuop_func op_e3f8_0_ff; -extern cpuop_func op_e3f9_0_nf; -extern cpuop_func op_e3f9_0_ff; -extern cpuop_func op_e4d0_0_nf; -extern cpuop_func op_e4d0_0_ff; -extern cpuop_func op_e4d8_0_nf; -extern cpuop_func op_e4d8_0_ff; -extern cpuop_func op_e4e0_0_nf; -extern cpuop_func op_e4e0_0_ff; -extern cpuop_func op_e4e8_0_nf; -extern cpuop_func op_e4e8_0_ff; -extern cpuop_func op_e4f0_0_nf; -extern cpuop_func op_e4f0_0_ff; -extern cpuop_func op_e4f8_0_nf; -extern cpuop_func op_e4f8_0_ff; -extern cpuop_func op_e4f9_0_nf; -extern cpuop_func op_e4f9_0_ff; -extern cpuop_func op_e5d0_0_nf; -extern cpuop_func op_e5d0_0_ff; -extern cpuop_func op_e5d8_0_nf; -extern cpuop_func op_e5d8_0_ff; -extern cpuop_func op_e5e0_0_nf; -extern cpuop_func op_e5e0_0_ff; -extern cpuop_func op_e5e8_0_nf; -extern cpuop_func op_e5e8_0_ff; -extern cpuop_func op_e5f0_0_nf; -extern cpuop_func op_e5f0_0_ff; -extern cpuop_func op_e5f8_0_nf; -extern cpuop_func op_e5f8_0_ff; -extern cpuop_func op_e5f9_0_nf; -extern cpuop_func op_e5f9_0_ff; -extern cpuop_func op_e6d0_0_nf; -extern cpuop_func op_e6d0_0_ff; -extern cpuop_func op_e6d8_0_nf; -extern cpuop_func op_e6d8_0_ff; -extern cpuop_func op_e6e0_0_nf; -extern cpuop_func op_e6e0_0_ff; -extern cpuop_func op_e6e8_0_nf; -extern cpuop_func op_e6e8_0_ff; -extern cpuop_func op_e6f0_0_nf; -extern cpuop_func op_e6f0_0_ff; -extern cpuop_func op_e6f8_0_nf; -extern cpuop_func op_e6f8_0_ff; -extern cpuop_func op_e6f9_0_nf; -extern cpuop_func op_e6f9_0_ff; -extern cpuop_func op_e7d0_0_nf; -extern cpuop_func op_e7d0_0_ff; -extern cpuop_func op_e7d8_0_nf; -extern cpuop_func op_e7d8_0_ff; -extern cpuop_func op_e7e0_0_nf; -extern cpuop_func op_e7e0_0_ff; -extern cpuop_func op_e7e8_0_nf; -extern cpuop_func op_e7e8_0_ff; -extern cpuop_func op_e7f0_0_nf; -extern cpuop_func op_e7f0_0_ff; -extern cpuop_func op_e7f8_0_nf; -extern cpuop_func op_e7f8_0_ff; -extern cpuop_func op_e7f9_0_nf; -extern cpuop_func op_e7f9_0_ff; -extern cpuop_func op_e8c0_0_nf; -extern cpuop_func op_e8c0_0_ff; -extern cpuop_func op_e8d0_0_nf; -extern cpuop_func op_e8d0_0_ff; -extern cpuop_func op_e8e8_0_nf; -extern cpuop_func op_e8e8_0_ff; -extern cpuop_func op_e8f0_0_nf; -extern cpuop_func op_e8f0_0_ff; -extern cpuop_func op_e8f8_0_nf; -extern cpuop_func op_e8f8_0_ff; -extern cpuop_func op_e8f9_0_nf; -extern cpuop_func op_e8f9_0_ff; -extern cpuop_func op_e8fa_0_nf; -extern cpuop_func op_e8fa_0_ff; -extern cpuop_func op_e8fb_0_nf; -extern cpuop_func op_e8fb_0_ff; -extern cpuop_func op_e9c0_0_nf; -extern cpuop_func op_e9c0_0_ff; -extern cpuop_func op_e9d0_0_nf; -extern cpuop_func op_e9d0_0_ff; -extern cpuop_func op_e9e8_0_nf; -extern cpuop_func op_e9e8_0_ff; -extern cpuop_func op_e9f0_0_nf; -extern cpuop_func op_e9f0_0_ff; -extern cpuop_func op_e9f8_0_nf; -extern cpuop_func op_e9f8_0_ff; -extern cpuop_func op_e9f9_0_nf; -extern cpuop_func op_e9f9_0_ff; -extern cpuop_func op_e9fa_0_nf; -extern cpuop_func op_e9fa_0_ff; -extern cpuop_func op_e9fb_0_nf; -extern cpuop_func op_e9fb_0_ff; -extern cpuop_func op_eac0_0_nf; -extern cpuop_func op_eac0_0_ff; -extern cpuop_func op_ead0_0_nf; -extern cpuop_func op_ead0_0_ff; -extern cpuop_func op_eae8_0_nf; -extern cpuop_func op_eae8_0_ff; -extern cpuop_func op_eaf0_0_nf; -extern cpuop_func op_eaf0_0_ff; -extern cpuop_func op_eaf8_0_nf; -extern cpuop_func op_eaf8_0_ff; -extern cpuop_func op_eaf9_0_nf; -extern cpuop_func op_eaf9_0_ff; -extern cpuop_func op_ebc0_0_nf; -extern cpuop_func op_ebc0_0_ff; -extern cpuop_func op_ebd0_0_nf; -extern cpuop_func op_ebd0_0_ff; -extern cpuop_func op_ebe8_0_nf; -extern cpuop_func op_ebe8_0_ff; -extern cpuop_func op_ebf0_0_nf; -extern cpuop_func op_ebf0_0_ff; -extern cpuop_func op_ebf8_0_nf; -extern cpuop_func op_ebf8_0_ff; -extern cpuop_func op_ebf9_0_nf; -extern cpuop_func op_ebf9_0_ff; -extern cpuop_func op_ebfa_0_nf; -extern cpuop_func op_ebfa_0_ff; -extern cpuop_func op_ebfb_0_nf; -extern cpuop_func op_ebfb_0_ff; -extern cpuop_func op_ecc0_0_nf; -extern cpuop_func op_ecc0_0_ff; -extern cpuop_func op_ecd0_0_nf; -extern cpuop_func op_ecd0_0_ff; -extern cpuop_func op_ece8_0_nf; -extern cpuop_func op_ece8_0_ff; -extern cpuop_func op_ecf0_0_nf; -extern cpuop_func op_ecf0_0_ff; -extern cpuop_func op_ecf8_0_nf; -extern cpuop_func op_ecf8_0_ff; -extern cpuop_func op_ecf9_0_nf; -extern cpuop_func op_ecf9_0_ff; -extern cpuop_func op_edc0_0_nf; -extern cpuop_func op_edc0_0_ff; -extern cpuop_func op_edd0_0_nf; -extern cpuop_func op_edd0_0_ff; -extern cpuop_func op_ede8_0_nf; -extern cpuop_func op_ede8_0_ff; -extern cpuop_func op_edf0_0_nf; -extern cpuop_func op_edf0_0_ff; -extern cpuop_func op_edf8_0_nf; -extern cpuop_func op_edf8_0_ff; -extern cpuop_func op_edf9_0_nf; -extern cpuop_func op_edf9_0_ff; -extern cpuop_func op_edfa_0_nf; -extern cpuop_func op_edfa_0_ff; -extern cpuop_func op_edfb_0_nf; -extern cpuop_func op_edfb_0_ff; -extern cpuop_func op_eec0_0_nf; -extern cpuop_func op_eec0_0_ff; -extern cpuop_func op_eed0_0_nf; -extern cpuop_func op_eed0_0_ff; -extern cpuop_func op_eee8_0_nf; -extern cpuop_func op_eee8_0_ff; -extern cpuop_func op_eef0_0_nf; -extern cpuop_func op_eef0_0_ff; -extern cpuop_func op_eef8_0_nf; -extern cpuop_func op_eef8_0_ff; -extern cpuop_func op_eef9_0_nf; -extern cpuop_func op_eef9_0_ff; -extern cpuop_func op_efc0_0_nf; -extern cpuop_func op_efc0_0_ff; -extern cpuop_func op_efd0_0_nf; -extern cpuop_func op_efd0_0_ff; -extern cpuop_func op_efe8_0_nf; -extern cpuop_func op_efe8_0_ff; -extern cpuop_func op_eff0_0_nf; -extern cpuop_func op_eff0_0_ff; -extern cpuop_func op_eff8_0_nf; -extern cpuop_func op_eff8_0_ff; -extern cpuop_func op_eff9_0_nf; -extern cpuop_func op_eff9_0_ff; -extern cpuop_func op_f200_0_nf; -extern cpuop_func op_f200_0_ff; -extern cpuop_func op_f208_0_nf; -extern cpuop_func op_f208_0_ff; -extern cpuop_func op_f210_0_nf; -extern cpuop_func op_f210_0_ff; -extern cpuop_func op_f218_0_nf; -extern cpuop_func op_f218_0_ff; -extern cpuop_func op_f220_0_nf; -extern cpuop_func op_f220_0_ff; -extern cpuop_func op_f228_0_nf; -extern cpuop_func op_f228_0_ff; -extern cpuop_func op_f230_0_nf; -extern cpuop_func op_f230_0_ff; -extern cpuop_func op_f238_0_nf; -extern cpuop_func op_f238_0_ff; -extern cpuop_func op_f239_0_nf; -extern cpuop_func op_f239_0_ff; -extern cpuop_func op_f23a_0_nf; -extern cpuop_func op_f23a_0_ff; -extern cpuop_func op_f23b_0_nf; -extern cpuop_func op_f23b_0_ff; -extern cpuop_func op_f23c_0_nf; -extern cpuop_func op_f23c_0_ff; -extern cpuop_func op_f240_0_nf; -extern cpuop_func op_f240_0_ff; -extern cpuop_func op_f248_0_nf; -extern cpuop_func op_f248_0_ff; -extern cpuop_func op_f250_0_nf; -extern cpuop_func op_f250_0_ff; -extern cpuop_func op_f258_0_nf; -extern cpuop_func op_f258_0_ff; -extern cpuop_func op_f260_0_nf; -extern cpuop_func op_f260_0_ff; -extern cpuop_func op_f268_0_nf; -extern cpuop_func op_f268_0_ff; -extern cpuop_func op_f270_0_nf; -extern cpuop_func op_f270_0_ff; -extern cpuop_func op_f278_0_nf; -extern cpuop_func op_f278_0_ff; -extern cpuop_func op_f279_0_nf; -extern cpuop_func op_f279_0_ff; -extern cpuop_func op_f27a_0_nf; -extern cpuop_func op_f27a_0_ff; -extern cpuop_func op_f27b_0_nf; -extern cpuop_func op_f27b_0_ff; -extern cpuop_func op_f27c_0_nf; -extern cpuop_func op_f27c_0_ff; -extern cpuop_func op_f280_0_nf; -extern cpuop_func op_f280_0_ff; -extern cpuop_func op_f2c0_0_nf; -extern cpuop_func op_f2c0_0_ff; -extern cpuop_func op_f310_0_nf; -extern cpuop_func op_f310_0_ff; -extern cpuop_func op_f320_0_nf; -extern cpuop_func op_f320_0_ff; -extern cpuop_func op_f328_0_nf; -extern cpuop_func op_f328_0_ff; -extern cpuop_func op_f330_0_nf; -extern cpuop_func op_f330_0_ff; -extern cpuop_func op_f338_0_nf; -extern cpuop_func op_f338_0_ff; -extern cpuop_func op_f339_0_nf; -extern cpuop_func op_f339_0_ff; -extern cpuop_func op_f350_0_nf; -extern cpuop_func op_f350_0_ff; -extern cpuop_func op_f358_0_nf; -extern cpuop_func op_f358_0_ff; -extern cpuop_func op_f368_0_nf; -extern cpuop_func op_f368_0_ff; -extern cpuop_func op_f370_0_nf; -extern cpuop_func op_f370_0_ff; -extern cpuop_func op_f378_0_nf; -extern cpuop_func op_f378_0_ff; -extern cpuop_func op_f379_0_nf; -extern cpuop_func op_f379_0_ff; -extern cpuop_func op_f37a_0_nf; -extern cpuop_func op_f37a_0_ff; -extern cpuop_func op_f37b_0_nf; -extern cpuop_func op_f37b_0_ff; -extern cpuop_func op_f408_0_nf; -extern cpuop_func op_f408_0_ff; -extern cpuop_func op_f410_0_nf; -extern cpuop_func op_f410_0_ff; -extern cpuop_func op_f418_0_nf; -extern cpuop_func op_f418_0_ff; -extern cpuop_func op_f419_0_nf; -extern cpuop_func op_f419_0_ff; -extern cpuop_func op_f41a_0_nf; -extern cpuop_func op_f41a_0_ff; -extern cpuop_func op_f41b_0_nf; -extern cpuop_func op_f41b_0_ff; -extern cpuop_func op_f41c_0_nf; -extern cpuop_func op_f41c_0_ff; -extern cpuop_func op_f41d_0_nf; -extern cpuop_func op_f41d_0_ff; -extern cpuop_func op_f41e_0_nf; -extern cpuop_func op_f41e_0_ff; -extern cpuop_func op_f41f_0_nf; -extern cpuop_func op_f41f_0_ff; -extern cpuop_func op_f428_0_nf; -extern cpuop_func op_f428_0_ff; -extern cpuop_func op_f430_0_nf; -extern cpuop_func op_f430_0_ff; -extern cpuop_func op_f438_0_nf; -extern cpuop_func op_f438_0_ff; -extern cpuop_func op_f439_0_nf; -extern cpuop_func op_f439_0_ff; -extern cpuop_func op_f43a_0_nf; -extern cpuop_func op_f43a_0_ff; -extern cpuop_func op_f43b_0_nf; -extern cpuop_func op_f43b_0_ff; -extern cpuop_func op_f43c_0_nf; -extern cpuop_func op_f43c_0_ff; -extern cpuop_func op_f43d_0_nf; -extern cpuop_func op_f43d_0_ff; -extern cpuop_func op_f43e_0_nf; -extern cpuop_func op_f43e_0_ff; -extern cpuop_func op_f43f_0_nf; -extern cpuop_func op_f43f_0_ff; -extern cpuop_func op_f500_0_nf; -extern cpuop_func op_f500_0_ff; -extern cpuop_func op_f600_0_nf; -extern cpuop_func op_f600_0_ff; -extern cpuop_func op_f608_0_nf; -extern cpuop_func op_f608_0_ff; -extern cpuop_func op_f610_0_nf; -extern cpuop_func op_f610_0_ff; -extern cpuop_func op_f618_0_nf; -extern cpuop_func op_f618_0_ff; -extern cpuop_func op_f620_0_nf; -extern cpuop_func op_f620_0_ff; -extern cpuop_func op_4800_1_nf; -extern cpuop_func op_4800_1_ff; -extern cpuop_func op_4810_1_nf; -extern cpuop_func op_4810_1_ff; -extern cpuop_func op_4818_1_nf; -extern cpuop_func op_4818_1_ff; -extern cpuop_func op_4820_1_nf; -extern cpuop_func op_4820_1_ff; -extern cpuop_func op_4828_1_nf; -extern cpuop_func op_4828_1_ff; -extern cpuop_func op_4830_1_nf; -extern cpuop_func op_4830_1_ff; -extern cpuop_func op_4838_1_nf; -extern cpuop_func op_4838_1_ff; -extern cpuop_func op_4839_1_nf; -extern cpuop_func op_4839_1_ff; -extern cpuop_func op_8100_1_nf; -extern cpuop_func op_8100_1_ff; -extern cpuop_func op_8108_1_nf; -extern cpuop_func op_8108_1_ff; -extern cpuop_func op_c100_1_nf; -extern cpuop_func op_c100_1_ff; -extern cpuop_func op_c108_1_nf; -extern cpuop_func op_c108_1_ff; -extern cpuop_func op_30_3_nf; -extern cpuop_func op_30_3_ff; -extern cpuop_func op_70_3_nf; -extern cpuop_func op_70_3_ff; -extern cpuop_func op_b0_3_nf; -extern cpuop_func op_b0_3_ff; -extern cpuop_func op_130_3_nf; -extern cpuop_func op_130_3_ff; -extern cpuop_func op_13b_3_nf; -extern cpuop_func op_13b_3_ff; -extern cpuop_func op_170_3_nf; -extern cpuop_func op_170_3_ff; -extern cpuop_func op_17b_3_nf; -extern cpuop_func op_17b_3_ff; -extern cpuop_func op_1b0_3_nf; -extern cpuop_func op_1b0_3_ff; -extern cpuop_func op_1bb_3_nf; -extern cpuop_func op_1bb_3_ff; -extern cpuop_func op_1f0_3_nf; -extern cpuop_func op_1f0_3_ff; -extern cpuop_func op_1fb_3_nf; -extern cpuop_func op_1fb_3_ff; -extern cpuop_func op_230_3_nf; -extern cpuop_func op_230_3_ff; -extern cpuop_func op_270_3_nf; -extern cpuop_func op_270_3_ff; -extern cpuop_func op_2b0_3_nf; -extern cpuop_func op_2b0_3_ff; -extern cpuop_func op_430_3_nf; -extern cpuop_func op_430_3_ff; -extern cpuop_func op_470_3_nf; -extern cpuop_func op_470_3_ff; -extern cpuop_func op_4b0_3_nf; -extern cpuop_func op_4b0_3_ff; -extern cpuop_func op_630_3_nf; -extern cpuop_func op_630_3_ff; -extern cpuop_func op_670_3_nf; -extern cpuop_func op_670_3_ff; -extern cpuop_func op_6b0_3_nf; -extern cpuop_func op_6b0_3_ff; -extern cpuop_func op_830_3_nf; -extern cpuop_func op_830_3_ff; -extern cpuop_func op_83b_3_nf; -extern cpuop_func op_83b_3_ff; -extern cpuop_func op_870_3_nf; -extern cpuop_func op_870_3_ff; -extern cpuop_func op_87b_3_nf; -extern cpuop_func op_87b_3_ff; -extern cpuop_func op_8b0_3_nf; -extern cpuop_func op_8b0_3_ff; -extern cpuop_func op_8bb_3_nf; -extern cpuop_func op_8bb_3_ff; -extern cpuop_func op_8f0_3_nf; -extern cpuop_func op_8f0_3_ff; -extern cpuop_func op_8fb_3_nf; -extern cpuop_func op_8fb_3_ff; -extern cpuop_func op_a30_3_nf; -extern cpuop_func op_a30_3_ff; -extern cpuop_func op_a70_3_nf; -extern cpuop_func op_a70_3_ff; -extern cpuop_func op_ab0_3_nf; -extern cpuop_func op_ab0_3_ff; -extern cpuop_func op_c30_3_nf; -extern cpuop_func op_c30_3_ff; -extern cpuop_func op_c3b_3_nf; -extern cpuop_func op_c3b_3_ff; -extern cpuop_func op_c70_3_nf; -extern cpuop_func op_c70_3_ff; -extern cpuop_func op_c7b_3_nf; -extern cpuop_func op_c7b_3_ff; -extern cpuop_func op_cb0_3_nf; -extern cpuop_func op_cb0_3_ff; -extern cpuop_func op_cbb_3_nf; -extern cpuop_func op_cbb_3_ff; -extern cpuop_func op_1030_3_nf; -extern cpuop_func op_1030_3_ff; -extern cpuop_func op_103b_3_nf; -extern cpuop_func op_103b_3_ff; -extern cpuop_func op_10b0_3_nf; -extern cpuop_func op_10b0_3_ff; -extern cpuop_func op_10bb_3_nf; -extern cpuop_func op_10bb_3_ff; -extern cpuop_func op_10f0_3_nf; -extern cpuop_func op_10f0_3_ff; -extern cpuop_func op_10fb_3_nf; -extern cpuop_func op_10fb_3_ff; -extern cpuop_func op_1130_3_nf; -extern cpuop_func op_1130_3_ff; -extern cpuop_func op_113b_3_nf; -extern cpuop_func op_113b_3_ff; -extern cpuop_func op_1170_3_nf; -extern cpuop_func op_1170_3_ff; -extern cpuop_func op_117b_3_nf; -extern cpuop_func op_117b_3_ff; -extern cpuop_func op_1180_3_nf; -extern cpuop_func op_1180_3_ff; -extern cpuop_func op_1190_3_nf; -extern cpuop_func op_1190_3_ff; -extern cpuop_func op_1198_3_nf; -extern cpuop_func op_1198_3_ff; -extern cpuop_func op_11a0_3_nf; -extern cpuop_func op_11a0_3_ff; -extern cpuop_func op_11a8_3_nf; -extern cpuop_func op_11a8_3_ff; -extern cpuop_func op_11b0_3_nf; -extern cpuop_func op_11b0_3_ff; -extern cpuop_func op_11b8_3_nf; -extern cpuop_func op_11b8_3_ff; -extern cpuop_func op_11b9_3_nf; -extern cpuop_func op_11b9_3_ff; -extern cpuop_func op_11ba_3_nf; -extern cpuop_func op_11ba_3_ff; -extern cpuop_func op_11bb_3_nf; -extern cpuop_func op_11bb_3_ff; -extern cpuop_func op_11bc_3_nf; -extern cpuop_func op_11bc_3_ff; -extern cpuop_func op_11f0_3_nf; -extern cpuop_func op_11f0_3_ff; -extern cpuop_func op_11fb_3_nf; -extern cpuop_func op_11fb_3_ff; -extern cpuop_func op_13f0_3_nf; -extern cpuop_func op_13f0_3_ff; -extern cpuop_func op_13fb_3_nf; -extern cpuop_func op_13fb_3_ff; -extern cpuop_func op_2030_3_nf; -extern cpuop_func op_2030_3_ff; -extern cpuop_func op_203b_3_nf; -extern cpuop_func op_203b_3_ff; -extern cpuop_func op_2070_3_nf; -extern cpuop_func op_2070_3_ff; -extern cpuop_func op_207b_3_nf; -extern cpuop_func op_207b_3_ff; -extern cpuop_func op_20b0_3_nf; -extern cpuop_func op_20b0_3_ff; -extern cpuop_func op_20bb_3_nf; -extern cpuop_func op_20bb_3_ff; -extern cpuop_func op_20f0_3_nf; -extern cpuop_func op_20f0_3_ff; -extern cpuop_func op_20fb_3_nf; -extern cpuop_func op_20fb_3_ff; -extern cpuop_func op_2130_3_nf; -extern cpuop_func op_2130_3_ff; -extern cpuop_func op_213b_3_nf; -extern cpuop_func op_213b_3_ff; -extern cpuop_func op_2170_3_nf; -extern cpuop_func op_2170_3_ff; -extern cpuop_func op_217b_3_nf; -extern cpuop_func op_217b_3_ff; -extern cpuop_func op_2180_3_nf; -extern cpuop_func op_2180_3_ff; -extern cpuop_func op_2188_3_nf; -extern cpuop_func op_2188_3_ff; -extern cpuop_func op_2190_3_nf; -extern cpuop_func op_2190_3_ff; -extern cpuop_func op_2198_3_nf; -extern cpuop_func op_2198_3_ff; -extern cpuop_func op_21a0_3_nf; -extern cpuop_func op_21a0_3_ff; -extern cpuop_func op_21a8_3_nf; -extern cpuop_func op_21a8_3_ff; -extern cpuop_func op_21b0_3_nf; -extern cpuop_func op_21b0_3_ff; -extern cpuop_func op_21b8_3_nf; -extern cpuop_func op_21b8_3_ff; -extern cpuop_func op_21b9_3_nf; -extern cpuop_func op_21b9_3_ff; -extern cpuop_func op_21ba_3_nf; -extern cpuop_func op_21ba_3_ff; -extern cpuop_func op_21bb_3_nf; -extern cpuop_func op_21bb_3_ff; -extern cpuop_func op_21bc_3_nf; -extern cpuop_func op_21bc_3_ff; -extern cpuop_func op_21f0_3_nf; -extern cpuop_func op_21f0_3_ff; -extern cpuop_func op_21fb_3_nf; -extern cpuop_func op_21fb_3_ff; -extern cpuop_func op_23f0_3_nf; -extern cpuop_func op_23f0_3_ff; -extern cpuop_func op_23fb_3_nf; -extern cpuop_func op_23fb_3_ff; -extern cpuop_func op_3030_3_nf; -extern cpuop_func op_3030_3_ff; -extern cpuop_func op_303b_3_nf; -extern cpuop_func op_303b_3_ff; -extern cpuop_func op_3070_3_nf; -extern cpuop_func op_3070_3_ff; -extern cpuop_func op_307b_3_nf; -extern cpuop_func op_307b_3_ff; -extern cpuop_func op_30b0_3_nf; -extern cpuop_func op_30b0_3_ff; -extern cpuop_func op_30bb_3_nf; -extern cpuop_func op_30bb_3_ff; -extern cpuop_func op_30f0_3_nf; -extern cpuop_func op_30f0_3_ff; -extern cpuop_func op_30fb_3_nf; -extern cpuop_func op_30fb_3_ff; -extern cpuop_func op_3130_3_nf; -extern cpuop_func op_3130_3_ff; -extern cpuop_func op_313b_3_nf; -extern cpuop_func op_313b_3_ff; -extern cpuop_func op_3170_3_nf; -extern cpuop_func op_3170_3_ff; -extern cpuop_func op_317b_3_nf; -extern cpuop_func op_317b_3_ff; -extern cpuop_func op_3180_3_nf; -extern cpuop_func op_3180_3_ff; -extern cpuop_func op_3188_3_nf; -extern cpuop_func op_3188_3_ff; -extern cpuop_func op_3190_3_nf; -extern cpuop_func op_3190_3_ff; -extern cpuop_func op_3198_3_nf; -extern cpuop_func op_3198_3_ff; -extern cpuop_func op_31a0_3_nf; -extern cpuop_func op_31a0_3_ff; -extern cpuop_func op_31a8_3_nf; -extern cpuop_func op_31a8_3_ff; -extern cpuop_func op_31b0_3_nf; -extern cpuop_func op_31b0_3_ff; -extern cpuop_func op_31b8_3_nf; -extern cpuop_func op_31b8_3_ff; -extern cpuop_func op_31b9_3_nf; -extern cpuop_func op_31b9_3_ff; -extern cpuop_func op_31ba_3_nf; -extern cpuop_func op_31ba_3_ff; -extern cpuop_func op_31bb_3_nf; -extern cpuop_func op_31bb_3_ff; -extern cpuop_func op_31bc_3_nf; -extern cpuop_func op_31bc_3_ff; -extern cpuop_func op_31f0_3_nf; -extern cpuop_func op_31f0_3_ff; -extern cpuop_func op_31fb_3_nf; -extern cpuop_func op_31fb_3_ff; -extern cpuop_func op_33f0_3_nf; -extern cpuop_func op_33f0_3_ff; -extern cpuop_func op_33fb_3_nf; -extern cpuop_func op_33fb_3_ff; -extern cpuop_func op_4030_3_nf; -extern cpuop_func op_4030_3_ff; -extern cpuop_func op_4070_3_nf; -extern cpuop_func op_4070_3_ff; -extern cpuop_func op_40b0_3_nf; -extern cpuop_func op_40b0_3_ff; -extern cpuop_func op_40f0_3_nf; -extern cpuop_func op_40f0_3_ff; -extern cpuop_func op_4130_3_nf; -extern cpuop_func op_4130_3_ff; -extern cpuop_func op_413b_3_nf; -extern cpuop_func op_413b_3_ff; -extern cpuop_func op_41b0_3_nf; -extern cpuop_func op_41b0_3_ff; -extern cpuop_func op_41bb_3_nf; -extern cpuop_func op_41bb_3_ff; -extern cpuop_func op_41f0_3_nf; -extern cpuop_func op_41f0_3_ff; -extern cpuop_func op_41fb_3_nf; -extern cpuop_func op_41fb_3_ff; -extern cpuop_func op_4230_3_nf; -extern cpuop_func op_4230_3_ff; -extern cpuop_func op_4270_3_nf; -extern cpuop_func op_4270_3_ff; -extern cpuop_func op_42b0_3_nf; -extern cpuop_func op_42b0_3_ff; -extern cpuop_func op_42f0_3_nf; -extern cpuop_func op_42f0_3_ff; -extern cpuop_func op_4430_3_nf; -extern cpuop_func op_4430_3_ff; -extern cpuop_func op_4470_3_nf; -extern cpuop_func op_4470_3_ff; -extern cpuop_func op_44b0_3_nf; -extern cpuop_func op_44b0_3_ff; -extern cpuop_func op_44f0_3_nf; -extern cpuop_func op_44f0_3_ff; -extern cpuop_func op_44fb_3_nf; -extern cpuop_func op_44fb_3_ff; -extern cpuop_func op_4630_3_nf; -extern cpuop_func op_4630_3_ff; -extern cpuop_func op_4670_3_nf; -extern cpuop_func op_4670_3_ff; -extern cpuop_func op_46b0_3_nf; -extern cpuop_func op_46b0_3_ff; -extern cpuop_func op_46f0_3_nf; -extern cpuop_func op_46f0_3_ff; -extern cpuop_func op_46fb_3_nf; -extern cpuop_func op_46fb_3_ff; -extern cpuop_func op_4830_3_nf; -extern cpuop_func op_4830_3_ff; -extern cpuop_func op_4870_3_nf; -extern cpuop_func op_4870_3_ff; -extern cpuop_func op_487b_3_nf; -extern cpuop_func op_487b_3_ff; -extern cpuop_func op_48b0_3_nf; -extern cpuop_func op_48b0_3_ff; -extern cpuop_func op_48f0_3_nf; -extern cpuop_func op_48f0_3_ff; -extern cpuop_func op_4a30_3_nf; -extern cpuop_func op_4a30_3_ff; -extern cpuop_func op_4a3b_3_nf; -extern cpuop_func op_4a3b_3_ff; -extern cpuop_func op_4a70_3_nf; -extern cpuop_func op_4a70_3_ff; -extern cpuop_func op_4a7b_3_nf; -extern cpuop_func op_4a7b_3_ff; -extern cpuop_func op_4ab0_3_nf; -extern cpuop_func op_4ab0_3_ff; -extern cpuop_func op_4abb_3_nf; -extern cpuop_func op_4abb_3_ff; -extern cpuop_func op_4af0_3_nf; -extern cpuop_func op_4af0_3_ff; -extern cpuop_func op_4cb0_3_nf; -extern cpuop_func op_4cb0_3_ff; -extern cpuop_func op_4cbb_3_nf; -extern cpuop_func op_4cbb_3_ff; -extern cpuop_func op_4cf0_3_nf; -extern cpuop_func op_4cf0_3_ff; -extern cpuop_func op_4cfb_3_nf; -extern cpuop_func op_4cfb_3_ff; -extern cpuop_func op_4eb0_3_nf; -extern cpuop_func op_4eb0_3_ff; -extern cpuop_func op_4ebb_3_nf; -extern cpuop_func op_4ebb_3_ff; -extern cpuop_func op_4ef0_3_nf; -extern cpuop_func op_4ef0_3_ff; -extern cpuop_func op_4efb_3_nf; -extern cpuop_func op_4efb_3_ff; -extern cpuop_func op_5030_3_nf; -extern cpuop_func op_5030_3_ff; -extern cpuop_func op_5070_3_nf; -extern cpuop_func op_5070_3_ff; -extern cpuop_func op_50b0_3_nf; -extern cpuop_func op_50b0_3_ff; -extern cpuop_func op_50f0_3_nf; -extern cpuop_func op_50f0_3_ff; -extern cpuop_func op_5130_3_nf; -extern cpuop_func op_5130_3_ff; -extern cpuop_func op_5170_3_nf; -extern cpuop_func op_5170_3_ff; -extern cpuop_func op_51b0_3_nf; -extern cpuop_func op_51b0_3_ff; -extern cpuop_func op_51f0_3_nf; -extern cpuop_func op_51f0_3_ff; -extern cpuop_func op_52f0_3_nf; -extern cpuop_func op_52f0_3_ff; -extern cpuop_func op_53f0_3_nf; -extern cpuop_func op_53f0_3_ff; -extern cpuop_func op_54f0_3_nf; -extern cpuop_func op_54f0_3_ff; -extern cpuop_func op_55f0_3_nf; -extern cpuop_func op_55f0_3_ff; -extern cpuop_func op_56f0_3_nf; -extern cpuop_func op_56f0_3_ff; -extern cpuop_func op_57f0_3_nf; -extern cpuop_func op_57f0_3_ff; -extern cpuop_func op_58f0_3_nf; -extern cpuop_func op_58f0_3_ff; -extern cpuop_func op_59f0_3_nf; -extern cpuop_func op_59f0_3_ff; -extern cpuop_func op_5af0_3_nf; -extern cpuop_func op_5af0_3_ff; -extern cpuop_func op_5bf0_3_nf; -extern cpuop_func op_5bf0_3_ff; -extern cpuop_func op_5cf0_3_nf; -extern cpuop_func op_5cf0_3_ff; -extern cpuop_func op_5df0_3_nf; -extern cpuop_func op_5df0_3_ff; -extern cpuop_func op_5ef0_3_nf; -extern cpuop_func op_5ef0_3_ff; -extern cpuop_func op_5ff0_3_nf; -extern cpuop_func op_5ff0_3_ff; -extern cpuop_func op_60ff_3_nf; -extern cpuop_func op_60ff_3_ff; -extern cpuop_func op_62ff_3_nf; -extern cpuop_func op_62ff_3_ff; -extern cpuop_func op_63ff_3_nf; -extern cpuop_func op_63ff_3_ff; -extern cpuop_func op_64ff_3_nf; -extern cpuop_func op_64ff_3_ff; -extern cpuop_func op_65ff_3_nf; -extern cpuop_func op_65ff_3_ff; -extern cpuop_func op_66ff_3_nf; -extern cpuop_func op_66ff_3_ff; -extern cpuop_func op_67ff_3_nf; -extern cpuop_func op_67ff_3_ff; -extern cpuop_func op_68ff_3_nf; -extern cpuop_func op_68ff_3_ff; -extern cpuop_func op_69ff_3_nf; -extern cpuop_func op_69ff_3_ff; -extern cpuop_func op_6aff_3_nf; -extern cpuop_func op_6aff_3_ff; -extern cpuop_func op_6bff_3_nf; -extern cpuop_func op_6bff_3_ff; -extern cpuop_func op_6cff_3_nf; -extern cpuop_func op_6cff_3_ff; -extern cpuop_func op_6dff_3_nf; -extern cpuop_func op_6dff_3_ff; -extern cpuop_func op_6eff_3_nf; -extern cpuop_func op_6eff_3_ff; -extern cpuop_func op_6fff_3_nf; -extern cpuop_func op_6fff_3_ff; -extern cpuop_func op_8030_3_nf; -extern cpuop_func op_8030_3_ff; -extern cpuop_func op_803b_3_nf; -extern cpuop_func op_803b_3_ff; -extern cpuop_func op_8070_3_nf; -extern cpuop_func op_8070_3_ff; -extern cpuop_func op_807b_3_nf; -extern cpuop_func op_807b_3_ff; -extern cpuop_func op_80b0_3_nf; -extern cpuop_func op_80b0_3_ff; -extern cpuop_func op_80bb_3_nf; -extern cpuop_func op_80bb_3_ff; -extern cpuop_func op_80f0_3_nf; -extern cpuop_func op_80f0_3_ff; -extern cpuop_func op_80fb_3_nf; -extern cpuop_func op_80fb_3_ff; -extern cpuop_func op_8130_3_nf; -extern cpuop_func op_8130_3_ff; -extern cpuop_func op_8170_3_nf; -extern cpuop_func op_8170_3_ff; -extern cpuop_func op_81b0_3_nf; -extern cpuop_func op_81b0_3_ff; -extern cpuop_func op_81f0_3_nf; -extern cpuop_func op_81f0_3_ff; -extern cpuop_func op_81fb_3_nf; -extern cpuop_func op_81fb_3_ff; -extern cpuop_func op_9030_3_nf; -extern cpuop_func op_9030_3_ff; -extern cpuop_func op_903b_3_nf; -extern cpuop_func op_903b_3_ff; -extern cpuop_func op_9070_3_nf; -extern cpuop_func op_9070_3_ff; -extern cpuop_func op_907b_3_nf; -extern cpuop_func op_907b_3_ff; -extern cpuop_func op_90b0_3_nf; -extern cpuop_func op_90b0_3_ff; -extern cpuop_func op_90bb_3_nf; -extern cpuop_func op_90bb_3_ff; -extern cpuop_func op_90f0_3_nf; -extern cpuop_func op_90f0_3_ff; -extern cpuop_func op_90fb_3_nf; -extern cpuop_func op_90fb_3_ff; -extern cpuop_func op_9130_3_nf; -extern cpuop_func op_9130_3_ff; -extern cpuop_func op_9170_3_nf; -extern cpuop_func op_9170_3_ff; -extern cpuop_func op_91b0_3_nf; -extern cpuop_func op_91b0_3_ff; -extern cpuop_func op_91f0_3_nf; -extern cpuop_func op_91f0_3_ff; -extern cpuop_func op_91fb_3_nf; -extern cpuop_func op_91fb_3_ff; -extern cpuop_func op_b030_3_nf; -extern cpuop_func op_b030_3_ff; -extern cpuop_func op_b03b_3_nf; -extern cpuop_func op_b03b_3_ff; -extern cpuop_func op_b070_3_nf; -extern cpuop_func op_b070_3_ff; -extern cpuop_func op_b07b_3_nf; -extern cpuop_func op_b07b_3_ff; -extern cpuop_func op_b0b0_3_nf; -extern cpuop_func op_b0b0_3_ff; -extern cpuop_func op_b0bb_3_nf; -extern cpuop_func op_b0bb_3_ff; -extern cpuop_func op_b0f0_3_nf; -extern cpuop_func op_b0f0_3_ff; -extern cpuop_func op_b0fb_3_nf; -extern cpuop_func op_b0fb_3_ff; -extern cpuop_func op_b130_3_nf; -extern cpuop_func op_b130_3_ff; -extern cpuop_func op_b170_3_nf; -extern cpuop_func op_b170_3_ff; -extern cpuop_func op_b1b0_3_nf; -extern cpuop_func op_b1b0_3_ff; -extern cpuop_func op_b1f0_3_nf; -extern cpuop_func op_b1f0_3_ff; -extern cpuop_func op_b1fb_3_nf; -extern cpuop_func op_b1fb_3_ff; -extern cpuop_func op_c030_3_nf; -extern cpuop_func op_c030_3_ff; -extern cpuop_func op_c03b_3_nf; -extern cpuop_func op_c03b_3_ff; -extern cpuop_func op_c070_3_nf; -extern cpuop_func op_c070_3_ff; -extern cpuop_func op_c07b_3_nf; -extern cpuop_func op_c07b_3_ff; -extern cpuop_func op_c0b0_3_nf; -extern cpuop_func op_c0b0_3_ff; -extern cpuop_func op_c0bb_3_nf; -extern cpuop_func op_c0bb_3_ff; -extern cpuop_func op_c0f0_3_nf; -extern cpuop_func op_c0f0_3_ff; -extern cpuop_func op_c0fb_3_nf; -extern cpuop_func op_c0fb_3_ff; -extern cpuop_func op_c130_3_nf; -extern cpuop_func op_c130_3_ff; -extern cpuop_func op_c170_3_nf; -extern cpuop_func op_c170_3_ff; -extern cpuop_func op_c1b0_3_nf; -extern cpuop_func op_c1b0_3_ff; -extern cpuop_func op_c1f0_3_nf; -extern cpuop_func op_c1f0_3_ff; -extern cpuop_func op_c1fb_3_nf; -extern cpuop_func op_c1fb_3_ff; -extern cpuop_func op_d030_3_nf; -extern cpuop_func op_d030_3_ff; -extern cpuop_func op_d03b_3_nf; -extern cpuop_func op_d03b_3_ff; -extern cpuop_func op_d070_3_nf; -extern cpuop_func op_d070_3_ff; -extern cpuop_func op_d07b_3_nf; -extern cpuop_func op_d07b_3_ff; -extern cpuop_func op_d0b0_3_nf; -extern cpuop_func op_d0b0_3_ff; -extern cpuop_func op_d0bb_3_nf; -extern cpuop_func op_d0bb_3_ff; -extern cpuop_func op_d0f0_3_nf; -extern cpuop_func op_d0f0_3_ff; -extern cpuop_func op_d0fb_3_nf; -extern cpuop_func op_d0fb_3_ff; -extern cpuop_func op_d130_3_nf; -extern cpuop_func op_d130_3_ff; -extern cpuop_func op_d170_3_nf; -extern cpuop_func op_d170_3_ff; -extern cpuop_func op_d1b0_3_nf; -extern cpuop_func op_d1b0_3_ff; -extern cpuop_func op_d1f0_3_nf; -extern cpuop_func op_d1f0_3_ff; -extern cpuop_func op_d1fb_3_nf; -extern cpuop_func op_d1fb_3_ff; -extern cpuop_func op_e0f0_3_nf; -extern cpuop_func op_e0f0_3_ff; -extern cpuop_func op_e1f0_3_nf; -extern cpuop_func op_e1f0_3_ff; -extern cpuop_func op_e2f0_3_nf; -extern cpuop_func op_e2f0_3_ff; -extern cpuop_func op_e3f0_3_nf; -extern cpuop_func op_e3f0_3_ff; -extern cpuop_func op_e4f0_3_nf; -extern cpuop_func op_e4f0_3_ff; -extern cpuop_func op_e5f0_3_nf; -extern cpuop_func op_e5f0_3_ff; -extern cpuop_func op_e6f0_3_nf; -extern cpuop_func op_e6f0_3_ff; -extern cpuop_func op_e7f0_3_nf; -extern cpuop_func op_e7f0_3_ff; -extern cpuop_func op_40c0_4_nf; -extern cpuop_func op_40c0_4_ff; -extern cpuop_func op_40d0_4_nf; -extern cpuop_func op_40d0_4_ff; -extern cpuop_func op_40d8_4_nf; -extern cpuop_func op_40d8_4_ff; -extern cpuop_func op_40e0_4_nf; -extern cpuop_func op_40e0_4_ff; -extern cpuop_func op_40e8_4_nf; -extern cpuop_func op_40e8_4_ff; -extern cpuop_func op_40f0_4_nf; -extern cpuop_func op_40f0_4_ff; -extern cpuop_func op_40f8_4_nf; -extern cpuop_func op_40f8_4_ff; -extern cpuop_func op_40f9_4_nf; -extern cpuop_func op_40f9_4_ff; -extern cpuop_func op_4e73_4_nf; -extern cpuop_func op_4e73_4_ff; diff --git a/BasiliskII/src/uae_cpu/defs68k.c b/BasiliskII/src/uae_cpu/defs68k.c deleted file mode 100644 index e3cfa982..00000000 --- a/BasiliskII/src/uae_cpu/defs68k.c +++ /dev/null @@ -1,185 +0,0 @@ -#include "sysdeps.h" -#include "readcpu.h" -struct instr_def defs68k[] = { -{ 60, 0, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65535, 0, 0, { { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 } }, 0, 16, "ORSR.B #1"}, -{ 124, 0, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65535, 0, 2, { { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 } }, 4, 16, "ORSR.W #1"}, -{ 192, 8, {17,17,11,11,11,12,12,12,0,0,0,0,0,0,0,0}, 63936, 2, 0, { { 1, 1 }, { 1, 5 }, { 1, 0 }, { 1, 5 }, { 1, 0 } }, 4, 17, "CHK2.z #1,s[!Dreg,Areg,Aipi,Apdi,Immd]"}, -{ 0, 8, {17,17,13,13,13,14,14,14,0,0,0,0,0,0,0,0}, 65280, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 2 } }, 0, 19, "OR.z #z,d[!Areg]"}, -{ 572, 0, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65535, 0, 0, { { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 } }, 0, 16, "ANDSR.B #1"}, -{ 636, 0, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65535, 0, 2, { { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 } }, 4, 16, "ANDSR.W #1"}, -{ 512, 8, {17,17,13,13,13,14,14,14,0,0,0,0,0,0,0,0}, 65280, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 2 } }, 0, 19, "AND.z #z,d[!Areg]"}, -{ 1024, 8, {17,17,13,13,13,14,14,14,0,0,0,0,0,0,0,0}, 65280, 0, 0, { { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 } }, 0, 19, "SUB.z #z,d[!Areg]"}, -{ 1536, 8, {17,17,13,13,13,14,14,14,0,0,0,0,0,0,0,0}, 65280, 0, 0, { { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 } }, 0, 19, "ADD.z #z,d[!Areg]"}, -{ 1728, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 2, 0, { { 0, 1 }, { 0, 1 }, { 0, 1 }, { 0, 1 }, { 0, 1 } }, 0, 16, "CALLM s[!Dreg,Areg,Aipi,Apdi,Immd]"}, -{ 1728, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 2, 0, { { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 } }, 3, 16, "RTM s[Dreg,Areg]"}, -{ 2048, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 0 }, { 1, 1 }, { 1, 1 } }, 0, 17, "BTST #1,s[!Areg]"}, -{ 2112, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 0 }, { 1, 1 }, { 1, 1 } }, 0, 19, "BCHG #1,s[!Areg,Immd]"}, -{ 2176, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 0 }, { 1, 1 }, { 1, 1 } }, 0, 19, "BCLR #1,s[!Areg,Immd]"}, -{ 2240, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 0 }, { 1, 1 }, { 1, 1 } }, 0, 19, "BSET #1,s[!Areg,Immd]"}, -{ 2620, 0, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65535, 0, 0, { { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 } }, 0, 16, "EORSR.B #1"}, -{ 2684, 0, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65535, 0, 2, { { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 } }, 4, 16, "EORSR.W #1"}, -{ 2560, 8, {17,17,13,13,13,14,14,14,0,0,0,0,0,0,0,0}, 65280, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 2 } }, 0, 19, "EOR.z #z,d[!Areg]"}, -{ 3072, 8, {17,17,11,11,11,12,12,12,0,0,0,0,0,0,0,0}, 65280, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 } }, 0, 17, "CMP.z #z,s[!Areg,Immd]"}, -{ 2752, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 2, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 } }, 0, 19, "CAS.B #1,s[!Dreg,Areg,Immd,PC8r,PC16]"}, -{ 3264, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 2, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 } }, 0, 19, "CAS.W #1,s[!Dreg,Areg,Immd,PC8r,PC16]"}, -{ 3324, 0, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65535, 2, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 } }, 0, 16, "CAS2.W #2"}, -{ 3584, 8, {17,17,11,11,11,12,12,12,0,0,0,0,0,0,0,0}, 65280, 2, 2, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 4, 19, "MOVES.z #1,s[!Dreg,Areg,Immd,PC8r,PC16]"}, -{ 3776, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 2, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 } }, 0, 19, "CAS.L #1,s[!Dreg,Areg,Immd,PC8r,PC16]"}, -{ 3836, 0, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65535, 2, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 } }, 0, 16, "CAS2.L #2"}, -{ 256, 9, {15,15,15,13,13,13,14,14,14,0,0,0,0,0,0,0}, 61888, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 18, "MVPMR.W d[Areg-Ad16],Dr"}, -{ 320, 9, {15,15,15,13,13,13,14,14,14,0,0,0,0,0,0,0}, 61888, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 18, "MVPMR.L d[Areg-Ad16],Dr"}, -{ 384, 9, {15,15,15,13,13,13,14,14,14,0,0,0,0,0,0,0}, 61888, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 18, "MVPRM.W Dr,d[Areg-Ad16]"}, -{ 448, 9, {15,15,15,13,13,13,14,14,14,0,0,0,0,0,0,0}, 61888, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 18, "MVPRM.L Dr,d[Areg-Ad16]"}, -{ 256, 9, {15,15,15,11,11,11,12,12,12,0,0,0,0,0,0,0}, 61888, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 0 }, { 1, 1 }, { 1, 1 } }, 0, 17, "BTST Dr,s[!Areg]"}, -{ 320, 9, {15,15,15,11,11,11,12,12,12,0,0,0,0,0,0,0}, 61888, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 0 }, { 1, 1 }, { 1, 1 } }, 0, 19, "BCHG Dr,s[!Areg,Immd]"}, -{ 384, 9, {15,15,15,11,11,11,12,12,12,0,0,0,0,0,0,0}, 61888, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 0 }, { 1, 1 }, { 1, 1 } }, 0, 19, "BCLR Dr,s[!Areg,Immd]"}, -{ 448, 9, {15,15,15,11,11,11,12,12,12,0,0,0,0,0,0,0}, 61888, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 0 }, { 1, 1 }, { 1, 1 } }, 0, 19, "BSET Dr,s[!Areg,Immd]"}, -{ 4096, 12, {14,14,14,13,13,13,11,11,11,12,12,12,0,0,0,0}, 61440, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 2 } }, 0, 18, "MOVE.B s,d[!Areg]"}, -{ 8192, 12, {14,14,14,13,13,13,11,11,11,12,12,12,0,0,0,0}, 61440, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 18, "MOVEA.L s,d[Areg]"}, -{ 8192, 12, {14,14,14,13,13,13,11,11,11,12,12,12,0,0,0,0}, 61440, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 2 } }, 0, 18, "MOVE.L s,d[!Areg]"}, -{ 12288, 12, {14,14,14,13,13,13,11,11,11,12,12,12,0,0,0,0}, 61440, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 18, "MOVEA.W s,d[Areg]"}, -{ 12288, 12, {14,14,14,13,13,13,11,11,11,12,12,12,0,0,0,0}, 61440, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 2 } }, 0, 18, "MOVE.W s,d[!Areg]"}, -{ 16384, 8, {17,17,13,13,13,14,14,14,0,0,0,0,0,0,0,0}, 65280, 0, 0, { { 0, 0 }, { 1, 4 }, { 0, 0 }, { 1, 4 }, { 1, 0 } }, 0, 48, "NEGX.z d[!Areg]"}, -{ 16576, 6, {13,13,13,14,14,14,0,0,0,0,0,0,0,0,0,0}, 65472, 0, 1, { { 0, 1 }, { 0, 1 }, { 0, 1 }, { 0, 1 }, { 0, 1 } }, 4, 16, "MVSR2.W d[!Areg]"}, -{ 16896, 8, {17,17,13,13,13,14,14,14,0,0,0,0,0,0,0,0}, 65280, 0, 0, { { 1, 1 }, { 1, 2 }, { 1, 3 }, { 1, 2 }, { 1, 2 } }, 0, 32, "CLR.z d[!Areg]"}, -{ 17088, 6, {13,13,13,14,14,14,0,0,0,0,0,0,0,0,0,0}, 65472, 1, 0, { { 0, 1 }, { 0, 1 }, { 0, 1 }, { 0, 1 }, { 0, 1 } }, 0, 16, "MVSR2.B d[!Areg]"}, -{ 17408, 8, {17,17,13,13,13,14,14,14,0,0,0,0,0,0,0,0}, 65280, 0, 0, { { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 } }, 0, 48, "NEG.z d[!Areg]"}, -{ 17600, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 0, 0, { { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 } }, 0, 16, "MV2SR.B s[!Areg]"}, -{ 17920, 8, {17,17,13,13,13,14,14,14,0,0,0,0,0,0,0,0}, 65280, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 2 } }, 0, 48, "NOT.z d[!Areg]"}, -{ 18112, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 0, 2, { { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 } }, 4, 16, "MV2SR.W s[!Areg]"}, -{ 18440, 3, {15,15,15,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65528, 2, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 49, "LINK.L Ar,#2"}, -{ 18432, 6, {13,13,13,14,14,14,0,0,0,0,0,0,0,0,0,0}, 65472, 0, 0, { { 0, 0 }, { 1, 5 }, { 0, 0 }, { 1, 5 }, { 1, 0 } }, 0, 48, "NBCD.B d[!Areg]"}, -{ 18504, 3, {9,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65528, 2, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 4, 16, "BKPT #k"}, -{ 18496, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 2 } }, 0, 48, "SWAP.W s[Dreg]"}, -{ 18496, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 0, "PEA.L s[!Dreg,Areg,Aipi,Apdi,Immd]"}, -{ 18560, 6, {13,13,13,14,14,14,0,0,0,0,0,0,0,0,0,0}, 65472, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 2 } }, 0, 48, "EXT.W d[Dreg]"}, -{ 18560, 6, {13,13,13,14,14,14,0,0,0,0,0,0,0,0,0,0}, 65472, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 2, "MVMLE.W #1,d[!Dreg,Areg,Aipi]"}, -{ 18624, 6, {13,13,13,14,14,14,0,0,0,0,0,0,0,0,0,0}, 65472, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 2 } }, 0, 48, "EXT.L d[Dreg]"}, -{ 18624, 6, {13,13,13,14,14,14,0,0,0,0,0,0,0,0,0,0}, 65472, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 2, "MVMLE.L #1,d[!Dreg,Areg,Aipi]"}, -{ 18880, 6, {13,13,13,14,14,14,0,0,0,0,0,0,0,0,0,0}, 65472, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 2 } }, 0, 48, "EXT.B d[Dreg]"}, -{ 18944, 8, {17,17,11,11,11,12,12,12,0,0,0,0,0,0,0,0}, 65280, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 2 } }, 0, 16, "TST.z s"}, -{ 19136, 6, {13,13,13,14,14,14,0,0,0,0,0,0,0,0,0,0}, 65472, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 2 } }, 0, 48, "TAS.B d[!Areg]"}, -{ 19196, 0, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65535, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 4, 0, "ILLEGAL"}, -{ 19456, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 2, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 } }, 0, 19, "MULL.L #1,s[!Areg]"}, -{ 19520, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 2, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 2 } }, 4, 19, "DIVL.L #1,s[!Areg]"}, -{ 19584, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 1, "MVMEL.W #1,s[!Dreg,Areg,Apdi,Immd]"}, -{ 19648, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 1, "MVMEL.L #1,s[!Dreg,Areg,Apdi,Immd]"}, -{ 20032, 4, {8,8,8,8,0,0,0,0,0,0,0,0,0,0,0,0}, 65520, 0, 0, { { 0, 1 }, { 0, 1 }, { 0, 1 }, { 0, 1 }, { 0, 1 } }, 0, 16, "TRAP #J"}, -{ 20048, 3, {15,15,15,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65528, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 49, "LINK.W Ar,#1"}, -{ 20056, 3, {15,15,15,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65528, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 48, "UNLK.L Ar"}, -{ 20064, 3, {15,15,15,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65528, 0, 2, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 4, 16, "MVR2USP.L Ar"}, -{ 20072, 3, {15,15,15,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65528, 0, 2, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 4, 32, "MVUSP2R.L Ar"}, -{ 20080, 0, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65535, 0, 2, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 4, 0, "RESET"}, -{ 20081, 0, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65535, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 0, "NOP"}, -{ 20082, 0, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65535, 0, 2, { { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 } }, 4, 16, "STOP #1"}, -{ 20083, 0, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65535, 0, 2, { { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 } }, 7, 0, "RTE"}, -{ 20084, 0, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65535, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 3, 16, "RTD #1"}, -{ 20085, 0, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65535, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 3, 0, "RTS"}, -{ 20086, 0, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65535, 0, 0, { { 0, 1 }, { 0, 1 }, { 0, 1 }, { 0, 1 }, { 0, 1 } }, 4, 0, "TRAPV"}, -{ 20087, 0, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65535, 0, 0, { { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 } }, 3, 0, "RTR"}, -{ 20090, 0, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65535, 1, 2, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 4, 16, "MOVEC2 #1"}, -{ 20091, 0, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65535, 1, 2, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 4, 16, "MOVE2C #1"}, -{ 20096, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 2, 128, "JSR.L s[!Dreg,Areg,Aipi,Apdi,Immd]"}, -{ 16640, 9, {15,15,15,11,11,11,12,12,12,0,0,0,0,0,0,0}, 61888, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 5 }, { 1, 5 }, { 1, 5 } }, 4, 17, "CHK.L s[!Areg],Dr"}, -{ 16768, 9, {15,15,15,11,11,11,12,12,12,0,0,0,0,0,0,0}, 61888, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 5 }, { 1, 5 }, { 1, 5 } }, 4, 17, "CHK.W s[!Areg],Dr"}, -{ 20160, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 2, 128, "JMP.L s[!Dreg,Areg,Aipi,Apdi,Immd]"}, -{ 16832, 9, {15,15,15,11,11,11,12,12,12,0,0,0,0,0,0,0}, 61888, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 2, "LEA.L s[!Dreg,Areg,Aipi,Apdi,Immd],Ar"}, -{ 20544, 9, {7,7,7,13,13,13,14,14,14,0,0,0,0,0,0,0}, 61888, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 19, "ADDA.W #j,d[Areg]"}, -{ 20608, 9, {7,7,7,13,13,13,14,14,14,0,0,0,0,0,0,0}, 61888, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 19, "ADDA.L #j,d[Areg]"}, -{ 20480, 11, {7,7,7,17,17,13,13,13,14,14,14,0,0,0,0,0}, 61696, 0, 0, { { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 } }, 0, 19, "ADD.z #j,d[!Areg]"}, -{ 20800, 9, {7,7,7,13,13,13,14,14,14,0,0,0,0,0,0,0}, 61888, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 19, "SUBA.W #j,d[Areg]"}, -{ 20864, 9, {7,7,7,13,13,13,14,14,14,0,0,0,0,0,0,0}, 61888, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 19, "SUBA.L #j,d[Areg]"}, -{ 20736, 11, {7,7,7,17,17,13,13,13,14,14,14,0,0,0,0,0}, 61696, 0, 0, { { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 } }, 0, 19, "SUB.z #j,d[!Areg]"}, -{ 20680, 7, {2,2,2,2,15,15,15,0,0,0,0,0,0,0,0,0}, 61688, 0, 0, { { 1, 1 }, { 3, 1 }, { 3, 1 }, { 3, 1 }, { 3, 1 } }, 1, 49, "DBcc.W Dr,#1"}, -{ 20672, 10, {2,2,2,2,13,13,13,14,14,14,0,0,0,0,0,0}, 61632, 0, 0, { { 1, 1 }, { 3, 1 }, { 3, 1 }, { 3, 1 }, { 3, 1 } }, 0, 32, "Scc.B d[!Areg]"}, -{ 20730, 4, {2,2,2,2,0,0,0,0,0,0,0,0,0,0,0,0}, 61695, 2, 0, { { 1, 1 }, { 3, 1 }, { 3, 1 }, { 3, 1 }, { 3, 1 } }, 4, 16, "TRAPcc #1"}, -{ 20731, 4, {2,2,2,2,0,0,0,0,0,0,0,0,0,0,0,0}, 61695, 2, 0, { { 1, 1 }, { 3, 1 }, { 3, 1 }, { 3, 1 }, { 3, 1 } }, 4, 16, "TRAPcc #2"}, -{ 20732, 4, {2,2,2,2,0,0,0,0,0,0,0,0,0,0,0,0}, 61695, 2, 0, { { 1, 1 }, { 3, 1 }, { 3, 1 }, { 3, 1 }, { 3, 1 } }, 4, 0, "TRAPcc"}, -{ 24832, 0, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65535, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 1, 64, "BSR.W #1"}, -{ 24832, 8, {6,6,6,6,6,6,6,6,0,0,0,0,0,0,0,0}, 65280, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 1, 64, "BSR.B #i"}, -{ 25087, 0, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65535, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 1, 64, "BSR.L #2"}, -{ 24576, 4, {3,3,3,3,0,0,0,0,0,0,0,0,0,0,0,0}, 61695, 0, 0, { { 1, 1 }, { 3, 1 }, { 3, 1 }, { 3, 1 }, { 3, 1 } }, 1, 64, "Bcc.W #1"}, -{ 24576, 12, {3,3,3,3,6,6,6,6,6,6,6,6,0,0,0,0}, 61440, 0, 0, { { 1, 1 }, { 3, 1 }, { 3, 1 }, { 3, 1 }, { 3, 1 } }, 1, 64, "Bcc.B #i"}, -{ 24831, 4, {3,3,3,3,0,0,0,0,0,0,0,0,0,0,0,0}, 61695, 0, 0, { { 1, 1 }, { 3, 1 }, { 3, 1 }, { 3, 1 }, { 3, 1 } }, 1, 64, "Bcc.L #2"}, -{ 28672, 11, {15,15,15,5,5,5,5,5,5,5,5,0,0,0,0,0}, 61696, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 2 } }, 0, 18, "MOVE.L #i,Dr"}, -{ 32768, 11, {15,15,15,17,17,11,11,11,12,12,12,0,0,0,0,0}, 61696, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 2 } }, 0, 19, "OR.z s[!Areg],Dr"}, -{ 32960, 9, {15,15,15,11,11,11,12,12,12,0,0,0,0,0,0,0}, 61888, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 2 } }, 4, 19, "DIVU.W s[!Areg],Dr"}, -{ 33024, 9, {15,15,15,13,13,13,14,14,14,0,0,0,0,0,0,0}, 61888, 0, 0, { { 0, 0 }, { 1, 4 }, { 0, 0 }, { 1, 4 }, { 1, 0 } }, 0, 19, "SBCD.B d[Dreg],Dr"}, -{ 33024, 9, {15,15,15,13,13,13,14,14,14,0,0,0,0,0,0,0}, 61888, 0, 0, { { 0, 0 }, { 1, 4 }, { 0, 0 }, { 1, 4 }, { 1, 0 } }, 0, 19, "SBCD.B d[Areg-Apdi],Arp"}, -{ 33024, 11, {15,15,15,17,17,13,13,13,14,14,14,0,0,0,0,0}, 61696, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 2 } }, 0, 19, "OR.z Dr,d[!Areg,Dreg]"}, -{ 33088, 9, {15,15,15,13,13,13,14,14,14,0,0,0,0,0,0,0}, 61888, 2, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 18, "PACK d[Dreg],Dr"}, -{ 33088, 9, {15,15,15,13,13,13,14,14,14,0,0,0,0,0,0,0}, 61888, 2, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 18, "PACK d[Areg-Apdi],Arp"}, -{ 33152, 9, {15,15,15,13,13,13,14,14,14,0,0,0,0,0,0,0}, 61888, 2, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 18, "UNPK d[Dreg],Dr"}, -{ 33152, 9, {15,15,15,13,13,13,14,14,14,0,0,0,0,0,0,0}, 61888, 2, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 18, "UNPK d[Areg-Apdi],Arp"}, -{ 33216, 9, {15,15,15,11,11,11,12,12,12,0,0,0,0,0,0,0}, 61888, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 2 } }, 4, 19, "DIVS.W s[!Areg],Dr"}, -{ 36864, 11, {15,15,15,17,17,11,11,11,12,12,12,0,0,0,0,0}, 61696, 0, 0, { { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 } }, 0, 19, "SUB.z s,Dr"}, -{ 37056, 9, {15,15,15,11,11,11,12,12,12,0,0,0,0,0,0,0}, 61888, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 19, "SUBA.W s,Ar"}, -{ 37120, 11, {15,15,15,17,17,13,13,13,14,14,14,0,0,0,0,0}, 61696, 0, 0, { { 0, 0 }, { 1, 0 }, { 0, 0 }, { 1, 0 }, { 1, 0 } }, 0, 19, "SUBX.z d[Dreg],Dr"}, -{ 37120, 11, {15,15,15,17,17,13,13,13,14,14,14,0,0,0,0,0}, 61696, 0, 0, { { 0, 0 }, { 1, 0 }, { 0, 0 }, { 1, 0 }, { 1, 0 } }, 0, 19, "SUBX.z d[Areg-Apdi],Arp"}, -{ 37120, 11, {15,15,15,17,17,13,13,13,14,14,14,0,0,0,0,0}, 61696, 0, 0, { { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 } }, 0, 19, "SUB.z Dr,d[!Areg,Dreg]"}, -{ 37312, 9, {15,15,15,11,11,11,12,12,12,0,0,0,0,0,0,0}, 61888, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 19, "SUBA.L s,Ar"}, -{ 45056, 11, {15,15,15,17,17,11,11,11,12,12,12,0,0,0,0,0}, 61696, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 } }, 0, 17, "CMP.z s,Dr"}, -{ 45248, 9, {15,15,15,11,11,11,12,12,12,0,0,0,0,0,0,0}, 61888, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 } }, 0, 17, "CMPA.W s,Ar"}, -{ 45504, 9, {15,15,15,11,11,11,12,12,12,0,0,0,0,0,0,0}, 61888, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 } }, 0, 17, "CMPA.L s,Ar"}, -{ 45312, 11, {15,15,15,17,17,13,13,13,14,14,14,0,0,0,0,0}, 61696, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 } }, 0, 17, "CMPM.z d[Areg-Aipi],ArP"}, -{ 45312, 11, {15,15,15,17,17,13,13,13,14,14,14,0,0,0,0,0}, 61696, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 2 } }, 0, 19, "EOR.z Dr,d[!Areg]"}, -{ 49152, 11, {15,15,15,17,17,11,11,11,12,12,12,0,0,0,0,0}, 61696, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 2 } }, 0, 19, "AND.z s[!Areg],Dr"}, -{ 49344, 9, {15,15,15,11,11,11,12,12,12,0,0,0,0,0,0,0}, 61888, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 2 } }, 0, 19, "MULU.W s[!Areg],Dr"}, -{ 49408, 9, {15,15,15,13,13,13,14,14,14,0,0,0,0,0,0,0}, 61888, 0, 0, { { 0, 0 }, { 1, 4 }, { 0, 0 }, { 1, 4 }, { 1, 0 } }, 0, 19, "ABCD.B d[Dreg],Dr"}, -{ 49408, 9, {15,15,15,13,13,13,14,14,14,0,0,0,0,0,0,0}, 61888, 0, 0, { { 0, 0 }, { 1, 4 }, { 0, 0 }, { 1, 4 }, { 1, 0 } }, 0, 19, "ABCD.B d[Areg-Apdi],Arp"}, -{ 49408, 11, {15,15,15,17,17,13,13,13,14,14,14,0,0,0,0,0}, 61696, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 2 } }, 0, 19, "AND.z Dr,d[!Areg,Dreg]"}, -{ 49472, 9, {15,15,15,13,13,13,14,14,14,0,0,0,0,0,0,0}, 61888, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 51, "EXG.L Dr,d[Dreg]"}, -{ 49472, 9, {15,15,15,13,13,13,14,14,14,0,0,0,0,0,0,0}, 61888, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 51, "EXG.L Ar,d[Areg]"}, -{ 49536, 9, {15,15,15,13,13,13,14,14,14,0,0,0,0,0,0,0}, 61888, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 51, "EXG.L Dr,d[Areg]"}, -{ 49600, 9, {15,15,15,11,11,11,12,12,12,0,0,0,0,0,0,0}, 61888, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 2 } }, 0, 19, "MULS.W s[!Areg],Dr"}, -{ 53248, 11, {15,15,15,17,17,11,11,11,12,12,12,0,0,0,0,0}, 61696, 0, 0, { { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 } }, 0, 19, "ADD.z s,Dr"}, -{ 53440, 9, {15,15,15,11,11,11,12,12,12,0,0,0,0,0,0,0}, 61888, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 19, "ADDA.W s,Ar"}, -{ 53504, 11, {15,15,15,17,17,13,13,13,14,14,14,0,0,0,0,0}, 61696, 0, 0, { { 0, 0 }, { 1, 0 }, { 0, 0 }, { 1, 0 }, { 1, 0 } }, 0, 19, "ADDX.z d[Dreg],Dr"}, -{ 53504, 11, {15,15,15,17,17,13,13,13,14,14,14,0,0,0,0,0}, 61696, 0, 0, { { 0, 0 }, { 1, 0 }, { 0, 0 }, { 1, 0 }, { 1, 0 } }, 0, 19, "ADDX.z d[Areg-Apdi],Arp"}, -{ 53504, 11, {15,15,15,17,17,13,13,13,14,14,14,0,0,0,0,0}, 61696, 0, 0, { { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 } }, 0, 19, "ADD.z Dr,d[!Areg,Dreg]"}, -{ 53696, 9, {15,15,15,11,11,11,12,12,12,0,0,0,0,0,0,0}, 61888, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 19, "ADDA.L s,Ar"}, -{ 57344, 9, {7,7,7,4,17,17,16,16,16,0,0,0,0,0,0,0}, 61496, 0, 0, { { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 } }, 0, 19, "ASf.z #j,DR"}, -{ 57352, 9, {7,7,7,4,17,17,16,16,16,0,0,0,0,0,0,0}, 61496, 0, 0, { { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 0 } }, 0, 19, "LSf.z #j,DR"}, -{ 57360, 9, {7,7,7,4,17,17,16,16,16,0,0,0,0,0,0,0}, 61496, 0, 0, { { 0, 0 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 0 } }, 0, 19, "ROXf.z #j,DR"}, -{ 57368, 9, {7,7,7,4,17,17,16,16,16,0,0,0,0,0,0,0}, 61496, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 0 } }, 0, 19, "ROf.z #j,DR"}, -{ 57376, 9, {15,15,15,4,17,17,16,16,16,0,0,0,0,0,0,0}, 61496, 0, 0, { { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 } }, 0, 19, "ASf.z Dr,DR"}, -{ 57384, 9, {15,15,15,4,17,17,16,16,16,0,0,0,0,0,0,0}, 61496, 0, 0, { { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 0 } }, 0, 19, "LSf.z Dr,DR"}, -{ 57392, 9, {15,15,15,4,17,17,16,16,16,0,0,0,0,0,0,0}, 61496, 0, 0, { { 0, 0 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 0 } }, 0, 19, "ROXf.z Dr,DR"}, -{ 57400, 9, {15,15,15,4,17,17,16,16,16,0,0,0,0,0,0,0}, 61496, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 0 } }, 0, 19, "ROf.z Dr,DR"}, -{ 57536, 7, {4,13,13,13,14,14,14,0,0,0,0,0,0,0,0,0}, 65216, 0, 0, { { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 0 } }, 0, 19, "ASfW.W d[!Dreg,Areg]"}, -{ 58048, 7, {4,13,13,13,14,14,14,0,0,0,0,0,0,0,0,0}, 65216, 0, 0, { { 1, 0 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 0 } }, 0, 19, "LSfW.W d[!Dreg,Areg]"}, -{ 58560, 7, {4,13,13,13,14,14,14,0,0,0,0,0,0,0,0,0}, 65216, 0, 0, { { 0, 0 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 0 } }, 0, 19, "ROXfW.W d[!Dreg,Areg]"}, -{ 59072, 7, {4,13,13,13,14,14,14,0,0,0,0,0,0,0,0,0}, 65216, 0, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 0 } }, 0, 19, "ROfW.W d[!Dreg,Areg]"}, -{ 59584, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 2, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 2 } }, 0, 17, "BFTST #1,s[!Areg,Apdi,Aipi,Immd]"}, -{ 59840, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 2, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 2 } }, 0, 17, "BFEXTU #1,s[!Areg,Apdi,Aipi,Immd]"}, -{ 60096, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 2, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 2 } }, 0, 19, "BFCHG #1,s[!Areg,Apdi,Aipi,Immd,PC8r,PC16]"}, -{ 60352, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 2, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 2 } }, 0, 17, "BFEXTS #1,s[!Areg,Apdi,Aipi,Immd]"}, -{ 60608, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 2, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 2 } }, 0, 19, "BFCLR #1,s[!Areg,Apdi,Aipi,Immd,PC8r,PC16]"}, -{ 60864, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 2, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 2 } }, 0, 17, "BFFFO #1,s[!Areg,Apdi,Aipi,Immd]"}, -{ 61120, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 2, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 2 } }, 0, 19, "BFSET #1,s[!Areg,Apdi,Aipi,Immd,PC8r,PC16]"}, -{ 61376, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 2, 0, { { 1, 1 }, { 1, 0 }, { 1, 0 }, { 1, 2 }, { 1, 2 } }, 0, 19, "BFINS #1,s[!Areg,Apdi,Aipi,Immd,PC8r,PC16]"}, -{ 61952, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 3, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 17, "FPP #1,s"}, -{ 62016, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 3, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 1, 17, "FDBcc #1,s[Areg-Dreg]"}, -{ 62016, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 3, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 17, "FScc #1,s[!Areg,Immd,PC8r,PC16]"}, -{ 62074, 0, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65535, 3, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 4, 16, "FTRAPcc #1"}, -{ 62075, 0, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65535, 3, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 4, 16, "FTRAPcc #2"}, -{ 62076, 0, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65535, 3, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 4, 0, "FTRAPcc"}, -{ 62080, 6, {10,10,10,10,10,10,0,0,0,0,0,0,0,0,0,0}, 65472, 3, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 1, 17, "FBcc #K,#1"}, -{ 62144, 6, {10,10,10,10,10,10,0,0,0,0,0,0,0,0,0,0}, 65472, 3, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 1, 17, "FBcc #K,#2"}, -{ 62208, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 3, 2, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 32, "FSAVE s[!Dreg,Areg,Aipi,Immd,PC8r,PC16]"}, -{ 62272, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 3, 2, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 16, "FRESTORE s[!Dreg,Areg,Apdi,Immd]"}, -{ 62720, 8, {5,5,5,5,5,12,12,12,0,0,0,0,0,0,0,0}, 65280, 4, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 4, 17, "MMUOP #i,s"}, -{ 62472, 5, {19,19,15,15,15,0,0,0,0,0,0,0,0,0,0,0}, 65336, 4, 2, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 4, 2, "CINVL #p,Ar"}, -{ 62480, 5, {19,19,15,15,15,0,0,0,0,0,0,0,0,0,0,0}, 65336, 4, 2, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 4, 2, "CINVP #p,Ar"}, -{ 62488, 5, {19,19,15,15,15,0,0,0,0,0,0,0,0,0,0,0}, 65336, 4, 2, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 4, 0, "CINVA #p"}, -{ 62504, 5, {19,19,15,15,15,0,0,0,0,0,0,0,0,0,0,0}, 65336, 4, 2, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 4, 2, "CPUSHL #p,Ar"}, -{ 62512, 5, {19,19,15,15,15,0,0,0,0,0,0,0,0,0,0,0}, 65336, 4, 2, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 4, 2, "CPUSHP #p,Ar"}, -{ 62520, 5, {19,19,15,15,15,0,0,0,0,0,0,0,0,0,0,0}, 65336, 4, 2, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 4, 0, "CPUSHA #p"}, -{ 63008, 3, {15,15,15,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65528, 4, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 18, "MOVE16 ArP,AxP"}, -{ 62976, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 4, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 18, "MOVE16 s[Dreg-Aipi],L"}, -{ 62976, 6, {13,13,13,14,14,14,0,0,0,0,0,0,0,0,0,0}, 65472, 4, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 18, "MOVE16 L,d[Areg-Aipi]"}, -{ 62976, 6, {11,11,11,12,12,12,0,0,0,0,0,0,0,0,0,0}, 65472, 4, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 18, "MOVE16 s[Aind],L"}, -{ 62976, 6, {13,13,13,14,14,14,0,0,0,0,0,0,0,0,0,0}, 65472, 4, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 0, 18, "MOVE16 L,d[Aipi-Aind]"}, -{ 28928, 0, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, 65535, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 3, 0, "EMULOP_RETURN"}, -{ 28928, 8, {18,18,18,18,18,18,18,18,0,0,0,0,0,0,0,0}, 65280, 0, 0, { { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 }, { 1, 1 } }, 2, 16, "EMULOP #E"}}; -int n_defs68k = 181; diff --git a/BasiliskII/src/uae_cpu/osx_generate_files.sh b/BasiliskII/src/uae_cpu/osx_generate_files.sh deleted file mode 100755 index 3f6da3ce..00000000 --- a/BasiliskII/src/uae_cpu/osx_generate_files.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/bash -e - -# -# osx_generate_files.sh -# -# Generates files for 68k emulation, via UAE's virtual cpu, for use on Mac OS X hosts -# - -SCRIPT_DIRNAME="$(cd $(dirname $0) && pwd)" -cd "$SCRIPT_DIRNAME" - -echo "build68k: compiling" -clang build68k.c -o build68k -I ../MacOSX/ -I ../Unix/ - -echo "build68k: running" -cat table68k | ./build68k > ./defs68k.c - -echo "gencpu: compiling" -clang gencpu.c ./defs68k.c readcpu.cpp -o gencpu -I . -I ../MacOSX/ -I ../Unix/ - -echo "gencpu: running" -./gencpu