11da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/* 21da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * Instruction formats for the sequencer program downloaded to 31da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * Aic7xxx SCSI host adapters 41da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * 51da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * Copyright (c) 1997, 1998, 2000 Justin T. Gibbs. 61da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * All rights reserved. 71da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * 81da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * Redistribution and use in source and binary forms, with or without 91da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * modification, are permitted provided that the following conditions 101da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * are met: 111da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * 1. Redistributions of source code must retain the above copyright 121da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * notice, this list of conditions, and the following disclaimer, 131da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * without modification. 141da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * 2. Redistributions in binary form must reproduce at minimum a disclaimer 151da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * substantially similar to the "NO WARRANTY" disclaimer below 161da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * ("Disclaimer") and any redistribution must be conditioned upon 171da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * including a substantially similar Disclaimer requirement for further 181da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * binary redistribution. 191da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * 3. Neither the names of the above-listed copyright holders nor the names 201da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * of any contributors may be used to endorse or promote products derived 211da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * from this software without specific prior written permission. 221da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * 231da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * Alternatively, this software may be distributed under the terms of the 241da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * GNU General Public License ("GPL") version 2 as published by the Free 251da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * Software Foundation. 261da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * 271da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * NO WARRANTY 281da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 291da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 301da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR 311da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 321da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 331da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 341da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 351da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 361da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING 371da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 381da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * POSSIBILITY OF SUCH DAMAGES. 391da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * 402628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke * $Id: //depot/aic7xxx/aic7xxx/aicasm/aicasm_insformat.h#12 $ 411da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * 421da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * $FreeBSD$ 431da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds */ 441da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 45f7c80c9f77b0e8a59a19506fd3caf323408a5166Olaf Hering#include <asm/byteorder.h> 46f7c80c9f77b0e8a59a19506fd3caf323408a5166Olaf Hering 472628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke/* 8bit ALU logic operations */ 481da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsstruct ins_format1 { 49f7c80c9f77b0e8a59a19506fd3caf323408a5166Olaf Hering#ifdef __LITTLE_ENDIAN 501da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds uint32_t immediate : 8, 511da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds source : 9, 521da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds destination : 9, 531da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds ret : 1, 541da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds opcode : 4, 551da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds parity : 1; 561da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#else 571da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds uint32_t parity : 1, 581da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds opcode : 4, 591da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds ret : 1, 601da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds destination : 9, 611da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds source : 9, 621da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds immediate : 8; 631da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#endif 641da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds}; 651da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 662628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke/* 8bit ALU shift/rotate operations */ 671da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsstruct ins_format2 { 68f7c80c9f77b0e8a59a19506fd3caf323408a5166Olaf Hering#ifdef __LITTLE_ENDIAN 691da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds uint32_t shift_control : 8, 701da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds source : 9, 711da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds destination : 9, 721da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds ret : 1, 731da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds opcode : 4, 741da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds parity : 1; 751da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#else 761da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds uint32_t parity : 1, 771da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds opcode : 4, 781da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds ret : 1, 791da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds destination : 9, 801da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds source : 9, 811da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds shift_control : 8; 821da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#endif 831da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds}; 841da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 852628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke/* 8bit branch control operations */ 861da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsstruct ins_format3 { 87f7c80c9f77b0e8a59a19506fd3caf323408a5166Olaf Hering#ifdef __LITTLE_ENDIAN 881da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds uint32_t immediate : 8, 891da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds source : 9, 901da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds address : 10, 911da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds opcode : 4, 921da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds parity : 1; 931da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#else 941da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds uint32_t parity : 1, 951da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds opcode : 4, 961da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds address : 10, 971da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds source : 9, 981da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds immediate : 8; 991da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#endif 1001da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds}; 1011da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 1022628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke/* 16bit ALU logic operations */ 1032628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reineckestruct ins_format4 { 1042628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke#ifdef __LITTLE_ENDIAN 1052628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke uint32_t opcode_ext : 8, 1062628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke source : 9, 1072628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke destination : 9, 1082628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke ret : 1, 1092628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke opcode : 4, 1102628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke parity : 1; 1112628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke#else 1122628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke uint32_t parity : 1, 1132628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke opcode : 4, 1142628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke ret : 1, 1152628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke destination : 9, 1162628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke source : 9, 1172628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke opcode_ext : 8; 1182628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke#endif 1192628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke}; 1202628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke 1212628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke/* 16bit branch control operations */ 1222628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reineckestruct ins_format5 { 1232628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke#ifdef __LITTLE_ENDIAN 1242628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke uint32_t opcode_ext : 8, 1252628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke source : 9, 1262628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke address : 10, 1272628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke opcode : 4, 1282628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke parity : 1; 1292628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke#else 1302628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke uint32_t parity : 1, 1312628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke opcode : 4, 1322628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke address : 10, 1332628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke source : 9, 1342628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke opcode_ext : 8; 1352628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke#endif 1362628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke}; 1372628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke 1382628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke/* Far branch operations */ 1392628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reineckestruct ins_format6 { 1402628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke#ifdef __LITTLE_ENDIAN 1412628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke uint32_t page : 3, 1422628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke opcode_ext : 5, 1432628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke source : 9, 1442628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke address : 10, 1452628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke opcode : 4, 1462628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke parity : 1; 1472628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke#else 1482628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke uint32_t parity : 1, 1492628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke opcode : 4, 1502628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke address : 10, 1512628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke source : 9, 1522628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke opcode_ext : 5, 1532628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke page : 3; 1542628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke#endif 1552628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke}; 1562628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke 1571da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsunion ins_formats { 1581da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds struct ins_format1 format1; 1591da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds struct ins_format2 format2; 1601da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds struct ins_format3 format3; 1612628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke struct ins_format4 format4; 1622628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke struct ins_format5 format5; 1632628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke struct ins_format6 format6; 1641da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds uint8_t bytes[4]; 1651da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds uint32_t integer; 1661da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds}; 1671da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsstruct instruction { 1681da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds union ins_formats format; 1691da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds u_int srcline; 1701da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds struct symbol *patch_label; 1711da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds STAILQ_ENTRY(instruction) links; 1721da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds}; 1731da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 1741da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define AIC_OP_OR 0x0 1751da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define AIC_OP_AND 0x1 1761da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define AIC_OP_XOR 0x2 1771da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define AIC_OP_ADD 0x3 1781da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define AIC_OP_ADC 0x4 1791da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define AIC_OP_ROL 0x5 1801da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define AIC_OP_BMOV 0x6 1811da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 1822628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke#define AIC_OP_MVI16 0x7 1832628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke 1841da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define AIC_OP_JMP 0x8 1851da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define AIC_OP_JC 0x9 1861da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define AIC_OP_JNC 0xa 1871da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define AIC_OP_CALL 0xb 1881da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define AIC_OP_JNE 0xc 1891da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define AIC_OP_JNZ 0xd 1901da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define AIC_OP_JE 0xe 1911da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define AIC_OP_JZ 0xf 1921da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 1931da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/* Pseudo Ops */ 1941da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define AIC_OP_SHL 0x10 1951da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define AIC_OP_SHR 0x20 1961da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define AIC_OP_ROR 0x30 1972628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke 1982628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke/* 16bit Ops. Low byte main opcode. High byte extended opcode. */ 1992628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke#define AIC_OP_OR16 0x8005 2002628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke#define AIC_OP_AND16 0x8105 2012628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke#define AIC_OP_XOR16 0x8205 2022628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke#define AIC_OP_ADD16 0x8305 2032628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke#define AIC_OP_ADC16 0x8405 2042628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke#define AIC_OP_JNE16 0x8805 2052628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke#define AIC_OP_JNZ16 0x8905 2062628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke#define AIC_OP_JE16 0x8C05 2072628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke#define AIC_OP_JZ16 0x8B05 2082628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke#define AIC_OP_JMP16 0x9005 2092628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke#define AIC_OP_JC16 0x9105 2102628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke#define AIC_OP_JNC16 0x9205 2112628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke#define AIC_OP_CALL16 0x9305 2122628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke 2132628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke/* Page extension is low three bits of second opcode byte. */ 2142628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke#define AIC_OP_JMPF 0xA005 2152628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke#define AIC_OP_CALLF 0xB005 2162628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke#define AIC_OP_JCF 0xC005 2172628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke#define AIC_OP_JNCF 0xD005 2182628ed2b1aa3fd115bb8e14925e180e9ecd07055Hannes Reinecke#define AIC_OP_CMPXCHG 0xE005 219