pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/emulators/gxemul Update to 0.6.2



details:   https://anonhg.NetBSD.org/pkgsrc/rev/516af9d68a43
branches:  trunk
changeset: 400177:516af9d68a43
user:      ryoon <ryoon%pkgsrc.org@localhost>
date:      Fri Aug 23 13:13:49 2019 +0000

description:
Update to 0.6.2

* All pkgsrc patches are included by upstream or target files are removed.

Changelog:
The most important changes between release 0.6.1 and 0.6.2 are:

    When writing to mirrored RAM ranges, any dyntrans translations made in either the mirror or the mirrored ranges are now invalidated. This means that an emulated SGI O2 can now be used with up to 
1 GB of RAM when running OpenBSD/sgi as a guest OS. Previously, 256 MB was the maximum amount of emulated RAM possible for the SGI O2.

    A fix 2018-06-13 (between 0.6.0.1 and 0.6.0.2) for translation invalidation when using larger than 4 KB pages, which made HelenOS/malta run further, caused a regression which broke NetBSD/hpcmips 
(on VR4121 CPUs, which have 1 KB native page size). A bit of cleanup seems to have fixed this, so that both NetBSD/hpcmips and HelenOS/malta work now.

    Cleanup: The MIPS processor emulation implemented in the "new framework", and the corresponding MIPS machine modes in the new framework, have been removed. (All meaningful MIPS emulation is in 
the old framework anyway.)

    Documentation updates:
        Each emulated machine now has a page of its own with the guest OSes or other software that may run in that mode, rather than just having a long unsorted list of guest OS installation 
instructions.
        Less focus on the "new framework", more focus on the old framework where things actually work.
        An introduction to using GXemul as a debugger.
        A general overhaul to remove old stuff, fix errors, and make things easier to read.

diffstat:

 emulators/gxemul/Makefile                                                    |    5 +-
 emulators/gxemul/PLIST                                                       |   40 ++-
 emulators/gxemul/distinfo                                                    |   27 +-
 emulators/gxemul/patches/patch-ad                                            |   50 ---
 emulators/gxemul/patches/patch-src_components_cpu_CPUDyntransComponent.cc    |   15 -
 emulators/gxemul/patches/patch-src_components_cpu_M88K__CPUComponent.cc      |   15 -
 emulators/gxemul/patches/patch-src_components_cpu_MIPS__CPUComponent.cc      |   15 -
 emulators/gxemul/patches/patch-src_console_console.cc                        |   52 ---
 emulators/gxemul/patches/patch-src_cpus_cpu__mips__instr.cc                  |  160 ----------
 emulators/gxemul/patches/patch-src_cpus_cpu_mips.cc                          |   19 -
 emulators/gxemul/patches/patch-src_devices_dev__footbridge.cc                |   59 ---
 emulators/gxemul/patches/patch-src_devices_dev__sh4.cc                       |   17 -
 emulators/gxemul/patches/patch-src_disk_diskimage__scsicmd.cc                |   18 -
 emulators/gxemul/patches/patch-src_include_components_CPUDyntransComponent.h |   30 -
 emulators/gxemul/patches/patch-src_include_components_M88K__CPUComponent.h   |   15 -
 emulators/gxemul/patches/patch-src_include_components_MIPS__CPUComponent.h   |   15 -
 emulators/gxemul/patches/patch-src_include_mips_cpu_types.h                  |   21 -
 emulators/gxemul/patches/patch-src_include_refcount__ptr.h                   |   15 -
 emulators/gxemul/patches/patch-src_machines_machine__pmax.cc                 |   15 -
 emulators/gxemul/patches/patch-src_old__main_timer.cc                        |   15 -
 20 files changed, 39 insertions(+), 579 deletions(-)

diffs (truncated from 748 to 300 lines):

diff -r 4761935686e9 -r 516af9d68a43 emulators/gxemul/Makefile
--- a/emulators/gxemul/Makefile Fri Aug 23 13:07:19 2019 +0000
+++ b/emulators/gxemul/Makefile Fri Aug 23 13:13:49 2019 +0000
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.66 2019/06/30 20:33:02 skrll Exp $
+# $NetBSD: Makefile,v 1.67 2019/08/23 13:13:49 ryoon Exp $
 
-DISTNAME=      gxemul-0.6.1
-PKGREVISION=   4
+DISTNAME=      gxemul-0.6.2
 CATEGORIES=    emulators
 MASTER_SITES=  ${MASTER_SITE_SOURCEFORGE:=gxemul/}
 
