Author Topic: WIP Retro Virtual Machine v2.0.  (Read 3016 times)

0 Members and 1 Guest are viewing this topic.

Offline jcgamestoy

  • CPC464
  • **
  • Posts: 9
  • Country: es
  • Liked: 51
WIP Retro Virtual Machine v2.0.
« on: 16:53, 21 October 17 »
Hello forum!


Some progress in my new emulator (for MacOs and Windows).


This time I show you the emulation of the CRTC/Monitor with the game Relentless and the Mario demo by Batman Group.


At the end of the video you can see also the low level (mfm) emulation of the disc system in Discology.



https://youtu.be/kJR37C8yOcI


Enjoy, there are a lot of things to finish yet. But i make a great progress in the last Month

Offline Gryzor

  • Administrator
  • 6128 Plus
  • *****
  • Posts: 14.495
  • Country: gr
  • CPC-Wiki maintainer
    • CPCWiki
  • Liked: 2656
Re: WIP Retro Virtual Machine v2.0.
« Reply #1 on: 12:05, 26 October 17 »
How can we beta-test this? :)

Offline ThomH

  • CPC664
  • ***
  • Posts: 57
  • Country: us
  • Liked: 42
Re: WIP Retro Virtual Machine v2.0.
« Reply #2 on: 02:01, 02 November 17 »
Most minor observation ever: I think perhaps you don't quite have the correct output aspect ratio. Pixels in Mode 1 aren't quite square. Pixels run for 40/64ths of the line, which is close to 77% of the visible area. 320 pixels of height would be about 111% of the visible area. So I make each Mode 1 pixel only about 92% as wide as tall.

EDIT: proper workings:

Per PAL, 52us of each line is visible and 288 lines are visible, with the screen having an aspect ratio of 4/3. In Mode 1 there are 320 pixels across and they take 40us to output, with each line being unique.

So each pixel is 1/288th of the screen tall and (40/52) * (1/320) = 1/416th of the screen wide. Correcting for screen aspect ratio, each pixel has an aspect ratio of (288*4)/(416*3) = 12/13.

So, a touch thinner than tall.
« Last Edit: 14:35, 02 November 17 by ThomH »

Offline jcgamestoy

  • CPC464
  • **
  • Posts: 9
  • Country: es
  • Liked: 51
Re: WIP Retro Virtual Machine v2.0.
« Reply #3 on: 16:29, 04 November 17 »
How can we beta-test this? :)
 


Soon, but there are a lot of things to finish.


Most minor observation ever: I think perhaps you don't quite have the correct output aspect ratio. Pixels in Mode 1 aren't quite square. Pixels run for 40/64ths of the line, which is close to 77% of the visible area. 320 pixels of height would be about 111% of the visible area. So I make each Mode 1 pixel only about 92% as wide as tall.

EDIT: proper workings:

Per PAL, 52us of each line is visible and 288 lines are visible, with the screen having an aspect ratio of 4/3. In Mode 1 there are 320 pixels across and they take 40us to output, with each line being unique.

So each pixel is 1/288th of the screen tall and (40/52) * (1/320) = 1/416th of the screen wide. Correcting for screen aspect ratio, each pixel has an aspect ratio of (288*4)/(416*3) = 12/13.

So, a touch thinner than tall.



Thanks for the info, I know, the development versions use a 1-1 pixels but how i use OpenGL for the video i will correct this in the final version. The overscan is configurable also.


By the way, I'm working in a Linux version too  :P


https://www.youtube.com/watch?v=golJpJ4tOXc&t=11s

Offline ThomH

  • CPC664
  • ***
  • Posts: 57
  • Country: us
  • Liked: 42
Re: WIP Retro Virtual Machine v2.0.
« Reply #4 on: 20:39, 07 November 17 »
By the way, I'm working in a Linux version too  :P
That's pretty cool! Dull questions: which underlying library are you using for the Linux port? As in: SDL, Qt or something like that? And is your code ES 2.x compatible, for a potential Raspberry Pi build?

(I checked for source code to try to answer this question for myself, but found none; apologies if you are open source and I should have been able to find out without asking)

I'm a Mac user usually, so I've used the previous version of your emulator, but I have a Pi behind the TV. Also I'm partway through porting my efforts via SDL but finding window management to be a hassle. It's one call in Cocoa but there actually seems to be no functioning way to request that a resizeable window will maintain a certain content-size aspect ratio in X11 and quite a few of the window managers ignore programmatic window events while the mouse button is down so you can't intercede there either. I guess that's why VLC doesn't even try.
« Last Edit: 20:42, 07 November 17 by ThomH »

