* [bug#40033] Add "Vice" commodore emulator
@ 2020-03-12 2:18 Christopher Lemmer Webber
2020-03-12 2:20 ` [bug#40033] Vice emulator, now with patch Christopher Lemmer Webber
2020-03-16 21:55 ` [bug#40033] Add "Vice" commodore emulator Ludovic Courtès
0 siblings, 2 replies; 6+ messages in thread
From: Christopher Lemmer Webber @ 2020-03-12 2:18 UTC (permalink / raw)
To: 40033
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/
^ permalink raw reply [flat|nested] 6+ messages in thread
* [bug#40033] Vice emulator, now with patch
2020-03-12 2:18 [bug#40033] Add "Vice" commodore emulator Christopher Lemmer Webber
@ 2020-03-12 2:20 ` Christopher Lemmer Webber
2020-03-16 21:55 ` [bug#40033] Add "Vice" commodore emulator Ludovic Courtès
1 sibling, 0 replies; 6+ messages in thread
From: Christopher Lemmer Webber @ 2020-03-12 2:20 UTC (permalink / raw)
To: 40033
[-- Attachment #1: Type: text/plain, Size: 20 bytes --]
Oops, patch below:
[-- Attachment #2: 0001-gnu-Add-vice.patch --]
[-- Type: text/x-patch, Size: 3822 bytes --]
From 3377e3b59203502c065d7c86cbb5e0f5e246862f Mon Sep 17 00:00:00 2001
From: Christopher Lemmer Webber <cwebber@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@ambrevar.xyz>
;;; Copyright © 2019 David Wilson <david@daviwil.com>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
+;;; Copyright © 2020 Christopher Lemmer Webber <cwebber@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
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [bug#40033] Add "Vice" commodore emulator
2020-03-12 2:18 [bug#40033] Add "Vice" commodore emulator Christopher Lemmer Webber
2020-03-12 2:20 ` [bug#40033] Vice emulator, now with patch Christopher Lemmer Webber
@ 2020-03-16 21:55 ` Ludovic Courtès
2020-03-17 21:17 ` Christopher Lemmer Webber
1 sibling, 1 reply; 6+ messages in thread
From: Ludovic Courtès @ 2020-03-16 21:55 UTC (permalink / raw)
To: Christopher Lemmer Webber; +Cc: 40033
Hi Chris!
Christopher Lemmer Webber <cwebber@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’.
^ permalink raw reply [flat|nested] 6+ messages in thread
* [bug#40033] Add "Vice" commodore emulator
2020-03-16 21:55 ` [bug#40033] Add "Vice" commodore emulator Ludovic Courtès
@ 2020-03-17 21:17 ` Christopher Lemmer Webber
2022-04-07 13:30 ` bug#40033: " zimoun
0 siblings, 1 reply; 6+ messages in thread
From: Christopher Lemmer Webber @ 2020-03-17 21:17 UTC (permalink / raw)
To: Ludovic Courtès; +Cc: 40033
Ludovic Courtès writes:
> Hi Chris!
>
> Christopher Lemmer Webber <cwebber@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’.
^ permalink raw reply [flat|nested] 6+ messages in thread
* bug#40033: Add "Vice" commodore emulator
2020-03-17 21:17 ` Christopher Lemmer Webber
@ 2022-04-07 13:30 ` zimoun
2022-04-07 17:44 ` [bug#40033] " Christine Lemmer-Webber
0 siblings, 1 reply; 6+ messages in thread
From: zimoun @ 2022-04-07 13:30 UTC (permalink / raw)
To: Christopher Lemmer Webber; +Cc: Ludovic Courtès, 40033-done
Hi,
On Tue, 17 Mar 2020 at 17:17, Christopher Lemmer Webber <cwebber@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
^ permalink raw reply [flat|nested] 6+ messages in thread
* [bug#40033] Add "Vice" commodore emulator
2022-04-07 13:30 ` bug#40033: " zimoun
@ 2022-04-07 17:44 ` Christine Lemmer-Webber
0 siblings, 0 replies; 6+ messages in thread
From: Christine Lemmer-Webber @ 2022-04-07 17:44 UTC (permalink / raw)
To: zimoun; +Cc: Ludovic Courtès, 40033-done
zimoun <zimon.toutoune@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.
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2022-04-07 17:47 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-03-12 2:18 [bug#40033] Add "Vice" commodore emulator Christopher Lemmer Webber
2020-03-12 2:20 ` [bug#40033] Vice emulator, now with patch Christopher Lemmer Webber
2020-03-16 21:55 ` [bug#40033] Add "Vice" commodore emulator Ludovic Courtès
2020-03-17 21:17 ` Christopher Lemmer Webber
2022-04-07 13:30 ` bug#40033: " zimoun
2022-04-07 17:44 ` [bug#40033] " Christine Lemmer-Webber
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.