diff options
author | pav <pav@FreeBSD.org> | 2004-06-05 20:28:31 +0800 |
---|---|---|
committer | pav <pav@FreeBSD.org> | 2004-06-05 20:28:31 +0800 |
commit | 307fd69c677603c459e35ace381ff1dc8fbca265 (patch) | |
tree | 91ae66c8fbcd8e88a80099dde7c8a9a87adc3180 /emulators/qemu | |
parent | 85527415206a52ab6c5779e2eeb42186df2dd722 (diff) | |
download | freebsd-ports-gnome-307fd69c677603c459e35ace381ff1dc8fbca265.tar.gz freebsd-ports-gnome-307fd69c677603c459e35ace381ff1dc8fbca265.tar.zst freebsd-ports-gnome-307fd69c677603c459e35ace381ff1dc8fbca265.zip |
- Update to 20040604
PR: ports/67583
Submitted by: Juergen Lock <nox@jelal.kn-bremen.de> (maintainer)
Diffstat (limited to 'emulators/qemu')
-rw-r--r-- | emulators/qemu/Makefile | 7 | ||||
-rw-r--r-- | emulators/qemu/distinfo | 4 | ||||
-rw-r--r-- | emulators/qemu/files/patch-bk | 127 | ||||
-rw-r--r-- | emulators/qemu/pkg-message | 19 |
4 files changed, 146 insertions, 11 deletions
diff --git a/emulators/qemu/Makefile b/emulators/qemu/Makefile index 5ceb6aed8bfc..eca45d44a31c 100644 --- a/emulators/qemu/Makefile +++ b/emulators/qemu/Makefile @@ -6,19 +6,20 @@ # PORTNAME= qemu -PORTVERSION= 0.5.5.s.20040530 +PORTVERSION= 0.5.5.s.20040604 CATEGORIES= emulators MASTER_SITES= http://dad-answers.com/qemu/ -DISTNAME= ${PORTNAME}-snapshot-2004-05-30_23-40 +DISTNAME= ${PORTNAME}-snapshot-2004-06-04_23-40 MAINTAINER= nox@jelal.kn-bremen.de COMMENT= QEMU CPU Emulator BUILD_DEPENDS+= texi2html:${PORTSDIR}/textproc/texi2html -GNU_CONFIGURE= yes +HAS_CONFIGURE= yes USE_BZIP2= yes USE_GMAKE= yes +USE_GETOPT_LONG= yes USE_SDL= sdl USE_GCC= 3.3 USE_PERL5= yes diff --git a/emulators/qemu/distinfo b/emulators/qemu/distinfo index 99e63f9da5ad..1ee49342af8d 100644 --- a/emulators/qemu/distinfo +++ b/emulators/qemu/distinfo @@ -1,2 +1,2 @@ -MD5 (qemu-snapshot-2004-05-30_23-40.tar.bz2) = 4ce3834c66e4628e33a083db5e542287 -SIZE (qemu-snapshot-2004-05-30_23-40.tar.bz2) = 637024 +MD5 (qemu-snapshot-2004-06-04_23-40.tar.bz2) = 1fbec49539edd996557cf6fce19416c3 +SIZE (qemu-snapshot-2004-06-04_23-40.tar.bz2) = 641652 diff --git a/emulators/qemu/files/patch-bk b/emulators/qemu/files/patch-bk new file mode 100644 index 000000000000..23a6bc71c9c2 --- /dev/null +++ b/emulators/qemu/files/patch-bk @@ -0,0 +1,127 @@ +Revert this, breaks the right alt key (which is important if you use a +german keymap, seems to send scroll-lock instead...) + +Index: qemu/sdl.c +@@ -63,24 +63,25 @@ + ds->depth = screen->format->BitsPerPixel; + } + +-static const uint8_t x_keycode_to_pc_keycode[61] = { +- 0xc7, /* 97 Home */ +- 0xc8, /* 98 Up */ +- 0xc9, /* 99 PgUp */ +- 0xcb, /* 100 Left */ ++static const uint32_t x_keycode_to_pc_keycode[61] = { ++ 0x47e0, /* 97 Home */ ++ 0x48e0, /* 98 Up */ ++ 0x49e0, /* 99 PgUp */ ++ 0x4be0, /* 100 Left */ + 0x4c, /* 101 KP-5 */ +- 0xcd, /* 102 Right */ +- 0xcf, /* 103 End */ +- 0xd0, /* 104 Down */ +- 0xd1, /* 105 PgDn */ +- 0xd2, /* 106 Ins */ +- 0xd3, /* 107 Del */ +- 0x9c, /* 108 Enter */ +- 0x9d, /* 109 Ctrl-R */ +- 0xb7, /* 111 Print */ +- 0xb5, /* 112 Divide */ +- 0xb8, /* 113 Alt-R */ +- 0xc6, /* 114 Break */ ++ 0x4de0, /* 102 Right */ ++ 0x4fe0, /* 103 End */ ++ 0x50e0, /* 104 Down */ ++ 0x51e0, /* 105 PgDn */ ++ 0x52e0, /* 106 Ins */ ++ 0x53e0, /* 107 Del */ ++ 0x1ce0, /* 108 Enter */ ++ 0x1de0, /* 109 Ctrl-R */ ++ 0x451de1, /* 110 Pause */ ++ 0x37e0, /* 111 Print */ ++ 0x35e0, /* 112 Divide */ ++ 0x38e0, /* 113 Alt-R */ ++ 0x46e0, /* 114 Break */ + 0x0, /* 115 */ + 0x0, /* 116 */ + 0x0, /* 117 */ +@@ -128,25 +129,11 @@ + + static void sdl_process_key(SDL_KeyboardEvent *ev) + { +- int keycode, v, i; +- static uint8_t modifiers_state[256]; +- +- if (ev->keysym.sym == SDLK_PAUSE) { +- /* specific case */ +- v = 0; +- if (ev->type == SDL_KEYUP) +- v |= 0x80; +- kbd_put_keycode(0xe1); +- kbd_put_keycode(0x1d | v); +- kbd_put_keycode(0x45 | v); +- return; +- } +- ++ int keycode, v; ++ + /* XXX: not portable, but avoids complicated mappings */ + keycode = ev->keysym.scancode; + +- /* XXX: windows version may not work: 0xe0/0xe1 should be trapped +- ? */ + #ifndef _WIN32 + if (keycode < 9) { + keycode = 0; +@@ -159,44 +146,15 @@ + keycode = 0; + } + #endif +- +- switch(keycode) { +- case 0x00: +- /* sent when leaving window: reset the modifiers state */ +- for(i = 0; i < 256; i++) { +- if (modifiers_state[i]) { +- if (i & 0x80) +- kbd_put_keycode(0xe0); +- kbd_put_keycode(i | 0x80); +- } +- } +- return; +- case 0x2a: /* Left Shift */ +- case 0x36: /* Right Shift */ +- case 0x1d: /* Left CTRL */ +- case 0x9d: /* Right CTRL */ +- case 0x38: /* Left ALT */ +- case 0xb8: /* Right ALT */ ++ ++ /* now send the key code */ ++ while (keycode != 0) { ++ v = keycode & 0xff; + if (ev->type == SDL_KEYUP) +- modifiers_state[keycode] = 0; +- else +- modifiers_state[keycode] = 1; +- break; +- case 0x45: /* num lock */ +- case 0x3a: /* caps lock */ +- /* SDL does not send the key up event, so we generate it */ +- kbd_put_keycode(keycode); +- kbd_put_keycode(keycode | 0x80); +- return; ++ v |= 0x80; ++ kbd_put_keycode(v); ++ keycode >>= 8; + } +- +- /* now send the key code */ +- if (keycode & 0x80) +- kbd_put_keycode(0xe0); +- if (ev->type == SDL_KEYUP) +- kbd_put_keycode(keycode | 0x80); +- else +- kbd_put_keycode(keycode & 0x7f); + } + + static void sdl_update_caption(void) diff --git a/emulators/qemu/pkg-message b/emulators/qemu/pkg-message index ad7118865aa3..1444a4413de6 100644 --- a/emulators/qemu/pkg-message +++ b/emulators/qemu/pkg-message @@ -1,13 +1,20 @@ ==== FreeBSD host notes: - needs to run as root in order to use /dev/tap* networking (why?) -- slirp (usermode networking) compiles but doesn't seem to work for -me - seems to have a timer problem (time sleep 1 takes 49 seconds +- slirp (usermode networking) still has a dhcp problem at least for +FreeSBIE guests even with the fix now in cvs, to use it you have to +manually do: + ifconfig ed0 10.0.2.15 + route add default 10.0.2.2 + echo nameserver 10.0.2.3 >/etc/resolv.conf +(traffic to address 10.0.2.2 is routed to 127.1 on the host) +- seems to have a timer problem (time sleep 1 takes 49 seconds and booting sleeps for minutes at the acd0 probe), but only on -_some_ guest systems (FreeSBIE, knoppix.) An installed 5.2.1 guest -system works ok (this also doesn't happen with linux as host.) And -enabling /dev/rtc doesn't help either... (not included since it -needs a patch to emulators/rtc.) +_some_ guest systems (FreeSBIE, knoppix 3.4 with 2.6 kernel.) +knoppix 3.4 with the 2.4 kernel and an installed 5.2.1 guest system +work ok (this also doesn't happen with linux as host.) And enabling +/dev/rtc doesn't help either... (not included since it needs a +patch to emulators/rtc.) - using physical media doesn't work on 4.x hosts (missing DIOCGMEDIASIZE ioctl) ==== |