Menu

#323 ULAplus interface

future
open
nobody
None
5
2018-12-30
2014-03-11
No

These patches try to emulate the ULAplus interface, based on previous work by Gilberto Almeida available in [patches:#209], [patches:#210], [patches:#211], [patches:#212] and [patches:#213].

Changelog:

  • Code has been modernized upto revision r5074.
  • Code has evolved from a Spectrum SE mode to a separate interface because ULAplus will soon be a real replacement for 48k models.
  • Support for GTK+ and win32 UIs.
  • Support for reading/writing to SZX snapshots.
  • Removed registerport_read as it is not defined in the current specification.
  • By default the whole palette is black and it is initialized to black on reset.
  • Don't invalidate display because of flash attribute.
  • Widgets menus are drawn with the standard palette and don't use the current ULAplus palette. It is the same with keyboard help.
  • As Philip suggested, ulaplus_dataport_write() refreshes display only on changes. However refreshing the whole display is inefficient and essentially wrong as it breaks palette cycling (see multicolour demo).
  • As Fred suggested, remove clut_update_palette() and uidisplay_plot8_64() by using a pre-computed palette of 256 colours.

Still pending:

  • Fix dirty display on palette cycling.
  • Save/load screen dumps.
  • Support more UIs. Currently unsupported UIs are fb, svga, wii and xlib.
  • Check non-sinclair machines, i.e., timex and pentagon.
  • Perhaps allow to load pre-configured palettes.
2 Attachments

Related

Feature Requests: #95
Patches: #209
Patches: #210
Patches: #211
Patches: #212
Patches: #213
Wiki: Fuse 1.2 Release Plan
Wiki: Fuse 1.2.2 Release Plan
Wiki: Fuse 1.3.0 Release Plan
Wiki: Fuse 1.3.1 Release Plan
Wiki: Fuse 1.3.2 Release Plan
Wiki: Fuse 1.3.3 Plan
Wiki: Fuse 1.3.4 Release Plan
Wiki: Fuse 1.3.5 Release Plan
Wiki: Fuse 1.3.6 Release Plan
Wiki: Fuse 1.3.7 Release Plan
Wiki: Fuse 1.3.8 Release Plan
Wiki: Fuse 1.4.0 Release Plan
Wiki: Fuse 1.4.1 Release Plan
Wiki: Fuse 1.5.0 Release Plan
Wiki: Fuse 1.5.1 Release Plan
Wiki: Fuse 1.5.2 Release Plan
Wiki: Fuse 1.5.3 Release Plan
Wiki: Fuse 1.5.4 Release Plan
Wiki: Fuse 1.5.5 Release Plan
Wiki: Fuse 1.5.6 Release Plan
Wiki: Fuse 1.5.7 Release Plan
Wiki: Fuse 1.6.0 Release Plan
Wiki: Fuse Next Release Plan

Discussion

<< < 1 2 3 (Page 3 of 3)
  • Sergio Baldoví

    Sergio Baldoví - 2017-06-19

    There was and attempt to extend the ULAplus block in the SZX specification with timex video modes but has not prospered.

    Nowadays, I think it's better/safer to use the common specification (without video mode) and only add the video mode field when needed.

     
    • Fredrick Meunier

      No objection from me.

       
  • Dave Matthews

    Dave Matthews - 2018-12-27

    Hi.

    Thanks for the work you've done for this. It's the 10th anniversary of ULAplus and a pack full of games either supporting it through AGD or with an integrated palette file was just released by the creator of the ULAplus, Andrew Owen. We're hanging out in https://www.facebook.com/groups/ULAplus/ and the files can also be found over there.

    Would it be possible for this work to be integrated into the main branch of Fuse?

     
  • Fredrick Meunier

    As soon as all the issues with the code are addressed as per the earlier comments on this issue we'd merge this straight away. I come back to attempting to address the gaps in movie recording support, but it is a big job and no-one else appears to be interested in taking on any of those changes.

    Unfortunately I can't see the group as I'm not on Facebook. Hopefully the content will be available on the public internet one day.

     
<< < 1 2 3 (Page 3 of 3)

Log in to post a comment.