Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 2

Emu8086 is an emulator program that contains a source editor, assembler, disasse mbler, and emulator for assembly programs.

This software is useful for those who has just began to study assembly language. It compiles the source code and exec ute it on emulator step by step. This is really important as one can see the reg ister, memory, stack, variables and flag contents after execution of each instru ction. All memory values can be investigated and edited by a double click. The i nstructions can be executed in a regular forward direction and also in reverse d irection. To start Emu8086 click the Icon on your desktop or from your start menu. Now if u select New you will be given an workspace. If you want your workspace initiall y clear just check the corresponding "Empty Workspace" option. This will open th e source editor window where you can enter your program. You can also open sampl e programs that are already stored select Sample. 1 To test the software enter a very simple program and Click Emulateemulate You can also compile the program before emulating it. If the program is successf ully compiled its expected that the program will give expected result after emul ation not considering any logical error of course. Some logical errors remain un detected while compiling the program. 3 This will lead to the Advanced emulation screen where you can test the whole pro gram step by step and observe the outcome. You can use single step forward or re versed to troubleshoot an executable. You can also Load other executables to deb ug by the Load option or Reload the program itself by the Reload option.Input / Output ports Additional devices can be created using 8086 assembly, Java, C/C++, Visual Basic or any other programming language. For more information and sample source code look inside this folder: c:\emu8086\DEVICES\DEVELOPER\ Input / output addresses for custom devices are from 0000 to 0FFFFh (0 to 65535) It is important to avoid two devices using the same ports. Port 100 corresponds to byte 100 in this file: c:\emu8086.io , port 0 to byte 0, port 101 to byte 101, etc...

Emulation of Hardware Interrupts External hardware interrupts can be triggered by external peripheral devices and microcontrollers or by the 8087 mathematical coprocessor. Hardware interrupts are disabled when interrupt flag (IF) is set to 0. When inte rrupt flag is set to 1, the emulator continually checks first 256 bytes of this file c:\emu8086.hw if any of the bytes is none-zero the microprocessor transfers control to an interrupt handler that matches the triggering byte offset in emu8 086.hw file (0 to 255) according to the interrupt vector table (memory 0000-0400 h) and resets the byte in emu8086.hw to 00. These instructions can be used to disable and enable hardware interrupts:

cli - clear interrupt flag (disable hardware interrupts). sti - set interrupt flag (enable hardware interrupts). by default hardware interrupts are enabled and are disabled automatically when s oftware or hardware interrupt is in the middle of the execution.

You might also like