Offline jcgamestoy

  • CPC464
  • **
  • Posts: 9
  • Country: es
  • Liked: 51
Re: WIP Retro Virtual Machine v2.0.
« Reply #5 on: 16:55, 14 November 17 »
That's pretty cool! Dull questions: which underlying library are you using for the Linux port? As in: SDL, Qt or something like that? And is your code ES 2.x compatible, for a potential Raspberry Pi build?

(I checked for source code to try to answer this question for myself, but found none; apologies if you are open source and I should have been able to find out without asking)

I'm a Mac user usually, so I've used the previous version of your emulator, but I have a Pi behind the TV. Also I'm partway through porting my efforts via SDL but finding window management to be a hassle. It's one call in Cocoa but there actually seems to be no functioning way to request that a resizeable window will maintain a certain content-size aspect ratio in X11 and quite a few of the window managers ignore programmatic window events while the mouse button is down so you can't intercede there either. I guess that's why VLC doesn't even try.


I'm using SDL2 but i'm in the process of making my own library. The final version will not use SDL2 at all.


The OpenGL part is OpenGL v2.1, then yes is "almost" OpenGL ES 2.x compatible.

Offline phi2x

  • 464 Plus
  • *****
  • Posts: 458
  • Country: fr
    • CPCBox - CPC emulator in JavaScript
  • Liked: 151
Re: WIP Retro Virtual Machine v2.0.
« Reply #6 on: 18:01, 14 November 17 »
Wow, this emulator feels of very high quality. :o
Atwood's law (2007): "Any application that can be written in JavaScript, will eventually be written in JavaScript."

Offline jcgamestoy

  • CPC464
  • **
  • Posts: 9
  • Country: es
  • Liked: 51
Re: WIP Retro Virtual Machine v2.0.
« Reply #7 on: 15:10, 22 November 17 »
I made some progress now we have a new phosphor screen shader  :P :



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


And the CRTC implementation seems stable now.


Stay tunned  ;)

Offline Gryzor

  • Administrator
  • 6128 Plus
  • *****
  • Posts: 14.495
  • Country: gr
  • CPC-Wiki maintainer
    • CPCWiki
  • Liked: 2656
Re: WIP Retro Virtual Machine v2.0.
« Reply #8 on: 15:29, 22 November 17 »
I just love this. I really do! Say, after this, can you do a terminal program for Windows (ssh please!) with those kinds of filters? I'd pay for one :D

Offline jcgamestoy

  • CPC464
  • **
  • Posts: 9
  • Country: es
  • Liked: 51
Re: WIP Retro Virtual Machine v2.0.
« Reply #9 on: 20:36, 05 January 18 »
Another video this time, showing the first device implemented in the Amstrad CPC (Toto's X-Mem)


And a short view of the debugger.



https://youtu.be/R3eKzs9Mtu4


Enjoy

Offline Gryzor

  • Administrator
  • 6128 Plus
  • *****
  • Posts: 14.495
  • Country: gr
  • CPC-Wiki maintainer
    • CPCWiki
  • Liked: 2656
Re: WIP Retro Virtual Machine v2.0.
« Reply #10 on: 20:39, 05 January 18 »
So sexy! Please bring the Windows version forward :)

Offline alan.turner

  • Speccy
  • *
  • Posts: 1
  • Liked: 0
Re: WIP Retro Virtual Machine v2.0.
« Reply #11 on: 22:28, 05 January 18 »
This is very nice - love it on the Mac!! When can I get it???


Sent from my iPhone using Tapatalk Pro

Offline tjohnson

  • Supporter
  • 464 Plus
  • *
  • Posts: 476
  • Country: gb
    • index.php?action=treasury
  • Liked: 140
Re: WIP Retro Virtual Machine v2.0.
« Reply #12 on: 15:48, 06 January 18 »
This looks cool, on you're first video you had an untuned tv effect i presume this doesn't represent ctm640 emulation which would fade up when switched on.   The green screen, the general screen wobble and  line slowly running down the screen, did they do that? I haven't got one but is be surprised if this represents a healthy screen.  great work keep it up.  Trevor

Sent from my E5823 using Tapatalk


Offline blackdalek

  • Supporter
  • CPC6128
  • *
  • Posts: 225
  • Country: au
  • Fraser
  • Liked: 96