diff -r 4761935686e9 -r 516af9d68a43 emulators/gxemul/PLIST
--- a/emulators/gxemul/PLIST    Fri Aug 23 13:07:19 2019 +0000
+++ b/emulators/gxemul/PLIST    Fri Aug 23 13:13:49 2019 +0000
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.27 2019/01/04 13:35:16 ryoon Exp $
+@comment $NetBSD: PLIST,v 1.28 2019/08/23 13:13:49 ryoon Exp $
 bin/gxemul
 man/man1/gxemul.1
 share/doc/gxemul/20040504-ultrix45-boot1.png
@@ -102,6 +102,16 @@
 share/doc/gxemul/20180910-sgiip32prom-4.13.png
 share/doc/gxemul/20181018-openbsd-sgi-o2-small.png
 share/doc/gxemul/20181018-openbsd-sgi-o2.png
+share/doc/gxemul/20190526-irix-not-really-working-yet.png
+share/doc/gxemul/20190526-irix-not-really-working-yet_small.png
+share/doc/gxemul/20190528-winnt-arc-mips-video-fail.png
+share/doc/gxemul/20190528-winnt-arc-mips-video-fail_small.png
+share/doc/gxemul/20190612-netbsd-sgimips-1.png
+share/doc/gxemul/20190612-netbsd-sgimips-1_small.png
+share/doc/gxemul/20190612-netbsd-sgimips-2.png
+share/doc/gxemul/20190612-netbsd-sgimips-2_small.png
+share/doc/gxemul/20190616-netbsd-playstation2-userland-small.png
+share/doc/gxemul/20190616-netbsd-playstation2-userland.png
 share/doc/gxemul/Doxyfile
 share/doc/gxemul/HISTORY
 share/doc/gxemul/LICENSE
@@ -114,7 +124,6 @@
 share/doc/gxemul/components/component_i960_cpu.html
 share/doc/gxemul/components/component_m88k_cpu.html
 share/doc/gxemul/components/component_mainbus.html
-share/doc/gxemul/components/component_mips_cpu.html
 share/doc/gxemul/components/component_ram.html
 share/doc/gxemul/configfiles.html
 share/doc/gxemul/debian-1-small.png
@@ -147,28 +156,44 @@
 share/doc/gxemul/debian-8.png
 share/doc/gxemul/debian-9-small.png
 share/doc/gxemul/debian-9.png
+share/doc/gxemul/debugging.html
 share/doc/gxemul/doxygen.css
 share/doc/gxemul/doxygen_footerFile.html
 share/doc/gxemul/doxygen_headerFile.html
-share/doc/gxemul/dreamcast.html
 share/doc/gxemul/experiments.html
 share/doc/gxemul/framework.html
 share/doc/gxemul/generate_machine_doc.sh
-share/doc/gxemul/guestoses.html
 share/doc/gxemul/head.html
 share/doc/gxemul/index.html
 share/doc/gxemul/intro.html
+share/doc/gxemul/machine_algor.html
+share/doc/gxemul/machine_arc.html
+share/doc/gxemul/machine_cats.html
+share/doc/gxemul/machine_cobalt.html
+share/doc/gxemul/machine_decstation.html
+share/doc/gxemul/machine_dreamcast.html
+share/doc/gxemul/machine_evbarm.html
+share/doc/gxemul/machine_evbmips.html
+share/doc/gxemul/machine_hpcmips.html
+share/doc/gxemul/machine_landisk.html
+share/doc/gxemul/machine_luna88k.html
+share/doc/gxemul/machine_macppc.html
+share/doc/gxemul/machine_mvme88k.html
+share/doc/gxemul/machine_netwinder.html
+share/doc/gxemul/machine_pmppc.html
+share/doc/gxemul/machine_prep.html
+share/doc/gxemul/machine_ps2.html
+share/doc/gxemul/machine_rpi.html
+share/doc/gxemul/machine_sgi_o2.html
 share/doc/gxemul/machine_template.html
+share/doc/gxemul/machine_vocore.html
 share/doc/gxemul/machines/machine_cyclonevh.html.SKEL
 share/doc/gxemul/machines/machine_hp700rx.html.SKEL
 share/doc/gxemul/machines/machine_mvme187.html.SKEL
-share/doc/gxemul/machines/machine_sgi_ip32.html.SKEL
 share/doc/gxemul/machines/machine_testm88k-thumb.png
 share/doc/gxemul/machines/machine_testm88k.html.SKEL
 share/doc/gxemul/machines/machine_testm88k.png
 share/doc/gxemul/machines/machine_testmips-thumb.png
