Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[mc6847] improvements #54

Open
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

nippur72
Copy link
Contributor

@nippur72 nippur72 commented Mar 5, 2021

This PR implements some improvements on the MC6847 video chip:

  • The border color now changes only during the scanlines of the active area, before it was on every scanline (I checked it on a real hardware)
  • There is now an optional custom palette. The system I am emulating has a switch that turns off color making it a BW display. So by feeding a monochrome palette you can emulate that too. Or you can use your own palette if you think the default palette doesn't match the original hardware (too saturated etc).
  • When fetching from video ram, the chip updates the internal variable fetchpos with the actual position on the horizontal line. Knowing the horizontal position is useful in my system to emulate the glitch that occurs when there is memory contention between CPU and VDG (the result is something we call "snow" effect).
  • variable tick speed: before the MC6847 was ticked at the fixed speed of 3.579 MHz; but in the system I use it is clocked at the same rate of the CPU (3.54 MHz). So it is now be possible to change it.

I also have another improvement that I did not commit because I haven't seen it in any other of you video chips. It's the ability to callback a function at the end of the video frame for updating the video. If find it very convenient to update the screen by that method. Tell me if you like the idea.

By the way, I'm using your MC6847 (and your Z80 as well) to emulate a Video Technology Laser 310 computer (aka Dick Smith VZ300). You can run it online here. It's the 4th system that I emulate with your "chips" 😄

(P.S. I know you're busy with other projects so I don't expect you to review this PR anytime soon, that's ok.)

@floooh
Copy link
Owner

floooh commented Mar 8, 2021

Hi, apologies for not responding to your PRs. I'm currently still busy with sokol-stuff, and I think it will be a few months before I can focus on emulator coding again. Just so you know :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants