Autor Tema: BMC64, Bare Metal C64 en RaspberryPi  (Leído 1743 veces)

Naibor

  • Commodore Master
  • *****
  • Mensajes: 1032
  • LOAD "*",8
    • Ver Perfil
    • Commodore 64 Full
Re:BMC64, Bare Metal C64 en RaspberryPi
« Respuesta #15 en: Mayo 28, 2019, 19:27:03 »
Siii! es el que hice usando tus sagrados consejos y creo que es el más comodo y que mejor funciona.

Es el que uso habitualmente y el que más me gusta, es duro y preciso. Estoy pensando en comprar un par más para tener de repuesto.
10 PRINT "I LOVE COMMODORE 64"
20 GOTO 10

https://www.youtube.com/channel/UCmBlO_t5eKDtb7YiFAm9TNQ

josepzin

  • Administrador
  • Commodore Master
  • *****
  • Mensajes: 10823
  • Commodoreador web
    • Ver Perfil
    • Mi blog
Re:BMC64, Bare Metal C64 en RaspberryPi
« Respuesta #16 en: Mayo 31, 2019, 18:45:23 »
¡Esta vez si!

Lo próximo es hacerme otra ficha de esas asi tengo para dos jugadores.







La niña jugando un ratito al Alter Ego, increíble lo rápido que pillan la lógica de los juegos.

josepzin

  • Administrador
  • Commodore Master
  • *****
  • Mensajes: 10823
  • Commodoreador web
    • Ver Perfil
    • Mi blog
Re:BMC64, Bare Metal C64 en RaspberryPi
« Respuesta #17 en: Junio 02, 2019, 16:05:29 »
Listo, esto ya está.

Una vez conectados y probados ambos adaptadores DB9, les puse un poco de silicona para que no se salgan o se pierdan las conexiones, que me llevó un buen rato saber qué va en qué lugar.





Para hacer esto tuve que sacar la Rpi de la cajita y claro, como soy un bruto al volver a ponerla no me di cuenta que la MiniSD sobresale un poco y pasó esto:



Una vez reemplazada ya puedo decir que esto funciona de maravilla:

https://www.youtube.com/watch?v=dvqGH3nSFOY


josepzin

  • Administrador
  • Commodore Master
  • *****
  • Mensajes: 10823
  • Commodoreador web
    • Ver Perfil
    • Mi blog
Re:BMC64, Bare Metal C64 en RaspberryPi
« Respuesta #18 en: Junio 02, 2019, 16:07:05 »
Joder, que mala calidad el video... tendré que hacer uno nuevo.

josepzin

  • Administrador
  • Commodore Master
  • *****
  • Mensajes: 10823
  • Commodoreador web
    • Ver Perfil
    • Mi blog
Re:BMC64, Bare Metal C64 en RaspberryPi
« Respuesta #19 en: Junio 04, 2019, 02:24:20 »
Nueva versión, ahora además se pueden poner VIC20 y C128.

Citar
First release of BMVIC20 available!
------------------------------------------------
I ended up spending a lot of time changing how the emulated display is drawn to the screen. There's a LOT of border in the Vic20 emulator especially in PAL mode and the graphics area looked scrunched. There's way more border in the emulator than what shows up on the real thing on a CRT. I made a change that includes more border as the frame buffer size is increased. This lets you 'zoom in' and cut out some unwanted border. Once border area is exhausted, the resulting image is centred within the available area and you will start to get black borders. So the idea is to get as much border as you need but try to keep a reasonable aspect ratio. That's hard sometimes since there are minimum resolutions for the frame buffer (can't go lower than 320x200 I think).

There is a 'framebuffer_aspect' line in config.txt I added (commented out). It can adjust the aspect ratio. So it can be used to make the output look better by eliminating some black border space at the top/bottom.

Unfortunately, the frame buffer/aspect ratio can't be adjusted dynamically (at least I don't know how to) so you have to change config.txt, look at the results, and try again until you get it right. I'm hoping I made it configurable enough so people can find the optimal settings for all NTSC/PAL + Composite/HDMI combos. I don't have a PAL monitor so I can't really compare. (Special thanks to Lroby74 for helping to test this first release!)

I think the VIC20 is best emulated in NTSC mode. Most cartridges were made for NTSC as they position the screen badly in PAL. Most games let you move the screen with keys or the joystick but it's annoying. Some games don't load at all unless the machine is NTSC.

This was actually my first computer when I as was kid. I'm not familiar with what the most popular emulation features are though. I'm sure you guys will let me know if I missed something Smile You can find it at https://accentual.com/bmvic20. This is a completely separate package from BMC64 and is meant to be stand alone (see below for notes on unification).

Update to BMC128...
----------------------------

