Emulator of Single Board Computer

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

EMULATOR OF SINGLE BOARD COMPUTER

SBC 86
TABLE OF CONTENTS
1 INTRODUCTION 4
2 OPERATING INSTRUCTIONS OF SBC86 EMULATORS 5
2.1 SYSTEM 5
2.1.1 INSTALLATION 5
2.2 I8086GUI 6
2.2.1 SURFACE 6
2.2.2 THE MENU 7
2.2.3 SHORTCUT'S 7
2.3 I8086TEXT 8
2.4 CONFIGURATION FILE 9
2.4.1 BASIC SETTINGS 9
2.4.2 DEVICE SETTINGS 9
2.5 BASIC OPERATION OF SBC86 EMULATORS 9
3 FILE OVERVIEW 10
4 PROCESSOR 11
4.1 INTRODUCTION 11
4.2 INITIALIZATION AND TERMINATION 11
4.3 PROCESSOR FUNCTIONS 12
4.3.1 DATA STRUCTURES 12
4.3.2 REGISTER FUNCTIONS 14
4.3.3 RESOURCES FUNCTIONS 15
5 EMULATOR FEATURES AND opcode 16
5.1 FUNCTIONS OF SELECTED FILE I8086EMUFUNCS.C 16
5.1.1 MEMORY ACCESS FUNCTIONS 16
5.1.2 MEMORY ADDRESS DECODING A COMMAND 16
5.1.3 FUNCTIONS TO ACCESS THE I / O PORTS 17
5.1.4 STACK OPERATIONS 17
5.1.5 FUNCTIONS TO CORRECT THE flag register 18
5.1.6 ADDING A NEW opcode 18

5.2 SELECTED MACRO FILE I8086GUI_ERROR.H 19


5.3 SELECTED MACRO FILE I8086ERROR.H 19
5.4 FUNCTIONS OF SELECTED FILE I8086CONFIG.C 206
MESSAGES 21
6.1 OVERVIEW 21
6.2 MESSAGE FUNCTIONS 21
6.3 SENDING A MESSAGE 22
6.4 RECEIVING A MESSAGE 237 DEVICES 25
7.1 OVERVIEW 25
7.2 INTERFACE DEVICES 26
7.3 COMMUNICATION 27
7.4 CHARGING EQUIPMENT 27
7.5 RESET OF EQUIPMENT 28
7.6 CONNECTED DEVICES TRANSMITTER 28
7.7 WORKING WITH EXISTING EQUIPMENT 29
7.7.1 LEDS 29
7.7.2 SWITCH 29
7.7.3 7-SEGMENT DISPLAYS 29
7.7.4 KEYBOARD 30
7.7.5 DISPLAY / KEYBOARD TOUCH OF INTERRUPTS 30
7.7.6 PROGRAMMABLE INTERRUPT CONTROLLER 8259A 32
7.7.7 PROGRAMMABLE INTERVAL TIMER 32 8253
7.7.8 APPENDIX 33
8 MONITOR PROGRAM (ROM) 34
8.1 STORAGE AREAS 34
8.2 DEBUGGER 34
9 SBC86 EXAMPLES 35
9.1 RUNNING LIGHT (KITT) 35
9.2 MEMORY CLOCK WITH DISPLAY (CLOCKMEM) 35
10 REFERENCES 36
1.10 SOURCE CODE OF THIRD 36

1 INTRODUCTION
The SBC86 is a single board computer based on the Intel
8086 CPU, with 5 MHz and 16-bit registers. It has binary input
and output units, 8 LEDs and 8 switches. For inputs and
outputs, eight 7 - segment displays and a small keyboard at
your disposal.

The SBC86 is used for assembly language courses, because he


