diff --git a/README.md b/README.md index 879b80a..de771b9 100644 --- a/README.md +++ b/README.md @@ -164,6 +164,11 @@ are appreciated. It really is keeping me motivated to continue development. ## Changelog +### V0.9 (unreleased) + +- Maintenance. Updated all dependencies to the latest versions. +- Bugfix: Fixed condition code for `asr/lsr/lsl`, which is has a different behaviour for V flag than `asl`. + ### V0.8 (15-Oct-21) - New: Support for MC68020+ addressing modes! However, MC68020+ specific instructions have not been added yet. diff --git a/build.gradle b/build.gradle index 61cc9e0..ba788dc 100644 --- a/build.gradle +++ b/build.gradle @@ -1,13 +1,13 @@ plugins { id 'java' - id 'org.jetbrains.intellij' version '1.1.6' - id 'org.jetbrains.kotlin.jvm' version '1.5.21' + id 'org.jetbrains.intellij' version '1.4.0' + id 'org.jetbrains.kotlin.jvm' version '1.6.20' id 'jacoco' id 'com.github.kt3k.coveralls' version '2.12.0' } group = 'de.platon42' -version = '0.8' +version = '0.9' sourceCompatibility = "1.8" targetCompatibility = "1.8" @@ -22,9 +22,9 @@ repositories { dependencies { implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk8' - testImplementation "org.assertj:assertj-core:3.21.0" - testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.1' - testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1' + testImplementation "org.assertj:assertj-core:3.22.0" + testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.2' + testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.2' testImplementation "org.jetbrains.kotlin:kotlin-test" testImplementation "org.jetbrains.kotlin:kotlin-reflect" // testImplementation "org.jetbrains.kotlin:kotlin-test-junit" @@ -42,31 +42,26 @@ compileTestKotlin { } intellij { - setVersion("2021.2.2") // LATEST-EAP-SNAPSHOT + setVersion("2021.3.3") // LATEST-EAP-SNAPSHOT setUpdateSinceUntilBuild(false) // setPlugins(["com.intellij.java"]) } runPluginVerifier { - ideVersions = ["IC-203.6682.168", "IC-212.5457.46", // 2020.3 - 2021.2.3 - "CL-203.5981.166", "CL-203.8084.11", // 2020.3 - "CL-211.6693.114", "CL-211.7628.27", // 2021.1 - "CL-212.4746.93", "CL-212.5284.51"] // 2021.2 - 2021.2.2 + ideVersions = ["IC-203.6682.168", "IC-213.7172.25", // 2020.3 - 2021.3.3 + "CL-203.8084.11", // 2020.3 + "CL-211.7628.27", // 2021.1 + "CL-212.5712.21", // 2021.2 + "CL-213.7172.20"] // 2021.3.4 downloadDir = System.getProperty("user.home") + "/.gradle/caches/modules-2/files-2.1/com.jetbrains.intellij.idea/verifier" } patchPluginXml { setChangeNotes(""" -

I still got zero feedback and zero ratings :-(

-

V0.8 (15-Oct-21)

+

V0.9 (07-Apr-22)

Full changelog available at Github project site.

""") diff --git a/src/main/java/de/platon42/intellij/plugins/m68k/asm/M68kIsa.kt b/src/main/java/de/platon42/intellij/plugins/m68k/asm/M68kIsa.kt index 850f319..d2196c2 100644 --- a/src/main/java/de/platon42/intellij/plugins/m68k/asm/M68kIsa.kt +++ b/src/main/java/de/platon42/intellij/plugins/m68k/asm/M68kIsa.kt @@ -307,7 +307,7 @@ object M68kIsa { ) ) - private val ASD_LSD_MODES = listOf( + private val ASL_MODES = listOf( AllowedAdrMode(DREG_ONLY, DREG_ONLY, modInfo = RWM_READ_OP1_OPSIZE or RWM_MODIFY_OP2_OPSIZE, affectedCc = cc("*****")), AllowedAdrMode(setOf(AddressMode.IMMEDIATE_DATA), DREG_ONLY, modInfo = RWM_MODIFY_OP2_OPSIZE, affectedCc = cc("*****")), AllowedAdrMode(INDIRECT_MODES, null, size = OP_SIZE_W, modInfo = RWM_MODIFY_OP1_OPSIZE, affectedCc = cc("*****")), @@ -315,6 +315,14 @@ object M68kIsa { AllowedAdrMode(DREG_ONLY, null, modInfo = RWM_MODIFY_OP1_OPSIZE, affectedCc = cc("*****")) ) + private val ASR_LSD_MODES = listOf( + AllowedAdrMode(DREG_ONLY, DREG_ONLY, modInfo = RWM_READ_OP1_OPSIZE or RWM_MODIFY_OP2_OPSIZE, affectedCc = cc("***0*")), + AllowedAdrMode(setOf(AddressMode.IMMEDIATE_DATA), DREG_ONLY, modInfo = RWM_MODIFY_OP2_OPSIZE, affectedCc = cc("***0*")), + AllowedAdrMode(INDIRECT_MODES, null, size = OP_SIZE_W, modInfo = RWM_MODIFY_OP1_OPSIZE, affectedCc = cc("***0*")), + // not an official address mode, but supported by assembler (implicit #1) + AllowedAdrMode(DREG_ONLY, null, modInfo = RWM_MODIFY_OP1_OPSIZE, affectedCc = cc("***0*")) + ) + private val ROD_MODES = listOf( AllowedAdrMode(DREG_ONLY, DREG_ONLY, modInfo = RWM_READ_OP1_OPSIZE or RWM_MODIFY_OP2_OPSIZE, affectedCc = cc("-**0*")), AllowedAdrMode(setOf(AddressMode.IMMEDIATE_DATA), DREG_ONLY, modInfo = RWM_MODIFY_OP2_OPSIZE, affectedCc = cc("-**0*")), @@ -761,10 +769,10 @@ object M68kIsa { ), // Shift and Rotate Instructions - IsaData("asl", "Arithmetic Shift Left", modes = ASD_LSD_MODES), - IsaData("asr", "Arithmetic Shift Right", modes = ASD_LSD_MODES), - IsaData("lsl", "Logical Shift Left", modes = ASD_LSD_MODES), - IsaData("lsr", "Logical Shift Right", modes = ASD_LSD_MODES), + IsaData("asl", "Arithmetic Shift Left", modes = ASL_MODES), + IsaData("asr", "Arithmetic Shift Right", modes = ASR_LSD_MODES), + IsaData("lsl", "Logical Shift Left", modes = ASR_LSD_MODES), + IsaData("lsr", "Logical Shift Right", modes = ASR_LSD_MODES), IsaData("rol", "Rotate Left", modes = ROD_MODES), IsaData("ror", "Rotate Right", modes = ROD_MODES), IsaData("roxl", "Rotate with Extend Left", modes = ROXD_MODES),