I'm also releasing a full package for BMC128 instead of expecting people to re-use files from BMC64. Keep in mind this is still unfinished. There's no VDC support. I did fix a few bugs though. You can find it at https://accentual.com/bmc128

BMC64/C128/VIC20 1.9 Release
--------------------------------------------

* PSA: cmdline.txt has changed and should be updated:

For BMC64, if you are in the habit of just updating the kernel file, best
to update cmdline.txt with this release. canvas_height/canvas_width
parameters have been renamed to vicii_canvas_height, vicii_canvas_width to
distinguish between C64 and VIC20 (or other future) video chips that need
different sized frame buffers. VIC20 will read vic_canvas_height,
vic_canvas_width. Only doing that in case someday they can run side by
side with the same cmdline.txt.

Also, I changed the way the emulated display is drawn to fix some unused
black border issues on both C64/C128 and VIC20 so the C64/C128 frame
buffers are now a different size. If you find your video output is
squished after this update, best to confirm you are using the new
cmdline.txt settings. This change 'zooms' the video in a bit so more of
the screen is used.

* Added Home/PageUp/PageDown/End handling in menu (also F1/F3/F5/F7
for real keyboard users)

* Added first letter search in menus (press a letter and cursor will jump
to next occurrence of an item that starts with that letter).

* Added menu item to create empty disks in various formats

* Fixed C128 kernal/basic/chargen ROM load menu options
* Fixed bug where POT Y Up/Down values could not be set
* Fixed bug with some 'empty' USB button function menu options
* Moved bootstat.txt into machine dirs so they can be different for machines
* Moved status bar to directly below where bottom border starts
* Reorg some menu items

Unification?
---------------

Now that there are three machines ported, I considered unifying the releases into one install that could switch between the different emulators via menu option. However, this could turn out to be difficult since the optimal video options (frame buffer size, aspect ratio, video mode & fps) are sometimes different between machines and are determined by the config.txt and cmdline.txt files. For example, the VIC20 is best emulated as an NTSC machine (cartridges usually default to NTSC positioning) but C64 is best as PAL (best games/demos).

As far as I know, there can only be one version of those files per sdcard (true?). So any switch would have to swap not only the kernel, but the config.txt and cmdline.txt files too which is kind of a wierd thing to do. Usually, those files are not edited/changed by applications. I'm going to look into boot loaders to see if they can switch not only kernels but configs as well. My guess is no. Anyone know? If it's not a problem, I'll leave them as separate releases and that would be the preferred solution.

My vision for these packages was specifically for people who want to place Raspberry Pi's inside old Commodore shells in order to reproduce the 'feel' of the original machine as much as possible (quick boot, shut off, low latency, etc). For me, that meant dedicating the Pi to do one thing so I may just keep all these separate so they do their one job the best they can. Thoughts?

josepzin

  • Administrador
  • Commodore Master
  • *****
  • Mensajes: 10823
  • Commodoreador web
    • Ver Perfil
    • Mi blog
Re:BMC64, Bare Metal C64 en RaspberryPi
« Respuesta #20 en: Junio 06, 2019, 20:52:28 »
El autor de BMC64 está pendiente del hilo en el foro de Lemon64 y ya ha agregado varias cosas que hemos sugerido los que estamos allí.

Que quizás las hubiera terminado agregando igual, pero mola que haya sido a partir de nuestras sugerencias.

Ahora estabamos hablando de poder conectar el teclado de C64 directamente al puerto GPIO de la Rpi asi puede leerlo directamente desde allí, sin pasar por aparato externo (ya sea Keyrah o Arduino) y eso está genial!

En cuanto se pueda hacer meteré una Rpi dentro de un C64.

Este es el hilo: https://www.lemon64.com/forum/viewtopic.php?t=70498

Harris

  • A muerte con el mejor ordenador del mundo.
  • Commodorero
  • **
  • Mensajes: 25
  • SYS 64738
    • Ver Perfil
Re:BMC64, Bare Metal C64 en RaspberryPi
« Respuesta #21 en: Junio 08, 2019, 12:54:55 »
una pregunta off topic que os queria hacer:

hay algo así para el mame ?

Que arranque directo el emulador mame como lo hace este ?

Ya se que hay recalbox y retropie

Pero uno que solo emule el mame por ejemplo y que arranque solo.

Exite algo asi ?



PacoBlog64

  • Commodore Master
  • *****
  • Mensajes: 224
  • INC $D020
    • Ver Perfil
    • PacoBlog64
Re:BMC64, Bare Metal C64 en RaspberryPi
« Respuesta #22 en: Junio 08, 2019, 19:53:36 »
una pregunta off topic que os queria hacer:

hay algo así para el mame ?

Que arranque directo el emulador mame como lo hace este ?

Ya se que hay recalbox y retropie

Pero uno que solo emule el mame por ejemplo y que arranque solo.