-share/doc/gxemul/machines/machine_testmips.html.SKEL
-share/doc/gxemul/machines/machine_testmips.png
 share/doc/gxemul/misc.html
 share/doc/gxemul/model.png
 share/doc/gxemul/networking.html
@@ -184,4 +209,3 @@
 share/doc/gxemul/translation.html
 share/doc/gxemul/ultrix4.5-20040706.png
 share/doc/gxemul/ultrix4.5-20040706_small.png
-share/doc/gxemul/unsupported.html
diff -r 4761935686e9 -r 516af9d68a43 emulators/gxemul/distinfo
--- a/emulators/gxemul/distinfo Fri Aug 23 13:07:19 2019 +0000
+++ b/emulators/gxemul/distinfo Fri Aug 23 13:13:49 2019 +0000
@@ -1,23 +1,6 @@
-$NetBSD: distinfo,v 1.59 2019/06/30 20:33:02 skrll Exp $
+$NetBSD: distinfo,v 1.60 2019/08/23 13:13:49 ryoon Exp $
 
-SHA1 (gxemul-0.6.1.tar.gz) = 150e495e91a968a49ffc7fe2390c3edff100508d
-RMD160 (gxemul-0.6.1.tar.gz) = 0434bff07970d8828531d222cc8b95c64c2d62f1
-SHA512 (gxemul-0.6.1.tar.gz) = 03dbbaa9ba5e36b4644a984f06bffa5ff9e763f395c472c0fbdfc8bca975a5fb184a676d3a6c5e1a3483c3c62a2778af9c36d2bf4ab8dcaf21b3dfac8abcd301
-Size (gxemul-0.6.1.tar.gz) = 5617712 bytes
-SHA1 (patch-ad) = d4964bc672b690ee2a5c7148b9b9852d7f87776a
-SHA1 (patch-src_components_cpu_CPUDyntransComponent.cc) = dd7a9a83d8abce053e5e61a6aa6ae057c6c51a6a
-SHA1 (patch-src_components_cpu_M88K__CPUComponent.cc) = 4b456721aa0639b91d2dab82fb28f61a951ec8f4
-SHA1 (patch-src_components_cpu_MIPS__CPUComponent.cc) = 9bcb304937ccfa491e37da6f57729854294c420d
-SHA1 (patch-src_console_console.cc) = 0b9c07eaa26a39b20a6f6769cdf02208fc9667d3
-SHA1 (patch-src_cpus_cpu__mips__instr.cc) = 1a39066fad8004b1bf0e9ae6186d943389c4d35f
-SHA1 (patch-src_cpus_cpu_mips.cc) = ad6d9c8b452b1b8422d9194cadfa1c8c3d29ef21
-SHA1 (patch-src_devices_dev__footbridge.cc) = 2dc76e65fff7e6c846d9d06b74bed76075b0c79a
-SHA1 (patch-src_devices_dev__sh4.cc) = 81e3dcc01934c71389a91861343bc8aa32284160
-SHA1 (patch-src_disk_diskimage__scsicmd.cc) = fc0d9cff9afb057051c4f2cb65c898a31a1463bd
-SHA1 (patch-src_include_components_CPUDyntransComponent.h) = f60d31261a03a0a73fa4844143da4931cae85ce6
-SHA1 (patch-src_include_components_M88K__CPUComponent.h) = 5232386ac337c552d88cbdb829b6f0f3e94ba0f2
-SHA1 (patch-src_include_components_MIPS__CPUComponent.h) = 48bc9ea9dacbe7afd9734ee04e270943208db148
-SHA1 (patch-src_include_mips_cpu_types.h) = 04fff50fad3e619e7e0eeb8bf17a79edd18b2147
-SHA1 (patch-src_include_refcount__ptr.h) = 6c8742b199801c1db906d4856f6f5f01a0f25fe0
-SHA1 (patch-src_machines_machine__pmax.cc) = ed3fba7eacb593cbba082a6d8d8ec823bf90162f
-SHA1 (patch-src_old__main_timer.cc) = a6234d80f28611a5be18b917a4249b8530b433bc
+SHA1 (gxemul-0.6.2.tar.gz) = aabaeba783e70be952ab0056bf84d0f2b70c2155
+RMD160 (gxemul-0.6.2.tar.gz) = ccac73d82446f89792b1fc803bee623813f3aab2
+SHA512 (gxemul-0.6.2.tar.gz) = 4f389c509f9ecf39603ceed50e899e2bee285d3fefac9b3214076115ee71b5a7a68d1d92690b6debc8de5cf5f0303da83b3cc921a5c0b5eb4c7ad89baa730b59
+Size (gxemul-0.6.2.tar.gz) = 5897883 bytes
diff -r 4761935686e9 -r 516af9d68a43 emulators/gxemul/patches/patch-ad
--- a/emulators/gxemul/patches/patch-ad Fri Aug 23 13:07:19 2019 +0000
+++ /dev/null   Thu Jan 01 00:00:00 1970 +0000
@@ -1,50 +0,0 @@
-$NetBSD: patch-ad,v 1.4 2019/06/02 09:19:58 gson Exp $
-
-short-term hack to fix hpcmips emulation from Anders Gavare
-
-patch to fix big-endian mips support from matt%netbsd.org@localhost
-
-diff -rup src/cpus/cpu_mips_coproc.cc src/cpus/cpu_mips_coproc.cc
---- src/cpus/cpu_mips_coproc.cc.orig   2018-12-07 06:29:22.000000000 +0000
-+++ src/cpus/cpu_mips_coproc.cc
-@@ -1927,7 +1927,7 @@ void coproc_tlbwri(struct cpu *cpu, int 
-                *             be too expensive to add e.g. 16MB pages like
-                *             this.
-                */
--              if (psize == 0x1000) {
-+              if (psize == 0x1000 && cpu->cd.mips.cpu_type.rev != MIPS_R4100) {
-                       memblock = memory_paddr_to_hostaddr(cpu->mem, paddr0, 0);
-                       if (memblock != NULL && cp->reg[COP0_ENTRYLO0] & ENTRYLO_V)
-                               cpu->update_translation_table(cpu, vaddr0, memblock,
-@@ -2029,6 +2029,13 @@ void coproc_function(struct cpu *cpu, st
- 
-       if (cpnr < 2 && (((function & 0x03e007f8) == (COPz_MTCz << 21))
-                     || ((function & 0x03e007f8) == (COPz_DMTCz << 21)))) {
-+              tmpvalue = cpu->cd.mips.gpr[rt];
-+              if (copz == COPz_MTCz) {
-+                      /*  Sign-extend:  */
-+                      tmpvalue &= 0xffffffffULL;
-+                      if (tmpvalue & 0x80000000ULL)
-+                              tmpvalue |= 0xffffffff00000000ULL;
-+              }
-               if (unassemble_only) {
-                       debug("%s%i\t%s,", copz==COPz_DMTCz? "dmtc" : "mtc",
-                           cpnr, regnames[rt]);
-@@ -2038,16 +2045,10 @@ void coproc_function(struct cpu *cpu, st
-                               debug("r%i", rd);
-                       if (function & 7)
-                               debug(",%i", (int)(function & 7));
-+                      debug(" [%016llx]", (long long)tmpvalue);
-                       debug("\n");
-                       return;
-               }
--              tmpvalue = cpu->cd.mips.gpr[rt];
--              if (copz == COPz_MTCz) {
--                      /*  Sign-extend:  */
--                      tmpvalue &= 0xffffffffULL;
--                      if (tmpvalue & 0x80000000ULL)
--                              tmpvalue |= 0xffffffff00000000ULL;
--              }
-               coproc_register_write(cpu, cpu->cd.mips.coproc[cpnr], rd,
-                   &tmpvalue, copz == COPz_DMTCz, function & 7);
-               return;
diff -r 4761935686e9 -r 516af9d68a43 emulators/gxemul/patches/patch-src_components_cpu_CPUDyntransComponent.cc
--- a/emulators/gxemul/patches/patch-src_components_cpu_CPUDyntransComponent.cc Fri Aug 23 13:07:19 2019 +0000
+++ /dev/null   Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-$NetBSD: patch-src_components_cpu_CPUDyntransComponent.cc,v 1.2 2019/01/04 13:35:16 ryoon Exp $
-
-Don't define functions returning functions.
-
---- src/components/cpu/CPUDyntransComponent.cc.orig    2012-11-19 20:12:27.000000000 +0000
-+++ src/components/cpu/CPUDyntransComponent.cc
-@@ -194,7 +194,7 @@ void CPUDyntransComponent::DyntransClear
-       // Fill the page with "to be translated" entries, which when executed
-       // will read the instruction from memory, attempt to translate it, and
-       // then execute it.
--      void (*f)(CPUDyntransComponent*, DyntransIC*) = GetDyntransToBeTranslated();
-+      DyntransIC_t f = GetDyntransToBeTranslated();
- 
-       for (int i=0; i<m_dyntransICentriesPerPage; ++i)
-               icpage[i].f = f;
diff -r 4761935686e9 -r 516af9d68a43 emulators/gxemul/patches/patch-src_components_cpu_M88K__CPUComponent.cc
--- a/emulators/gxemul/patches/patch-src_components_cpu_M88K__CPUComponent.cc   Fri Aug 23 13:07:19 2019 +0000
+++ /dev/null   Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-$NetBSD: patch-src_components_cpu_M88K__CPUComponent.cc,v 1.2 2019/01/04 13:35:16 ryoon Exp $
-
-Don't define functions returning functions.
-
---- src/components/cpu/M88K_CPUComponent.cc.orig       2018-12-07 06:29:22.000000000 +0000
-+++ src/components/cpu/M88K_CPUComponent.cc
-@@ -337,7 +337,7 @@ int M88K_CPUComponent::GetDyntransICshif
- }
- 
- 
--void (*M88K_CPUComponent::GetDyntransToBeTranslated())(CPUDyntransComponent*, DyntransIC*)
-+DyntransIC_t M88K_CPUComponent::GetDyntransToBeTranslated()
- {
-       return instr_ToBeTranslated;
- }
diff -r 4761935686e9 -r 516af9d68a43 emulators/gxemul/patches/patch-src_components_cpu_MIPS__CPUComponent.cc
--- a/emulators/gxemul/patches/patch-src_components_cpu_MIPS__CPUComponent.cc   Fri Aug 23 13:07:19 2019 +0000
+++ /dev/null   Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-$NetBSD: patch-src_components_cpu_MIPS__CPUComponent.cc,v 1.2 2019/01/04 13:35:16 ryoon Exp $
-
-Don't define functions returning functions.
-
---- src/components/cpu/MIPS_CPUComponent.cc.orig       2018-12-07 06:29:22.000000000 +0000
-+++ src/components/cpu/MIPS_CPUComponent.cc
-@@ -327,7 +327,7 @@ int MIPS_CPUComponent::GetDyntransICshif
- }
- 
- 
--void (*MIPS_CPUComponent::GetDyntransToBeTranslated())(CPUDyntransComponent*, DyntransIC*)
-+DyntransIC_t MIPS_CPUComponent::GetDyntransToBeTranslated()
- {
-       bool mips16 = m_pc & 1? true : false;
-       return mips16? instr_ToBeTranslated_MIPS16 : instr_ToBeTranslated;
diff -r 4761935686e9 -r 516af9d68a43 emulators/gxemul/patches/patch-src_console_console.cc
--- a/emulators/gxemul/patches/patch-src_console_console.cc     Fri Aug 23 13:07:19 2019 +0000
+++ /dev/null   Thu Jan 01 00:00:00 1970 +0000
@@ -1,52 +0,0 @@
-$NetBSD: patch-src_console_console.cc,v 1.2 2017/07/16 16:36:09 christos Exp $
-
-Change console_charavail() to return the number of characters available
-in the FIFO instead of 0/1.
-
---- src/console/console.cc.orig        2014-08-17 04:45:15.000000000 -0400
-+++ src/console/console.cc     2017-07-16 10:04:04.603287788 -0400
-@@ -328,10 +328,19 @@
- }
- 
- 
-+static int console_room_left_in_fifo(int handle)
-+{
-+      int roomLeftInFIFO = console_handles[handle].fifo_tail
-+          - console_handles[handle].fifo_head;
-+      if (roomLeftInFIFO <= 0)
-+              roomLeftInFIFO += CONSOLE_FIFO_LEN;
-+      return roomLeftInFIFO;
-+}
-+
- /*
-  *  console_charavail():
-  *
-- *  Returns 1 if a char is available in the fifo, 0 otherwise.
-+ *  Returns the number of chararacters available in the fifo.
-  */
- int console_charavail(int handle)
- {
-@@ -342,9 +351,7 @@
- 
-               // If adding more would lead to a full FIFO, then let's
-               // wait.
--              int roomLeftInFIFO = console_handles[handle].fifo_tail - console_handles[handle].fifo_head;
--              if (roomLeftInFIFO <= 0)
--                      roomLeftInFIFO += CONSOLE_FIFO_LEN;
-+              int roomLeftInFIFO = console_room_left_in_fifo(handle);
-               if (roomLeftInFIFO < (int)sizeof(ch) + 1)
-                       break;
- 
-@@ -369,11 +376,7 @@
-               }
-       }
- 
--      if (console_handles[handle].fifo_head ==
--          console_handles[handle].fifo_tail)
--              return 0;
--
--      return 1;
-+      return CONSOLE_FIFO_LEN - console_room_left_in_fifo(handle);
- }
- 



Home | Main Index | Thread Index | Old Index