GNU bug report logs - #40033
Add "Vice" commodore emulator

Previous Next

Package: guix-patches;

Reported by: Christopher Lemmer Webber <cwebber <at> dustycloud.org>

Date: Thu, 12 Mar 2020 02:19:02 UTC

Severity: normal

Done: zimoun <zimon.toutoune <at> gmail.com>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 40033 in the body.
You can then email your comments to 40033 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#40033; Package guix-patches. (Thu, 12 Mar 2020 02:19:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Christopher Lemmer Webber <cwebber <at> dustycloud.org>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Thu, 12 Mar 2020 02:19:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Christopher Lemmer Webber <cwebber <at> dustycloud.org>
To: guix-patches <at> gnu.org
Subject: Add "Vice" commodore emulator
Date: Wed, 11 Mar 2020 22:18:13 -0400
Here's a patch to add the "vice" commodore emulator.  It builds and
works, but has some vices of its own (har har).

 - It ships with the original Kernal/Basic from the c64 (and other
   systems), including the payload for the original Microsoft Basic.
   That's... probably not ok for Guix.

 - One solution is coming out of the Mega65 project (a damn cool project
   in general):
     https://github.com/MEGA65/open-roms
   (Just look how cool the Mega65 hardware is, btw!)
     https://www.youtube.com/watch?v=aEhZfkQ3bAk

 - It really stutters a lot for me.  I don't know why.  I tried turning
   off all the graphical extras and turning on the fastsid audio system
   in the config system and it's still slow.  I can't even run
   robotfindskitten at full speed:
     https://pezi-pink.itch.io/c64-robotfindskitten
   (good FOSS test program, btw.)

Oh well.  What should be done now?  Not sure, and thoughts welcome.

 - Chris

PS: learning 6502 assembly is really fun!  Here's a good resource:
  https://skilldrick.github.io/easy6502/




Information forwarded to guix-patches <at> gnu.org:
bug#40033; Package guix-patches. (Thu, 12 Mar 2020 02:21:02 GMT) Full text and rfc822 format available.

Message #8 received at 40033 <at> debbugs.gnu.org (full text, mbox):

From: Christopher Lemmer Webber <cwebber <at> dustycloud.org>
To: 40033 <at> debbugs.gnu.org
Subject: Vice emulator, now with patch
Date: Wed, 11 Mar 2020 22:20:06 -0400
[Message part 1 (text/plain, inline)]
Oops, patch below:

[0001-gnu-Add-vice.patch (text/x-patch, inline)]
From 3377e3b59203502c065d7c86cbb5e0f5e246862f Mon Sep 17 00:00:00 2001
From: Christopher Lemmer Webber <cwebber <at> dustycloud.org>
Date: Wed, 11 Mar 2020 22:04:53 -0400
Subject: [PATCH] gnu: Add vice.

* gnu/packages/emulators.scm (vice): New variable.
---
 gnu/packages/emulators.scm | 58 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 58 insertions(+)

diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm
index 7e4c98fbc7..40f81d1cc7 100644
--- a/gnu/packages/emulators.scm
+++ b/gnu/packages/emulators.scm
@@ -12,6 +12,7 @@
 ;;; Copyright © 2019 Pierre Neidhardt <mail <at> ambrevar.xyz>
 ;;; Copyright © 2019 David Wilson <david <at> daviwil.com>
 ;;; Copyright © 2020 Jakub Kądziołka <kuba <at> kadziolka.net>
+;;; Copyright © 2020 Christopher Lemmer Webber <cwebber <at> dustycloud.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -41,12 +42,14 @@
   #:use-module (gnu packages audio)
   #:use-module (gnu packages autotools)
   #:use-module (gnu packages base)
+  #:use-module (gnu packages bison)
   #:use-module (gnu packages boost)
   #:use-module (gnu packages backup)
   #:use-module (gnu packages cdrom)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages curl)
   #:use-module (gnu packages elf)
+  #:use-module (gnu packages flex)
   #:use-module (gnu packages fonts)
   #:use-module (gnu packages fontutils)
   #:use-module (gnu packages freedesktop)
@@ -1628,3 +1631,58 @@ derived from Gens.  Project goals include clean source code, combined features
 from various forks of Gens, and improved platform portability.")
     (supported-systems '("i686-linux" "x86_64-linux"))
     (license license:gpl2+)))
+
+(define-public vice
+  (package
+    (name "vice")
+    (version "3.4")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://sourceforge.net/projects"
+                                  "/vice-emu/files/releases/vice-"
+                                  version ".tar.gz/download"))
+              (sha256
+               (base32
+                "1svsw3z18nsj3vmpxdp456y79xsj9f1k405r07zd336kccf0rl2b"))))
+    (build-system gnu-build-system)
+    (arguments
+     '(#:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'fix-sh
+           (lambda _
+             (substitute* (find-files "." "configure")
+               (("-/bin/sh") (string-append "-" (which "sh")))
+               (("= /bin/sh") (string-append "= " (which "sh"))))))
+         (replace 'configure
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out")))
+               ;; The 'configure' script is a wrapper for Waf and
+               ;; doesn't recognize things like '--enable-fast-install'.
+               (invoke "./configure"
+                       (string-append "--prefix=" out))))))))
+    (native-inputs
+     `(("autoconf" ,autoconf)
+       ("automake" ,automake)
+       ("bison" ,bison)
+       ("texinfo" ,texinfo)))
+    (inputs
+     `(("flex" ,flex)
+       ("xa" ,xa)
+       ("sdl2" ,sdl2)
+       ("libpng" ,libpng)
+       ("libjpeg" ,libjpeg-turbo)
+       ("ffmpeg" ,ffmpeg)
+       ("giflib" ,giflib)
+       ("zlib" ,zlib)
+       ("alsa-lib" ,alsa-lib)
+       ("pulseaudio" ,pulseaudio)
+       ("portaudio" ,portaudio)
+       ("mesa" ,mesa)
+       ("glu" ,glu)))
+    (home-page "http://vice-emu.sourceforge.net/")
+    (synopsis "Versatile Commodore emulator")
+    (description
+     "VICE emulates the C64, the C64DTV, the C128, the VIC20, practically
+all PET models, the PLUS4 and the CBM-II (aka C610/C510).  An extra
+emulator is provided for C64 expanded with the CMD SuperCPU.")
+    (license license:gpl2+)))
-- 
2.25.1


Information forwarded to guix-patches <at> gnu.org:
bug#40033; Package guix-patches. (Mon, 16 Mar 2020 21:56:01 GMT) Full text and rfc822 format available.

Message #11 received at 40033 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Christopher Lemmer Webber <cwebber <at> dustycloud.org>
Cc: 40033 <at> debbugs.gnu.org
Subject: Re: [bug#40033] Add "Vice" commodore emulator
Date: Mon, 16 Mar 2020 22:55:41 +0100
Hi Chris!

Christopher Lemmer Webber <cwebber <at> dustycloud.org> skribis:

> Here's a patch to add the "vice" commodore emulator.  It builds and
> works, but has some vices of its own (har har).
>
>  - It ships with the original Kernal/Basic from the c64 (and other
>    systems), including the payload for the original Microsoft Basic.
>    That's... probably not ok for Guix.

You mean it ships the ROM as a pre-built proprietary binary?
That wouldn’t be OK.  :-/

>  - One solution is coming out of the Mega65 project (a damn cool project
>    in general):
>      https://github.com/MEGA65/open-roms

Do you know if that could actually work?  That would be perfect.

>    (Just look how cool the Mega65 hardware is, btw!)
>      https://www.youtube.com/watch?v=aEhZfkQ3bAk

Woow, fun!  :-)

Thanks!
Ludo’.




Information forwarded to guix-patches <at> gnu.org:
bug#40033; Package guix-patches. (Tue, 17 Mar 2020 21:18:01 GMT) Full text and rfc822 format available.

Message #14 received at 40033 <at> debbugs.gnu.org (full text, mbox):

From: Christopher Lemmer Webber <cwebber <at> dustycloud.org>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: 40033 <at> debbugs.gnu.org
Subject: Re: [bug#40033] Add "Vice" commodore emulator
Date: Tue, 17 Mar 2020 17:17:33 -0400
Ludovic Courtès writes:

> Hi Chris!
>
> Christopher Lemmer Webber <cwebber <at> dustycloud.org> skribis:
>
>> Here's a patch to add the "vice" commodore emulator.  It builds and
>> works, but has some vices of its own (har har).
>>
>>  - It ships with the original Kernal/Basic from the c64 (and other
>>    systems), including the payload for the original Microsoft Basic.
>>    That's... probably not ok for Guix.
>
> You mean it ships the ROM as a pre-built proprietary binary?
> That wouldn’t be OK.  :-/

Yes, they are the original binary ROMs shipped on the C64.

The funny thing is it's in the data/ directory.  Lispers love to say
that "code and data and data is code"; in this case, at least data/ has
object code. ;)

I agree that it isn't acceptable for Guix.

>>  - One solution is coming out of the Mega65 project (a damn cool project
>>    in general):
>>      https://github.com/MEGA65/open-roms
>
> Do you know if that could actually work?  That would be perfect.

I think they don't work perfectly, but can work for some things.  It
would be nice to support it.

I don't have time, but I invite someone else to give a try at building
the mega65 open-roms package and linking it in.  So I may have to leave
this at a "passing this along to a future community member" stage of
packaging.

