The Datasheet Archive - 100 Million Datasheets from 7500 Manufacturers.    


Datasheet Search Engine   
 
Part # or Description: • 5V RS232 Driver • 2SC5066* • "Real Time Clock" • "USB connector" • "blue led" 5mm • 10 watt zener diode • 2N3055* motorola
 
Search Tip: Try entering the part number only. Include a wildcard (eg. lm317* or 1n4148*)

 

 

Additional file AP164002.EXE available ADIS16X Disassembler with


Datasheet Thumbnail

  

Download PDF



Top Searches for this datasheet



Microcontrollers ApNote AP1640
Additional file AP164002.EXE available
ADIS16X Disassembler with One-Line Assembler C16X 16-Bit Microcontroller Family
ADIS16X allows analysis program code 16-bit microcontrollers C16X family. Program code different formats loaded displayed Disassembler Hex-dump format. Single instructions input using built-in One-Line Assembler. Program code written into Log-file list assembler source format. symbol operation provided using symbol definition file. Richard Schmid, Microcontroller Product Definition, Siemens Munich
Semiconductor Group
11.97, Rel.
ADIS16X Disassembler with One-Line Assembler C16X 16-Bit Microcontroller Family
Contents
Page
Starting ADIS16X Main Menu Basic Function <F1> Loading Data File Basic Function <F2> Writing Memory Buffer Contents into HEX- BIN-File Basic Function <F3> Selection Microcontroller Type Basic Function <F4> Disassemblers One-Line Assemblers Menu General Operation Input Address Generation Log-File Basic Function <F5> HEX-Dump Menu General Operation Input Address Generation Log-File
Basic Function <F6> Overview Memory Buffer Usage Basic Function <F7> Selection Options Appendix Error Status Messages One-Line Assembler Formats Definition Symbol Definition File
AP1640 ApNote Revision History Actual Revision 11.97 Rel. Page Page actual Rev. prev.Rel. Previous Revision 10.97 Rel. (Original Version) Subjects (changes since last release) AP164002.EXE version ADIS16X.EXE (V3.03) included; operand decoding JNB, JBC, JNB, JNBS instructions corrected.
Semiconductor Group
AP1640 11.97
ADIS16X Disassembler with One-Line Assembler C16X 16-Bit Microcontroller Family
Starting ADIS16X
program ADIS16X.EXE MS-DOS program. started under MS-DOS MSDOS window Windows operating system. parameter added ADIS16X comes 25line/80-columns text mode. also possible initiate program using 50-line text mode. This mode selected calling program ADIS16X After ADIS16X been started title screen displayed. Pressing further will turn main menu screen. When ADIS16X loaded, program searches file called ADIS16X.SYM, which contains device, special function register, symbol definitions. this file present directory where ADIS16X located started, ADIS16X will operate without microcontroller specific register symbol. This capability symbol definitions external file allows very flexible adaption ADIS16X types C166 family microcontrollers with their different symbols. syntax symbol definition file shown appendix this ApNote. Depending available main memory resources ADIS16X allocates memory buffer operation with KByte portions Bytes. Therefore, memory buffer ADIS16X starts 00000H maximum 3FFFFH quantities Kbyte pages. Important C166 data only handled within this absolute memory address area.
Semiconductor Group
AP1640 11.97
ADIS16X Disassembler with One-Line Assembler C16X 16-Bit Microcontroller Family
Main Menu
Figure shows main menu 25-line mode.
Figure Main Menu ADIS16X main menu screen ADIS16X divided into three sections upper area screen lines), help area, shows actual available basic functions program related keys which used select these basic functions. middle area screen, display area, used display contents 256K byte memory buffer Disassembler Hex-dump menu. number text lines this area depends text mode, which ADIS16X started (16, lines). lower area screen lines), status area, used display status information error messages (see Appendix File names addresses also input this screen area. right part status area shows actual selected type microcontroller, defined symbol definition file, state Log-File (closed open). seven basic functions ADIS16X selected from main menu. These basic functions assigned function keys follows <F1> <F2> <F3> <F4> <F5> <F6> <F7> Loading data file different formats into ADIS16X memory buffer Writing ADIS16X memory buffer contents into file using HEX- BIN- format Selection microcontroller type (and symbols) Starting ADIS16X Disassembler One-Line Assembler function Starting ADIS16X Hex-dump function Display ADIS16X memory buffer usage (Code Info) Selection different options
Pressing <Esc> main menu will terminate ADIS16X program return DOS. Pressing other main menu results optical (error message) acustical warning. following chapters describe each seven main menu basic functions detail.
Semiconductor Group
AP1640 11.97
ADIS16X Disassembler with One-Line Assembler C16X 16-Bit Microcontroller Family
Basic Function <F1> Loading Data File
ADIS16X provides 256K byte memory buffer which assigned used program memory buffer instructions data, which generated assembler compiler programs. These instructions data normally stored with absolute addresses data files using different formats. Figure shows types data formats which loaded ADIS16X. HEX- OBJ-file formats Intel type format.
Figure Data File Load Selection Window Pressing <F1> main menu ADIS16X opens window above requests input selection data file format. After selection data file format, ADIS16X requests input file name data file. Additionally, BIN-file format memory buffer start address requested which defines memory buffer address, where binary data placed (with incrementing memory buffer address). other data file formats provide address information whithin data file which used locate data file contents memory buffer. path data files names input must referenced directory where ADIS16X located either relative absolute format. When data file been found opened, ADIS16X analyses content transfers relevant data into memory buffer. After loading data file content, Code Info function (<F6> main menu) gives overview memory buffer usage. Prior loading memory buffer with contents data file, memory buffer completely written with This memory buffer initialization feature switched option (<F7> main menu). Remarks HEX-, OBJ-files HEX-files scanned records with record type (data records) (address records). Only code data information which placed these records processed transferred into memory buffer. From OBJ-files only records with record type analysed. Symbol informations stored HEX- OBJ-files used ADIS16X. Invalid data file formats checksum errors data files detected generate error message status area.
Semiconductor Group
AP1640 11.97
ADIS16X Disassembler with One-Line Assembler C16X 16-Bit Microcontroller Family
Basic Function <F2> Writing Memory Buffer Contents into HEX- BIN-File
This function allows generate data files with content memory buffer. invoked pressing <F2> main menu. After input data file name generated, start address must input. data file already exists, warning message occurs must selected whether data transferred should overwrite information existing data file should appended existing data file. This allows store several memory buffer parts data file. address values must input hexadecimal numbers. generated HEX-files, "Extended Address Record" (record type=02H) preceeded "End-of-File" record ":00000001FF" (record type=01H) appended data block which been written into data file. Therefore, multiple memory buffer blocks written into HEX-file, "End-of-File" records should deleted manually (except last one) using e.g. text editor.
Semiconductor Group
AP1640 11.97
ADIS16X Disassembler with One-Line Assembler C16X 16-Bit Microcontroller Family
Basic Function <F3> Selection Microcontroller Type
This function allows select microcontroller device with related SFR- symbols. This function only available, device with symbols been defined symbol definition file ADIS51.SYM. example figure three devices have been defined.
Figure Microcontroller Type Selection Window After selection microcontroller type name microcontroller displayed right corner status area. Also symbols, which defined selected type symbol definition file ADIS51.SYM, activated.
Semiconductor Group
AP1640 11.97
ADIS16X Disassembler with One-Line Assembler C16X 16-Bit Microcontroller Family
Basic Function <F4> Disassemblers One-Line Assemblers Menu General Operation
After pressing <F4> main menu after input start address, disassembler window with related menu opened. This function main part ADIS16X program. allows display contents memory buffer C166 instruction mnemonics alter enter single instructions using one-line assembler capability. When entering disassembler menu, ADIS16X begins linear disassembling 2000 instructions located memory buffer starting from start address. first instructions then output display area. instruction, which located start address, appears (grey) highlighted scrollbar with cursor placed first character instruction. highlighted instruction modified scrollbar moved using cursor keys <Cursor <Cursor Down> <Page <Page Down> moving scrollbar instruction back moving scrollbar instruction forward moving scrollbar screen page back moving scrollbar screen page forward (optional scroll screen) (optional scroll screen)
possible move scrollbar screen area directly address which less than start address. this operation start address must defined (using <F9>). Further, scrollbar cannot moved behind last 2000) instructions which have been disassembled. Figure shows example disassembler menu.
Figure Disassembler/One-Line Assembler Menu ADIS16X
Semiconductor Group
AP1640 11.97
ADIS16X Disassembler with One-Line Assembler C16X 16-Bit Microcontroller Family
one-line assembler capability accepts opcodes operands input instructions they defined Appendix one-line assembler byte word values instruction input either decimal hexadecimal notation, they always output hexadecimal values. SFRs symbols defined active microcontroller device (see chapter disassembler displays addresses addresses with symbol. one-line assembler also accepts symbol names input operands. symbol output/input switched option (see chapter After instruction been modified input using cursor left/right keys <Del> key, assembled pressing <Return> key. instruction correct format, code bytes written into memory buffer location where scrollbar located. After this memory buffer update, instructions which follow actually assembled instruction re-disassembled. Therefore, occur that instruction flow changed instructions, which located directly behind actually assembled instruction (e.g. replacing 4-byte instruction 2-byte instruction). input start address memory buffer disassembling will corrected with corresponding status message next even memory buffer address. Instructions, which follow ATOMIC EXT* instructions, assigned extended area. Such instructions marked with rightmost column screen area. more function keys available disassembler menu <F9> <F10> <Esc> Input definition start address disassembling Open/append/close Log-file Back Main Menu
Input Address
Pressing <F9> disassembler menu allows enter start address memory buffer disassembling procedure. ADIS16X again begins linear disassembling 2000 instructions located memory buffer starting from entered start address. instruction, which located start address, appears highlighted scrollbar. This capability defining start address required when large areas memory buffer must disassembled destination address jump instruction, which should disassembled, e.g. outside 2000 actually disassembled instruction area memory buffer. Generation Log-File
Log-file generation capability disassembler menu allows write disassembler data from memory buffer into ASCII file. disassembler data written Log-file listing format shown Log-file example next page. data first part Log-file example been generated with DPPi symbols decoding enabled. second part DPPi symbols decoding been disabled.
Semiconductor Group
AP1640 11.97
ADIS16X Disassembler with One-Line Assembler C16X 16-Bit Microcontroller Family
Log-File Example Disassembler Output
ADIS16X V3.0 LOG-File Log-File output with DPPi decoding symbols decoding enabled (C167) 08000 DISWDT 08004 STKOV,#0FA00H 08008 STKUN,#0FA40H 0800C SP,#0FA3EH 08010 CP,#0FD00H 08014 DPP3,#0003H 08018 DPP2,#0002H 0801C DPP1,#0001H 08020 DPP0,#0003H 08024 BCLR ALECTL0 08026 BSET P3.12 08028 BSET DP3.12 0802A BSET P3.13 0802C BSET DP3.13 0802E BCLR 10H.0 08030 BSET 10H.1 08032 JMPS 0,8036H 08036 EINIT 0803A DPP3:3D48H,R0 0803E S1BG,DPP3:3D48H Log-File output with DPPi decoding symbols decoding disabled (C167) 08000 DISWDT 08004 0AH,#0FA00H 08008 0BH,#0FA40H 0800C 09H,#0FA3EH 08010 08H,#0FD00H 08014 03H,#0003H 08018 02H,#0002H 0801C 01H,#0001H 08020 00H,#0003H 08024 BCLR 86H.9 08026 BSET 0E2H.12 08028 BSET 0E3H.12 0802A BSET 0E2H.13 0802C BSET 0E3H.13 0802E BCLR 10H.0 08030 BSET 10H.1 08032 JMPS 0,8036H 08036 EINIT 0803A 0FD48H,R0 0803E S1BG,0FD48H
data shall written into Log-file pressing <F10> Hex-dump menu Log-file open (status message "LOG-File closed"), file name requested input status area. default, ADIS16X.LOG proposed. Log-file already open (status message "LOG-File open"), must selected whether actual Log-file shall closed whether data should appended actual Log-file.
Semiconductor Group
AP1640 11.97
ADIS16X Disassembler with One-Line Assembler C16X 16-Bit Microcontroller Family
Basic Function <F5> HEX-Dump Menu General Operation
Pressing <F5> main menu activates Hex-dump function ADIS16X requests input memory buffer start address (hexadecimal address value followed <Return>). Beginning this address, contents memory buffer displayed hexadecimal ASCII notation bytes each row). Depending cursor position, highlighted byte modified entering hexadecimal value ASCII character. <Tab> used switch cursor highlighted byte from hexadecimal display ASCII display vice versa. highlighted byte moved using cursor keys. address highlighted byte displayed additionally status area screen. After activation Hex-dump function, Hex-dump menu entered. help area screen displays functions which available <Cursor Down> <Cursor <Cursor Right> <Cursor Left> <Page <Page Down> <F9> <F10> <Tab> <Esc> Decrement address highlighted byte (optional scroll screen) Increment address highlighted byte (optional scroll screen) Increment address highlighted byte (optional scroll screen) Decrement address highlighted byte (optional scroll screen) Scroll Hex-dump screen screen page back Scroll Hex-dump screen screen page forward Input address Hex-dump function Open/append/close Log-file Switch cursor highlighted byte from hexadecimal ASCII input Back Main Menu
Figure shows example Hex-dump screen
Figure Hex-Dump Function ADIS16X
Semiconductor Group
AP1640 11.97
ADIS16X Disassembler with One-Line Assembler C16X 16-Bit Microcontroller Family
Hex-dump function left pressing <Esc>. generation Log-file described chapter 7.3. Note :Generally, Hex-dump function also used binary analysis/modifcation file with size max. Kbyte. using this feature file should loaded file into memory buffer address 00000H. After load operation start address detected manually bytes modified. Finally data written again from detected start address into file. Input Address
Pressing <F9> Hex-dump menu allows enter start address Hex-dump output. Thereafter, ADIS16X displays data bytes located memory buffer starting with data byte entered start address left upper corner screen area. Generation Log-File
Log-file generation capability Hex-dump menu allows write data from memory buffer notation into ASCII file. format data includes memory buffer addresses data with bytes row, hexadecimal ASCII characters. Log-file example below shows Hex-dump file output data shown figure
Log-File Example Hex-Dump Output
ADIS16X V3.0 LOG-File 08000: 08010: 08020: 08030: 08040: 08050: 08060: 08070: 08080: 08090: 080A0: 080B0: 080C0: 080D0: 080E0: 080F0: MON166 V1.27 1990 Siemens ertec
data shall written into Log-file pressing <F10> Hex-dump menu Log-file open (status message "LOG-File closed"), file name requested input status area. default, ADIS16X.LOG porposed. Log-file already open (status message "LOG-File open"), must selected whether actual Log-file shall closed whether data should appended actual Log-file.
Semiconductor Group
AP1640 11.97
ADIS16X Disassembler with One-Line Assembler C16X 16-Bit Microcontroller Family
Basic Function <F6> Overview Memory Buffer Usage
This function used information about usage memory buffer after data file been loaded into memory buffer (basic function <F1> "Loading Data File"). This function useful e.g. code locations data file unknown. Each block character memory buffer usage window represents address area byte (see figure yellow bold) block character indicates that block memory buffer been loaded with data. gray block character indicates that address area byte been loaded with data. memory buffer usage window again closed when pressed.
Figure Memory Buffer Usage Window
Semiconductor Group
AP1640 11.97
ADIS16X Disassembler with One-Line Assembler C16X 16-Bit Microcontroller Family
Basic Function <F7> Selection Options
With this function three options selected. Pressing keys always toggles related option. displayed value always active (see figure Pressing another closes options window again.
Figure Options Window first option used enable/disable SFR- bit-symbols disassembler outputs one-line ssembler inputs. symbols must defined external symbol definition file (ADIS16X.SYM). second option allows switch on/off DPPi decoding instructions when they displayed disassembler menu written Log-file. instruction "MOV DPP1,#0001H" disassembled "MOV 01H,#0001H" when option disabled. third option enabled, every load data file preceeded memory buffer clear operation (256K memory buffer loaded with 00H). This memory buffer clear operation disabled.
Semiconductor Group
AP1640 11.97
ADIS16X Disassembler with One-Line Assembler C16X 16-Bit Microcontroller Family
Appendix Error Status Messages Cause
Input invalid file name file does exist During loading data file checksum error been detected. data file load operation aborted. During reading data file absolute located code/data information been detected loaded into memory buffer. Probably data file wrong format. During loading IEEE data file wrong file format been detected. load operation been aborted. During loading data file existing memory buffer address been requested. load operation been aborted. character which been input invald accepted. Invalid address (only hexadecimal values allowed). invalid instruction been input; one-line assembler cannot disassemble instruction (instruction format Appendix further disassembling memory buffer start address must input (using <F9> disassembler menu. Beginning with start address, maximum 2000 instructions displayed run. During disassemble dump function upper limit memory buffer been reached. disassembler dump function lower start address must input. With start address, which been input, display area cannot filled completely with data. disassembler reached start address from which 2000 instruction have been disassembled (with incrementing address). Log-file generation start address greater than address. Data file name type opened, analysed, absolutely located code/data loaded into memory buffer. content memory buffer transferred into data file (Hexor BIN-format) with filename name. Data currently transferred into Log-file. start address disassemble function address corrected next (higher) even address. During loading ADIS16X symbol definition file been found format existing symbol definition file wrong. types defined. symbol definition file been loaded.
Error-/Status Message
File access error Checksum error absolute code/data been loaded
Invalid OBJ-file format Invalid IEEE-file format
Code memory available this address Invalid input Invalid address Invalid instruction Display buffer exceeded
Code memory limit reached code memory input lower address Disassembler start address reached Start address greater than address
xxx-File name loaded
File name created Log-File created address corrected next even ddress Symbol definition file: available invalid format selection available MCU-type defined
File exists Overwrite/Append/Cancel file (data Log-file) written already exyists open. file closed, overwritten, appended action cancelled.
Semiconductor Group
AP1640 11.97
ADIS16X Disassembler with One-Line Assembler C16X 16-Bit Microcontroller Family
One-Line Assembler Formats Operands
Rw,Rw Rw,[Rwi] Rw,[Rwi+] Rw,#data3 reg,#data16 reg,mem mem,reg (not CMP) Rb,Rb Rb,[Rwi] Rb,[Rwi+] Rb,#data3 reg,#data8 reg,mem mem,reg (not CMPB) Rw,Rw MOVBS, MOVBZ bitaddr bitaddr,bitaddr JMPA, CALLA JMPI, CALLI JMPS, CALLS bitoff,#mask8, #data8 Rw,#data4 Rw,#data16 Rw,mem Rw,Rw Rw,#data4 Rw,Rw Rw,#data4 Rw,[Rw] Rw,[Rw+] Rw,[Rw+#data16] [Rw],Rw [Rw],[Rw] [Rw],[Rw+] [Rw+],[Rw] [-Rw],Rw [Rw+#data16],Rw [Rw],mem mem,[Rw] reg,#data16 reg,mem mem,reg JMPR CALLR TRAP PCALL JBC, JNB, JNBS POP, PUSH, RETP SCXT RET, RETS, RETI, SRST, IDLE, PWRDN, SRVWDT,EINIT, DISWDT, ATOMIC EXTR EXTP EXTPR EXTS EXTSR
Opcodes
ADD, ADDC; SUB, SUBC, AND, XOR,
Opcodes
MOVB
Operands
Rb,Rb Rb,#data4 Rb,[Rw] Rb,[Rw+] Rb,[Rw+#data16] [Rw],Rb [Rw],[Rw] [Rw],[Rw+] [Rw+],[Rw] [-Rw],Rb [Rw+#data16],Rb [Rw],mem mem,[Rw] reg,#data8 reg,mem mem,reg Rb,Rb reg,mem mem,reg cc,caddr cc,[Rw] seg,caddr cc,rel #trap7 reg,caddr bitaddr,rel reg,#data16 reg,mem operands
ADDB, ADDCB, SUBB, SUBCB, ANDB, ORB, 'XORB, CMPB
MUL, MULU PRIOR CPLB, NEGB BCLR, BSET BCLR, BSET BMOV, BMOVN, BAND, BCMP, BOR, BXOR BFLDL, BFLDH CMPD1, CMPD2, CMPI1, CMPI2 SHL,SHR,ROL, ROR, ASHR
#data2 Rw,#data2 pag,#data2 Rw,#data2 segm,#data2
These instructions available C166
Semiconductor Group
AP1640 11.97
ADIS16X Disassembler with One-Line Assembler C16X 16-Bit Microcontroller Family
operands shown table previous page abbreviations following inputs
data2 data3 data4 trap7 data8,mask8 data12 data16 SFRb SFRb.x data8.x Rw.x caddr segm DPPi R0-R15 R0-R3 RL0-RH7 1H-4H 0H-7H 0-15 00H-0FH 0-127 00H-7FH 0-255 00H-0FFH 0-4095 000H-7FFH 0-65535 0000H-0FFFFH symbol special function registers (SFR) symbol bitadressable symbol bitadressable Bits bitadressable (x=0-15) bitadressable witrh address data8 (x=0-15) registers R0-R15 (x,x=0-15) symbol condition codes (z.B. CC_EQ) absolute jump address 0-65535 0000H-0FFFFH relative jump address 0-65535 0000H-0FFFFH 10-bit page number 0-1023 00H-3FFH absolute segment address 0H-3H absolute segment address 0-255 00H-0FFH data pointer DPP0-DPP3 (i=0-3)
following operands abbreviations several inputs shown above
(for word instructions) (for byte instructions) data8 data16 DPPi:data16 SFRb data8 data12 SFRb.x data8.x Rw.x
bitoff
bitaddr
Generally, numbers input decimal hexadecimal values. hexadecimal values standard convention valid must preceed value hexadecimal value begins with letter ("A" "F"); hexadecimal value ends with "H". Inputs assembler case sensitive.
Semiconductor Group
AP1640 11.97
ADIS16X Disassembler with One-Line Assembler C16X 16-Bit Microcontroller Family
Definition Symbol Definition File
Symbol Definition File ADIS16X V3.0 Rules symbol definition file ADIS16X V3.0 Disassembler allows define symbols SFR's bits SFR's different 80C16X compatible microcontrollers. Such symbol definition file build according following rules Comment lines have first line. following characters this line ignored. Empty lines (with 0DH, 0AH) inserted everywhere. definition file sections. Each section validated keyword. keywords these sections Keyword "[MCU]" MCU-Section: defines names MCUs Keyword "[SFR]" SFR-Section: defines names Special Function Registers Keyword "[ESFR]"-> ESFR-Section: defines names Extended Special Function Registers Keyword "[SFB]" SFB-Section: defines names bits Special Function Registers. keywords must placed first line. Definitions MCU-Section "xxxxxxx hhhh" "xxxxxxx" starts first column (short-)name microcontroller; (max. ASCII characters) "hhhh" 4-digit hexword, coded with positions, starting with position this hexword separated from name with actly blank character; lines MCU-Section shall ordered ascending positions "hhhh". highest position indicates that using ESFR register. Definitions SFR-/ESFR-/SFB-Sections Lines SFR-/ESFR-Sections have exactly parts, separated each blank character. xxxxxxxx hhhh" :"aa" 2-digit hexbyte value, which defines 8-bit address ESFR starts first column; "xxxxxxxx" name SFR/ESFR with address "aa"; (max. ASCII characters); "hhhh" 4-digit hexword; dedicated position defines, that symbol 'xxxxxxx' valid MCU, which also fined same position MCU-Section Definitions SFB-Sections Lines this section build similar SFR-/ ESFR-Section. difference that bitaddress decoded 16-bit value. "aabb xxxxxxx hhhh" "aabb" 4-digit hexbyte value, which con; tains position (aa) 8-bit address bitaddressable SFR-/ESFR. "aabb" starts first column. "xxxxxxx" name symbol ASCII characters); "hhhh" 4-digit hexword; dedi; cated position defines, that symbol 'xxxxxxx' valid MCU, which also defined same position MCU-Section
Note file AP164001.EXE includes example symbol definition file.
Semiconductor Group
AP1640 11.97

Other recent searches


VSKDS401 - VSKDS401   VSKDS401 Datasheet
045P - 045P   045P Datasheet
PB015705-0208 - PB015705-0208   PB015705-0208 Datasheet
LTC3731 - LTC3731   LTC3731 Datasheet
e9421 - e9421   e9421 Datasheet
AN-1065 - AN-1065   AN-1065 Datasheet
2SK3476 - 2SK3476   2SK3476 Datasheet
2N5886 - 2N5886   2N5886 Datasheet

 

Privacy Policy | Disclaimer
© 2012 Datasheet Archive