still has a small number of commands that guarantee to today's
CPUs. We wanted to give the emulator SBC86 the possibility that
knowledge of assembly language at home, without developing the
SBC, or continue to deepen.
SBC86 the emulator is a full-INTEL-8086 emulator. He works in
nearly the same speed, which is about 5 MHz. The RAM is 64 KB.
You can browse the existing device interface to provide additional
equipment for the emulator. It can only machine code files in the
16 raw (COM), no exe or eleven binaries are processed.
Corresponding files can be for example Create with NASM or TASM
(Tiny Model).
2 OPERATING INSTRUCTIONS OF SBC86 EMULATORS2.1 SYSTEM
- X86-based PC with min. 166MHz
under Linux
GCC version 2.95 or higher
-working X Windows installation with window manager
(http://www.xfree.org/)
GTK 2.0 or later (http://www.gtk.org)
nasm-for example, the ASM files to assemble
(found under http://nasm.sourceforge.net/)
-for the Beep-Plugin the shell command "beep"
(http://www.johnath.com/beep/) is required - these must have the
SUID
under Win32
Windows 9x/2000/XP
For the compilation is required CygWin (http://www.cygwin.com/).
Darfur uses the following libraries.
nasm-for example, the ASM files to assemble
(found under http://nasm.sourceforge.net/) 2.1.1 INSTALLATION
Linux
-in a console switch to the directory i8086emu/src
- "Make" call (GTK2 version is created)
-to the i8086sic plugin (serial interface) needs to use the adjusted
emu.cfg

will
-To start the emulator i8086gui call
Windows
i8086setup.exe double-click and follow the instructions
-To start the emulator Start-> Programs-click i8086emu>
i8086emu->
5
GTK 2.0 or later for CygWin. In order to install GTK under CygWin
needs in the setup.exe from CygWin in the input area "User URL"
address "http://web.sfc.keio.ac.jp/ s01397ms/cygwin ~ /" are
entered. Of the packages available there must Libs/gtk2-win32
and Libs / atk be installed.
(http://web.sfc.keio.ac.jp/ ~ s01397ms/cygwin/index.html.en)

ncurses
nasm-for example, the ASM files to assemble
(found under http://nasm.sourceforge.net/) 2.1.1 INSTALLATION
Linux
-in a console switch to the directory i8086emu/src
- "Make" call (GTK2 version is created)
-to the i8086sic plugin (serial interface) needs to use the adjusted
emu.cfg
will
-To start the emulator i8086gui call
Windows
i8086setup.exe double-click and follow the instructions
-To start the emulator Start-> Programs-click i8086emu>
i8086emu->

2.2 I8086GUI
i8086gui is a graphical interface for the SBC86 emulator. It is
created using GTK 2.0 and so on different platforms
portierbar.2.2.1 SURFACE
1:Open opens a file in the COM format.
2:Trace, step by step, here are the next instruction of the
program is executed.
3:Step over, in contrast to trace here that subroutines and
conditional pro gramme grind total processed.
4:Run, The program will start at the current position. Targeted

disruption is possible only by means of a breakpoint or


available via stop. Only in this
Mode is to set the update interval (6) carries.
5:Stop ends, the run mode.
6:Update Interval, setting how often the registers and flags in
the run mode to be updated.
7:Dis-assembler, display of the commands are executed, the
labeling portion is the next instruction. Breakpoints appear
Marks red.
8:MEM-viewer display of memory, marked area is the memory
address of the next instruction is executed.

9:Display Memory, enter the address from which the memory


contents to be displayed.
10:Segment display and input field, on the eight 7-segment
displays can access available via the ports 90h-9EH. Here each
segment with one of the eight output lines of the corresponding
port is connected. The keyboard matrix can be queried available
via the port 80h.
11:LED display on the eight LEDs can be accessed available via
the port 00H.
12:Switches, the condition of the switch you can also query
available via the port 00H.
13:CPU reset, restart of the CPU, which means that the execution
of the current program will be aborted. Then branches to the end
of the store, at a routine of the ROM is.
14:Registers, display the registers and their contents.
15:Flags, display of flags, when set, they are colored red.

2.2.2 THE MENU


Open Opens an assembler file in COM format.
Exit terminates the program.
Trace, step by step, it is executed only the next instruction of
the program.
-Step Over, unlike here trace subroutines and conditional
program loops are executed in total.
Run, the program will start at the current position. Targeted
disruption is possible only by means of a breakpoint or
available via stop. Only in this mode will contribute to the

setting of the update interval.


Stop, end the RUN mode.
Change-Change Register, a register content Gewnschtes
register select and then enter the value in hexadecimal.
-Change Memory, in hex form to enter then ge-wnschten
also value in hexadecimal form
File menu:
Run menu:
Option Menu:
2.2.3 SHORTCUTS
CTRL + O - Open
CTRL + Q - Quit
F7 - Trace
F8 - Step Over
F9 - Run
Esc - Stop
CTRL + M - Change Memory
CTRL + B - Set/Del Breakpoint
CTRL + R - Change Register
Alt + 0-9 - Zahlen des Keyboards
Alt + A-F - Buchstaben des Keyboards
2.3 I8086TEXT
i8086text is pure emulator with a small GUI in the terminal
window. In i8086text version is the ROM file is enabled (see
Section 2.4), no program file on must be. If a separate
program to be loaded, which uses functions of the ROM, the
core dump enabled.
Command line parameters
- [Options] filename - file in COM format
- Disable code Viewer - [c]
- [O] xxxxh - starting address of the program
- [R] xxxxh file - start address of ROM files
- [-D] file - DUMP File
Function keys in the emulator
8
q-Quit emulator close

r -Change-Change

Register, a register content. Number for the


desired register and then enter the value as a decimal
number.
w-Change Memory, enter address in hexadecimal form,
because then also desired value in hexadecimal form
m -Change Memory, enter address in hexadecimal form,
because then also desired value in hexadecimal form
F1-Display

memory, enter the address (in hex), from which the


memory contents to be displayed.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy