Shop OBEX P1 Docs P2 Docs Learn Events
[FYI] 320x256 (SXGA) custom driver (single cog) — Parallax Forums

[FYI] 320x256 (SXGA) custom driver (single cog)

kuronekokuroneko Posts: 3,623
edited 2013-05-04 14:59 in Propeller 1
This is a custom job for someone who - unfortunately - can't use it as his monitor chokes on the used mode. The timing is 1280x1024@60 (108MHz). With the given resolution I can get away with 27MHz pixel clock but use 26.66MHz instead (stability). Needless to say, my monitor (1280x1024 native) doesn't have any issue with it.

I'd appreciate it if someone out here could run though the demo to see if it works for them. It displays 40x32 characters alternating with a 320x256 random pixel pattern. Colour resolution stays at 40x32 (16xFG, 8xBG, blink attribute). If the blink effect is an issue for you activate the & $7F in the demo's print method. Requires 80MHz demoboard setup.

Thanks!

Update: Added new version (May) with higher colour resolution (40x64, i.e. one palette entry for 8x4 pixels) like originally intended. With 4 colour entries per long the high word holds the blink colour pair (FG/BG) and the low word the normal colour pair.

Update: Added basic cursor support (solid block). Code available from GitHub.

Comments

  • avsa242avsa242 Posts: 452
    edited 2013-04-21 07:16
    kuroneko,

    This works on an old Lextron 4:3 14" LCD.
    https://www.youtube.com/watch?v=nKPOwpjzKeo&feature=youtube_gdata_player

    Cheers,
    Jesse
  • ratronicratronic Posts: 1,451
    edited 2013-04-21 09:11
    kuroneko I modified "vgrp" and "sgrp" in the driver to use the PropBOE on an older Acer 4x3 LCD monitor and it works great.
  • StephenMooreStephenMoore Posts: 188
    edited 2013-04-21 12:33
    Works on C3 board with Coretronic Series 755 LCD but does show out of range warning (loses 2 cols off edge of screen).

    An excellent driver. I'll be using it.

    Thanks!

    sm
  • kuronekokuroneko Posts: 3,623
    edited 2013-04-21 17:51
    Works on C3 board with Coretronic Series 755 LCD but does show out of range warning (loses 2 cols off edge of screen).
    Are we talking PV755A? According to the monitor's manual 1280x1024 is really pushing it (1024x768 max). If you want I can look into adjusting it for 40x30 (640x480) + current colour configuration.

    @all: Thanks for running the test!
  • StephenMooreStephenMoore Posts: 188
    edited 2013-04-21 20:25
    Yes it is PV755A. Didn't mean to 'run the code through the ringer' so to speak. I also have a Samsung SyncMaster 710v for which the driver completes nicely.
  • kuronekokuroneko Posts: 3,623
    edited 2013-04-21 23:01
    On a more general note, one might say the colour handling needs some more work (this release was just to get it works feedback). Right now the driver includes a hardwired palette for foreground and background colours. Is this something users feel comfortable to change for themselves or would built-in palette update functionality be better (i.e. update once per frame if requested)?

    Minor change, quick update (see top post).
  • kuronekokuroneko Posts: 3,623
    edited 2013-05-03 19:16
    Final update for this driver attached to [post=1178748]top post[/post]. Pixel resolution is 320x240, colour resolution now 40x64. While the original h/w had a hardwired palette this driver is more relaxed in that it allows you to effectively assign any FG/BG combination to blink/normal colours.
  • User NameUser Name Posts: 1,451
    edited 2013-05-03 21:16
    I get such a kick studying this code! It's a textbook of cleverness and coding efficiency. It is also masterful in its use of directives and expressions. Born earlier, Marko, you would have been another Neils Bohr or Johannes Kepler, I figure.
  • kuronekokuroneko Posts: 3,623
    edited 2013-05-03 21:47
    You're welcome! The [thread=146085]100xM[/thread] was actually worse in terms of making it fit (one long left) but I didn't release the source for that one.
  • User NameUser Name Posts: 1,451
    edited 2013-05-04 14:59
    That pressed for space, I can only imagine what you pulled out of you vast bag of tricks! Little wonder you prefer to keep the source private. :)
Sign In or Register to comment.