If someone else can try packaging the mega65 ROMs (honestly don't know
how hard it is to do), I can at least help playtest.  It would be really
good for computing history purposes to free one of the blobs holding us
back from exploring past computing systems!

>>    (Just look how cool the Mega65 hardware is, btw!)
>>      https://www.youtube.com/watch?v=aEhZfkQ3bAk
>
> Woow, fun!  :-)
>
> Thanks!
> Ludo’.




Reply sent to zimoun <zimon.toutoune <at> gmail.com>:
You have taken responsibility. (Thu, 07 Apr 2022 13:34:02 GMT) Full text and rfc822 format available.

Notification sent to Christopher Lemmer Webber <cwebber <at> dustycloud.org>:
bug acknowledged by developer. (Thu, 07 Apr 2022 13:34:02 GMT) Full text and rfc822 format available.

Message #19 received at 40033-done <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: Christopher Lemmer Webber <cwebber <at> dustycloud.org>
Cc: Ludovic Courtès <ludo <at> gnu.org>, 40033-done <at> debbugs.gnu.org
Subject: Re: bug#40033: Add "Vice" commodore emulator
Date: Thu, 07 Apr 2022 15:30:18 +0200
Hi,

On Tue, 17 Mar 2020 at 17:17, Christopher Lemmer Webber <cwebber <at> dustycloud.org> wrote:
> Ludovic Courtès writes:

>> You mean it ships the ROM as a pre-built proprietary binary?
>> That wouldn’t be OK.  :-/
>
> Yes, they are the original binary ROMs shipped on the C64.
>
> The funny thing is it's in the data/ directory.  Lispers love to say
> that "code and data and data is code"; in this case, at least data/ has
> object code. ;)
>
> I agree that it isn't acceptable for Guix.

Therefore, it is tempting to close it. :-)


>>>  - One solution is coming out of the Mega65 project (a damn cool project
>>>    in general):
>>>      https://github.com/MEGA65/open-roms
>>
>> Do you know if that could actually work?  That would be perfect.
>
> I think they don't work perfectly, but can work for some things.  It
> would be nice to support it.
>
> I don't have time, but I invite someone else to give a try at building
> the mega65 open-roms package and linking it in.  So I may have to leave
> this at a "passing this along to a future community member" stage of
> packaging.
>
> If someone else can try packaging the mega65 ROMs (honestly don't know
> how hard it is to do), I can at least help playtest.  It would be really
> good for computing history purposes to free one of the blobs holding us
> back from exploring past computing systems!

Well, after more than 2 years without any interaction, I am not
convinced it is worth to keep this open.  Therefore, I am closing.

If I miss a point and you think it is worth to keep it open for
«"passing this along to a future community member" stage of packaging»,
feel free to reopen.


Cheers,
simon




Information forwarded to guix-patches <at> gnu.org:
bug#40033; Package guix-patches. (Thu, 07 Apr 2022 17:46:02 GMT) Full text and rfc822 format available.

Message #22 received at 40033-done <at> debbugs.gnu.org (full text, mbox):

From: Christine Lemmer-Webber <cwebber <at> dustycloud.org>
To: zimoun <zimon.toutoune <at> gmail.com>
Cc: Ludovic Courtès <ludo <at> gnu.org>, 40033-done <at> debbugs.gnu.org
Subject: Re: bug#40033: Add "Vice" commodore emulator
Date: Thu, 07 Apr 2022 13:44:02 -0400
zimoun <zimon.toutoune <at> gmail.com> writes:

>>>>  - One solution is coming out of the Mega65 project (a damn cool project
>>>>    in general):
>>>>      https://github.com/MEGA65/open-roms
>>>
>>> Do you know if that could actually work?  That would be perfect.
>>
>> I think they don't work perfectly, but can work for some things.  It
>> would be nice to support it.
>>
>> I don't have time, but I invite someone else to give a try at building
>> the mega65 open-roms package and linking it in.  So I may have to leave
>> this at a "passing this along to a future community member" stage of
>> packaging.
>>
>> If someone else can try packaging the mega65 ROMs (honestly don't know
>> how hard it is to do), I can at least help playtest.  It would be really
>> good for computing history purposes to free one of the blobs holding us
>> back from exploring past computing systems!
>
> Well, after more than 2 years without any interaction, I am not
> convinced it is worth to keep this open.  Therefore, I am closing.
>
> If I miss a point and you think it is worth to keep it open for
> «"passing this along to a future community member" stage of packaging»,
> feel free to reopen.
>
>
> Cheers,
> simon

I think that's fair to close it.  But fwiw, if any community member does
want to pick this up, they have my blessing.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Fri, 06 May 2022 11:24:05 GMT) Full text and rfc822 format available.

This bug report was last modified 1 year and 328 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.