Re: WIP Retro Virtual Machine v2.0.
« Reply #13 on: 16:07, 06 January 18 »
I'm keen to try out the linux version. Looks great.
CPC6128 modded with ABBA switch. External 5.25" floppy drive with side switch and Multiface 2. Now also sporting a joystick splitter and M4 WiFi board.

Offline remax

  • 6128 Plus
  • ******
  • Posts: 1.018
  • Country: fr
  • Liked: 335
Re: WIP Retro Virtual Machine v2.0.
« Reply #14 on: 00:06, 14 January 18 »
Wow... it's amazing !

Online arnoldemu

  • Supporter
  • 6128 Plus
  • *
  • Posts: 5.311
  • Country: gb
    • Unofficial Amstrad WWW Resource
  • Liked: 2189
Re: WIP Retro Virtual Machine v2.0.
« Reply #15 on: 15:42, 14 January 18 »

This looks cool, on you're first video you had an untuned tv effect i presume this doesn't represent ctm640 emulation which would fade up when switched on.   The green screen, the general screen wobble and  line slowly running down the screen, did they do that? I haven't got one but is be surprised if this represents a healthy screen.  great work keep it up.  Trevor

Sent from my E5823 using Tapatalk
None of those effects happen on the CPC or Plus.


The CPC screen was always solid and clear.
My games. My Games
My website with coding examples: Unofficial Amstrad WWW Resource

Offline VincentGR

  • 6128 Plus
  • ******
  • Posts: 759
  • Country: gr
    • Parts from the past.
  • Liked: 322
Re: WIP Retro Virtual Machine v2.0.
« Reply #16 on: 15:44, 14 January 18 »
I need this.
To blit, or not to blit?
Amiga 1200 Black Project

Offline Apollo

  • Supporter
  • CPC664
  • *
  • Posts: 66
  • Country: de
  • Liked: 22
Re: WIP Retro Virtual Machine v2.0.
« Reply #17 on: 05:34, 02 March 18 »
Looks really good!!
Any news when a beta version is available? Seems like it is stable enough already to give some other hands the chance to find bugs  ;D
CPC - My beloved first computer!

Offline jcgamestoy

  • CPC464
  • **
  • Posts: 9
  • Country: es
  • Liked: 51
Re: WIP Retro Virtual Machine v2.0.
« Reply #18 on: 21:37, 13 March 18 »
New video.



https://youtu.be/wks6g79soVg


Low pass filter in the audio working.
Tape recording (CDT, PZX, TZX, CSW) working.


The Beta 1 is more close now. Stay tunned




Online robcfg

  • Supporter
  • 6128 Plus
  • *
  • Posts: 1.975
  • Country: se
  • 8-Bit Technomancer
    • index.php?action=treasury
  • Liked: 808
Re: WIP Retro Virtual Machine v2.0.
« Reply #19 on: 22:35, 13 March 18 »
Looking forward to try it!  :D

Offline Gryzor

  • Administrator
  • 6128 Plus
  • *****
  • Posts: 14.495
  • Country: gr
  • CPC-Wiki maintainer
    • CPCWiki
  • Liked: 2656
Re: WIP Retro Virtual Machine v2.0.
« Reply #20 on: 19:21, 21 April 18 »
I want this :)

Offline VincentGR

  • 6128 Plus
  • ******
  • Posts: 759
  • Country: gr
    • Parts from the past.
  • Liked: 322
Re: WIP Retro Virtual Machine v2.0.
« Reply #21 on: 19:34, 21 April 18 »
I want this :)


You will burn in hell if you want this sorcery  ;D
To blit, or not to blit?
Amiga 1200 Black Project

Offline dXoXb

  • CPC464
  • **
  • Posts: 6
  • Country: nl
  • Liked: 1
Re: WIP Retro Virtual Machine v2.0.
« Reply #22 on: 19:19, 06 May 18 »
This looks fantastic!  :o 8) Please, please keep this up  :)

Offline jcgamestoy

  • CPC464
  • **
  • Posts: 9
  • Country: es
  • Liked: 51
Re: WIP Retro Virtual Machine v2.0.
« Reply #23 on: 20:21, 10 July 18 »
More work.


Now supporting the "CPC Dandanator" cartridge.



https://youtu.be/DkENuyTVDxM


Enjoy

Offline dXoXb

  • CPC464
  • **
  • Posts: 6
  • Country: nl
  • Liked: 1
Re: WIP Retro Virtual Machine v2.0.
« Reply #24 on: 18:21, 14 July 18 »
Very nice  8) :)

When do we get to play around with the Windows version?