Skip to content

v0.40.0-preview

Latest
Compare
Choose a tag to compare
@JetSetIlly JetSetIlly released this 13 Jan 21:32

Changes since v0.35.3

This release is a bit different than normal. I've been sitting on some major changes to the code and I haven't been wanting to release them until it was done. However, I think the project will benefit from people seeing it and having the opportunity to give feedback but with the understanding that some of these changes are not final.

Colour

The major change in this release relates to how colour is created. Surprisingly, colour on the 2600 is a controversial topic. For this reason the default range of colours in this version of Gopher2600 is by no means the final article. The default range is something that is likely to change in future versions.

If you want to change the colours then you can do so by pressing F10 and selecting the Television tab

image

Very briefly: the top four sliders represent what you might find on your television's front panel, while the Phase control underneath represents the adjustment potentiometer hidden in the console itself. There's no other way of controlling the colour (and there very likely won't be) but you should be able to control and create the palette you expect using just those five controls.

Rendering, TV Bevel and Audio

Other changes in this release include a much improved rendering pipeline. This should result in less glitching for ROMs that use "flicker kernels" and in particular, when using a compositing window manager on X11.

There is now also a real TV "bevel" as opposed to the goofy option that existed before. It's enabled by default but you can disable it from the CRT tab of the preferences window (press F10 for the preferences window).

image

The CRT options are simplified for this release and the RF Noise / Ghosting options replacing some of the less successful options in previous releases.

For now there is only one bevel option. I think there will be an option to add your own in the future but for now, the one we have includes screen reflections and a very basic method of light reflection (on the TV surround from the screen).

Audio is also improved and a simplified method for regulating the length of the audio buffer means there should be less chance of audio dropout (or lag)

Configuration Files

One of the planned changes for the project is an improved handling of user preferences. I've not implemented this yet, so in the meantime I recommend that you delete your existing configuration files and start over. It should be okay if you don't, but I can't guarantee that the settings you have now will look okay in conjunction with the above changes.

Information about configuration files and where to find them is in the project wiki

Blog

I've also started a blog which you may be interested in following. https://jetsetilly.github.io/Gopher2600-Blog/ I plan to update it with development discussion from time to time. My next article will be on colour generation: how I've implemented it and why it's such a big issue.

Other Changes

In addition to the major changes described above, this release also has some smaller maintenance changes.

  • Bug Fixes
  • TIA Corrections
    • the moment when NUSIZx is handled during the TIA sub-cycle
    • reset condition for ball
  • Keypad
    • Corrected behaviour of the '3' key for the right keypad peripheral
  • Debugger
  • Added CHANGED option to WATCH command
  • Improved feedback messaging for the PERIPHERAL command