From 5bc3fbf661b895e665f7a07eb5b43d25bad83ad1 Mon Sep 17 00:00:00 2001 From: "Jose A. Ortega Ruiz" Date: Fri, 16 Oct 2020 18:56:46 +0100 Subject: [PATCH] mixal-mode: add missed instructions Synchronises with latest released GNU MDK 1.2.11 * mixal-mode.el (mixal-operation-codes-alist): Add missed instructions: SLB,SRB,JAE,JAO,JXE,JXO --- lisp/progmodes/mixal-mode.el | 42 ++++++++++++++++++++++++++++++++---- 1 file changed, 38 insertions(+), 4 deletions(-) diff --git a/lisp/progmodes/mixal-mode.el b/lisp/progmodes/mixal-mode.el index 468c116b67..9354af2085 100644 --- a/lisp/progmodes/mixal-mode.el +++ b/lisp/progmodes/mixal-mode.el @@ -5,7 +5,7 @@ ;; Author: Pieter E.J. Pareit ;; Maintainer: emacs-devel@gnu.org ;; Created: 09 Nov 2002 -;; Version: 0.1 +;; Version: 0.4 ;; Keywords: languages, Knuth, mix, mixal, asm, mixvm, The Art Of Computer Programming ;; This file is part of GNU Emacs. @@ -45,6 +45,9 @@ ;; Have fun. ;;; History: +;; Version 0.4: +;; 16/10/20: Jose A Ortega Ruiz +;; Add missed instructions: SLB,SRB,JAE,JAO,JXE,JXO ;; Version 0.3: ;; 12/10/05: Stefan Monnier ;; Use font-lock-syntactic-keywords to detect/mark comments. @@ -683,6 +686,18 @@ mixal-operation-codes-alist been executed when there was no jump." 1) + (JAE jump "jump A even" 40 + "Jump if the content of rA is even. +Register J is set to the value of the next instruction that would have +been executed when there was no jump." + 1) + + (JAO jump "jump A odd" 40 + "Jump if the content of rA is odd. +Register J is set to the value of the next instruction that would have +been executed when there was no jump." + 1) + (JXN jump "jump X negative" 47 "Jump if the content of rX is negative. Register J is set to the value of the next instruction that would have @@ -719,12 +734,24 @@ mixal-operation-codes-alist been executed when there was no jump." 1) - (J1N jump "jump I1 negative" 41 - "Jump if the content of rI1 is negative. + (JXE jump "jump X even" 47 + "Jump if the content of rX is even. +Register J is set to the value of the next instruction that would have +been executed when there was no jump." + 1) + + (JXO jump "jump X odd" 47 + "Jump if the content of rX is odd. Register J is set to the value of the next instruction that would have been executed when there was no jump." 1) + (J1N jump "jump I1 negative" 41 + "Jump if the content of rI1 is negative. +Register J is set to the value of the next instruction that would have +been executed when there was no jump." + 1) + (J1Z jump "jump I1 zero" 41 "Jump if the content of rI1 is zero. Register J is set to the value of the next instruction that would have @@ -950,7 +977,6 @@ mixal-operation-codes-alist Zeros will be added to the right." 2) - (SRAX miscellaneous "shift right AX" 6 "Shift AX, M bytes right. Zeros will be added to the left." @@ -966,6 +992,14 @@ mixal-operation-codes-alist The bytes that fall off to the right will be added to the left." 2) + (SLB miscellaneous "shift left AX binary" 6 + "Shift AX, M binary places left." + 2) + + (SRB miscellaneous "shift right AX binary" 6 + "Shift AX, M binary places right." + 2) + (MOVE miscellaneous "move" 7 number "Move MOD words from M to the location stored in rI1." (+ 1 (* 2 number))) -- 2.28.0