GithubHelp home page GithubHelp logo

Support for 50HZ Video option about linapple HOT 8 OPEN

linappleii avatar linappleii commented on September 18, 2024
Support for 50HZ Video option

from linapple.

Comments (8)

cesarmiquel avatar cesarmiquel commented on September 18, 2024

Messing around with the Video.cpp and comparing with the AppleWin version I noticed that if I make this modification to Video.cpp:

static bool bVideoScannerNTSC = false;  // NTSC video scanning (or PAL)

And re-compile linapple the demo runs! So, seems to be that the the 50HZ functionality is in place but not configurable. I can probably try to create a PR for this.

Unfortunately, the demo doesn't work as expected. If you test it in AppleWin you'll notice the colors are different. The demo does something which I haven't been able to invstigate to be able to have so many colors and I believe that "trick" is not working in LinApple.

from linapple.

maxolasersquad avatar maxolasersquad commented on September 18, 2024

I wonder if bVideoScannerNTSC is something should be added to the configuration file. You said that AppleWin has '50hz video' as a configurable option, is this the effective option being changed with that variable?

from linapple.

ThorstenBr avatar ThorstenBr commented on September 18, 2024

The variable switches the number of emulated scan lines. This affects timing (emulated CPU speed vs emulated video refresh rate). Yes, it should be exposed as a configuration option. This will have a (minor) effect on the timing of various applications (games).

The demo is probably changing the displayed colors with each refresh cycle. The human eye won't see the flickering of alternating colors, but perceive the mixed color instead. That's how the demo displayed more colors than supported by the actual hardware. It's tricky to emulate such details in an emulation though.

Just curious: what happens when you set

Singlethreaded = 1

in the linapple.conf config file. Does it change the emulated color effect?

from linapple.

cesarmiquel avatar cesarmiquel commented on September 18, 2024

I didn't touch SingleThreaded. I'll test and get back to you. The demo works fine on AppleWin though and since this is a port of that not sure why it fails. I also tested the "1982 issue of Softtalk 'Have an Apple Split'" (http://rich12345.tripod.com/aiivideo/softalk.html) and (http://cmosher01.github.io/Epple-II/screenshots.html) in LinApple and that didn't seem to work as well so I thought maybe there's some limitation in how the Video.cpp was ported. Think thats possible?

from linapple.

cesarmiquel avatar cesarmiquel commented on September 18, 2024

@ThorstenBr I don't see that parameter in linapple/linapple.conf.sample. Is that option valid? Maybe it's on some branch?

from linapple.

cesarmiquel avatar cesarmiquel commented on September 18, 2024

This is how it looks in LinApple:
linapple18

And this in AppleWin:
mad3-00

You can watch the demo running here: https://www.youtube.com/watch?v=jkn9m9lV1ig

and Download DSK image and source here: http://fr3nch.t0uch.free.fr/MAD3/MAD3.html

from linapple.

ThorstenBr avatar ThorstenBr commented on September 18, 2024

@ThorstenBr I don't see that parameter in linapple/linapple.conf.sample. Is that option valid? Maybe it's on some branch?

No, it's there - just missing in the sample file. It's visible here though:
https://github.com/linappleii/linapple/blob/master/res/linapple.conf

from linapple.

cesarmiquel avatar cesarmiquel commented on September 18, 2024

Yes, I found the flag and modified it but it didn't seem to work. Looking a little more into the source code I noticed that indeed the only thing that the configuration does is setup that boolean. But the SetVideoRefreshRate() function does one other thing: it calls NTSC_SetRefreshRate(rate);. I looked up that function and realized the whole of NTSC.cpp is gone! It seems that class was added in the end of 2014 and from what I understand the repo this projects is based off was forked before? It seems to me AppleWin tries to simulate NTSCV video with many details but I don't know this project much so I may be completely wrong :-). Who do you think would know how this works @ThorstenBr ?

from linapple.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.