A0B36APO Virtual Hardware: Difference between revisions
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
[[File:apo_bazmek.jpg|thumb|right|Simple terminal used by students]] | |||
[https://edux.feld.cvut.cz/courses/A0B36APO/start A0B36APO] (Architektury pocitacu -- Computer architectures) is a course taught by [http://cs.felk.cvut.cz/webis/courses.html Department of Computer Science and Engineering] and [http://dce.fel.cvut.cz/ Department of Control Engineering]. | [https://edux.feld.cvut.cz/courses/A0B36APO/start A0B36APO] (Architektury pocitacu -- Computer architectures) is a course taught by [http://cs.felk.cvut.cz/webis/courses.html Department of Computer Science and Engineering] and [http://dce.fel.cvut.cz/ Department of Control Engineering]. | ||
Students [https://edux.feld.cvut.cz/courses/A0B36APO/tutorials/10/start have to work with specialized hardware]. This page describes how to use the virtual implementation of the specialized hardware -- this can help students to work at home without the access to the real hardware. | Students [https://edux.feld.cvut.cz/courses/A0B36APO/tutorials/10/start have to work with specialized hardware]. This page describes how to use the virtual implementation of the specialized hardware -- this can help students to work at home without the access to the real hardware. |
Revision as of 11:47, 24 May 2012

A0B36APO (Architektury pocitacu -- Computer architectures) is a course taught by Department of Computer Science and Engineering and Department of Control Engineering.
Students have to work with specialized hardware. This page describes how to use the virtual implementation of the specialized hardware -- this can help students to work at home without the access to the real hardware.
Qemu
Qemu is a processor emulator which enables to run separate Operating System on Virtual Hardware.
APOHW
APOHW comprises PCIe I/O card and Simple terminal (keyboard + text LCD).
Using APOHW
How to obtain the source code:
git clone git://rtime.felk.cvut.cz/lisovros/qemu_apohw.git -b apohw
How to compile it:
./configure --enable-system --target-list=i386-softmmu --enable-sdl --enable-kvm
make
To compile Qemu on bare Ubuntu 12.04, you will need to install zlib1g-dev, libglib2.0-dev, libsdl1.2-dev
How to run it:
./i386-softmmu/qemu-system-i386 -device apohw \ -hda ../../debian_lenny_i386_standard.qcow2 \ --boot c \ -enable-kvm
You need to have some image file with GNU/Linux installed on it. KVM command is optional.
In another terminal then run:
telnet localhost 55555
... and perceive the miracle
What is not implemented
- Proper timing features of the hardware
- I/O card is PCI, not PCIe -- however memory access is the same.
- HD44780 does not support 4bit access
- HD44780 does not support display shifting
- HD44780 does not support editable CGRAM
- Buzzer
Bugs
Bug reports please send to lisovy@gmail.com