Exite algo asi ?




Aquí salen unos cuantos emus bare metal para la Pi, pero ninguno de Mame: https://www.reddit.com/r/emulation/comments/7uvp5w/baremetal_raspberry_pi_emulators/
Commodoriano desde mis tiernos 7 añitos. ¿Quién necesita más de 1MHz, 64KB de RAM, 16 colores y 3 canales de sonido?

josepzin

  • Administrador
  • Commodore Master
  • *****
  • Mensajes: 10823
  • Commodoreador web
    • Ver Perfil
    • Mi blog
Re:BMC64, Bare Metal C64 en RaspberryPi
« Respuesta #23 en: Junio 09, 2019, 01:44:47 »
Para Mame me parece que puede ser Piplay, pero no me queda claro si es exactamente lo mismo, parece ser un frontend que arranca bastante rápido y es mame.

Harris

  • A muerte con el mejor ordenador del mundo.
  • Commodorero
  • **
  • Mensajes: 25
  • SYS 64738
    • Ver Perfil
Re:BMC64, Bare Metal C64 en RaspberryPi
« Respuesta #24 en: Junio 17, 2019, 23:03:08 »
Bueno como veo que nadie se anima lo digo yo

ya ha salido la version BMC64 2.0

siiiiiiiiiiii a probar !!!!

ahora me la bajo a ver que cosas nuevas tiene , jejeje


josepzin

  • Administrador
  • Commodore Master
  • *****
  • Mensajes: 10823
  • Commodoreador web
    • Ver Perfil
    • Mi blog
Re:BMC64, Bare Metal C64 en RaspberryPi
« Respuesta #25 en: Junio 17, 2019, 23:08:17 »
En principio tiene varias cosas para los mandos USB, en mi caso lo que me interesaba era que recuerde la posición en la lista de archivos :)

A ver si sigue agregando las cosas que pedimos.

Por suerte la actualización es tan simple como copiar los archivos a la tarjeta SD.

josepzin

  • Administrador
  • Commodore Master
  • *****
  • Mensajes: 10823
  • Commodoreador web
    • Ver Perfil
    • Mi blog
Re:BMC64, Bare Metal C64 en RaspberryPi
« Respuesta #26 en: Junio 17, 2019, 23:09:50 »
Esta es la lista oficial de pedidos!

Citar
- Multi reboot C64/C128/VIC20 in just one micro SD
- Adding DRIVE to rom kernal selection
- Read the C64 keyboarb thru GPIO
- Read paddles via GPIO
- Open keyboard on screen

Los dos últimos parecen los mas complicados, 3º está a punto de caer (y es el que mas ilusión me hace), pero el 1º también vale mucho la pena.

Harris

  • A muerte con el mejor ordenador del mundo.
  • Commodorero
  • **
  • Mensajes: 25
  • SYS 64738
    • Ver Perfil
Re:BMC64, Bare Metal C64 en RaspberryPi
« Respuesta #27 en: Junio 19, 2019, 20:24:28 »
Compré un joystick tipo atari 2600 en aliexpress que me tiene que llegar . (conexión c64)
Hay alguna plaquita que se enchufe encima y que no tenga que hacer lo de los cables de conexión ?

He visto que en el foro de lemon64 habla algo de una plaquita...pero no se si lo van hacer ,a vender o que es ...

Por ahora va todo bien  . Me gusta como esta todo y el emulador va todo bien....pero si se puede mejorar aun mas ...yo que me alegro !!  :)

josepzin

  • Administrador
  • Commodore Master
  • *****
  • Mensajes: 10823
  • Commodoreador web
    • Ver Perfil
    • Mi blog
Re:BMC64, Bare Metal C64 en RaspberryPi
« Respuesta #28 en: Junio 19, 2019, 21:17:12 »
La placa está en desarrollo todavía, la verdad es que no sé como se venderá/liberará. Yo creo que hará una tirada para vender y atmbién pondrá los planos para descargar asi cada cual se la puede hacer, supongo.

Pero lo de los cables para conectar al joystick es una cosa muy fácil!
Aunque hay que usar cables Dupont tipo Arduino para que sea realmente fácil, se consiguen sin problema dependiendo donde vivas...
Y tener un soldador de estaño, claro. Que tampoco es ninguna ciencia.
-

josepzin

  • Administrador
  • Commodore Master
  • *****
  • Mensajes: 10823
  • Commodoreador web
    • Ver Perfil
    • Mi blog
Re:BMC64, Bare Metal C64 en RaspberryPi
« Respuesta #29 en: Junio 19, 2019, 21:18:19 »
Además para conectar esa plaquita seguro tambien harán falta unos cables tipo Dupont, asi que mientras tanto te haces los conectores y vas usandolo, como hice yo.