Shop OBEX P1 Docs P2 Docs Learn Events
EmbeddedBASIC — Parallax Forums

EmbeddedBASIC

HumanoidoHumanoido Posts: 5,770
edited 2011-02-21 17:06 in Propeller 1
Does anyone have a copy of Embedded BASIC (before the tiny font TV driver was added)?

I'm trying to find a version with bigger characters that can be used with the 320 x 240 pixel Parallax TV.

Comments

  • BeanBean Posts: 8,129
    edited 2011-02-19 07:20
    Humanoido,
    Thanks for your interest. Here is a 32 column version of Embedded Basic.
    Try "COLOR 15" or "COLOR 240" for a black/white display.

    Let me know how it works for ya...

    This is actually version 0.13 with a few changes:
    Changed PEEKB to PEEK and POKEB to POKE
    Added FREE variable (returns free program space)
    Added SCREEN variable (returns address of screen memory)

    P.S. The binary is for the demo board.

    Bean
  • SapiehaSapieha Posts: 2,964
    edited 2011-02-19 08:32
    Hi Bean.

    FREE and SCREEN not function for me.
    UNKNOW COMMAND IN LINE 0

    Other things function correctly on PropCade



    Bean wrote: »
    Humanoido,
    Thanks for your interest. Here is a 32 column version of Embedded Basic.
    Try "COLOR 15" or "COLOR 240" for a black/white display.

    Let me know how it works for ya...

    This is actually version 0.13 with a few changes:
    Changed PEEKB to PEEK and POKEB to POKE
    Added FREE variable (returns free program space)
    Added SCREEN variable (returns address of screen memory)

    Bean
  • SapiehaSapieha Posts: 2,964
    edited 2011-02-19 08:35
    Hi Bean.

    Have other Question.

    Why PS2Keyboard use HUB to hold KeyKodes IF COG have place to have them in COG --- Give more place in HUB
  • HumanoidoHumanoido Posts: 5,770
    edited 2011-02-19 18:15
    Bean, thank you for your work. However, it's still too small! Bean, the other Embedded BASIC code also used 32 characters per line. This new version posted here has smaller vertical character height - even more difficult to see on the tiny Parallax TV.

    I suggest looking at FemtoBASIC Version 3.007 which looks perfect. It has 40 characters per line, the characters appear much larger (more vertical height) with an easy to read font on the 320x240 pixel screen. It has white characters on a normal no-color background with no smearing of text. If this helps to know which driver is used, when I open up the program, it has

    dsp : "tv_wtext" ' TV Windowed Text Driver ' TV

    I should also mention the color version FemtoBASIC 2.004 font appears too small on the screen.

    Can you adapt the FemtoBASIC screen driver and font and make it work with Embedded BASIC?
    Thank you sincerely.
  • potatoheadpotatohead Posts: 10,261
    edited 2011-02-19 19:58
    Shades of the movie "Brazil" come to mind. Little screens, with big fresnel lenses in front of them...

    http://www.ahleman.com/Props/ElectriClerk.html

    BTW: Highly recommended tech dystopia.
  • HumanoidoHumanoido Posts: 5,770
    edited 2011-02-19 23:46
    potatohead wrote: »
    Shades of the movie "Brazil" come to mind. Little screens, with big fresnel lenses in front of them...
    http://www.ahleman.com/Props/ElectriClerk.html
    BTW: Highly recommended tech dystopia.
    I'm experimenting with a 10.5 inch diameter Fresnel lens in front of the 3.5-inch Parallax monitor. It's interesting as tests show it nearly doubles the apparent screen size but at the cost of introducing reflections and some optical aberrations. I plan to do further tests with it. It may be useful with a good mount and a little helpful only if the screen fonts are already legible and tac sharp. More Fresnel information will appear in this thread http://forums.parallax.com/showthread.php?124495-Fill-the-Big-Brain&p=978692#post978692
    at post number 320
  • potatoheadpotatohead Posts: 10,261
    edited 2011-02-20 00:06
    You might try white on dark blue. It's got the best shot at blending artifacts together. Honestly, 32 column display should render fairly well on that TV. Both the horizontal and vertical resolutions are fairly well matched to the LCD resolution. That display is near the peak capacity of that LCD though. Maybe we can get some more configuration options in the next release or two. I think running monochrome might help a little, though not much. It's hard to configure for that display device, because it's then overly wasteful on devices with both more pixels, and a larger viewing area. Viewing area is the primary issue here though, IMHO.

    The core problem you've got is just lack of sufficient pixels per arc degree in your field of natural vision. I would recommend you use a moderate set of reading glasses over one of those lenses. They do not have very good distant optical characteristics, really only able to perform at fraction of inch range from the source image. A lens with a longer focal length would be good, but expensive to get a large one. The other alternative is to simply put a lens closer to your eye, to use the shorter focal length to best advantage, keeping optical distortion to a minimum.

    ...or get a slightly larger display. One that has even 1/3 more area, even with the same pixels, would deliver a considerable improvement to you, though the larger ones often offer more pixels anyway.
  • HumanoidoHumanoido Posts: 5,770
    edited 2011-02-20 10:09
    potatohead wrote: »
    You might try white on dark blue. It's got the best shot at blending artifacts together. Honestly, 32 column display should render fairly well on that TV. Both the horizontal and vertical resolutions are fairly well matched to the LCD resolution. That display is near the peak capacity of that LCD though. Maybe we can get some more configuration options in the next release or two. I think running monochrome might help a little, though not much. It's hard to configure for that display device, because it's then overly wasteful on devices with both more pixels, and a larger viewing area. Viewing area is the primary issue here though, IMHO.

    The core problem you've got is just lack of sufficient pixels per arc degree in your field of natural vision. I would recommend you use a moderate set of reading glasses over one of those lenses. They do not have very good distant optical characteristics, really only able to perform at fraction of inch range from the source image. A lens with a longer focal length would be good, but expensive to get a large one. The other alternative is to simply put a lens closer to your eye, to use the shorter focal length to best advantage, keeping optical distortion to a minimum.

    ...or get a slightly larger display. One that has even 1/3 more area, even with the same pixels, would deliver a considerable improvement to you, though the larger ones often offer more pixels anyway.
    I hear you! But, consider this... the 40 column tv driver in the version mentioned above for Mike Green's FemtoBASIC is perfect, tack sharp, easy to see. Can you explain that??

    With Embedded BASIC, the font is displayed with artifacts as you can see in the photos. This is the issue here, not human vision. The font is simply smearing and has problems rendering. The one version, as mentioned, the font is so small it becomes unreadable.

    The real problem is the excellent designers of the TV drivers don't have the Parallax 3.5-inch monitor for testing. Well, you can run it past me and I'll test it. I'd say just use the Mike Green TV driver in the version mentioned and everything will be tack sharp.
  • potatoheadpotatohead Posts: 10,261
    edited 2011-02-20 11:16
    I do know what that is.

    The spectrum driver, and my current driver do "real" color phase shifting for a proper signal. The Parallax reference driver does this too. On higher resolution devices, that renders better than the simple non-color phase shifting driver you are talking about. AiGeneric does the same simple signal, as do some of my older drivers for TV.

    Problem with those, is one can't really do higher character densities, and in fact, 40 columns can be at issue with more color combination than not.

    This driver has a non-interlaced mode that might help some with that. Depending on what your display does with a full interlaced signal, that might be the better option too.

    There isn't a good way to resolve those issues, other than to plug in various drivers for displays. No one size fits all is possible. IMHO, it would be difficult, if not impossible to pack the various signal options into a single COG too.

    That's the real problem. Simple, low resolution displays perform differently on signals than higher resolution ones do. And I didn't say your vision was bad, only that you don't have enough detail per arc angle of your field of vision with that display, and that display not having enough pixels to really display a higher quality signal.

    The lower quality signal output from the older drivers would work well on that display, but rather poorly on higher resolution ones.

    I don't know that there is a good answer, other than to tear into the BASIC and offer up options for various drivers. The issue there is the memory foot-print and display options. What will work well on that little TV won't really work well on larger devices and or higher resolutions.
  • HumanoidoHumanoido Posts: 5,770
    edited 2011-02-20 13:56
    potatohead wrote: »
    I do know what that is.

    The spectrum driver, and my current driver do "real" color phase shifting for a proper signal. The Parallax reference driver does this too. On higher resolution devices, that renders better than the simple non-color phase shifting driver you are talking about. AiGeneric does the same simple signal, as do some of my older drivers for TV.

    Problem with those, is one can't really do higher character densities, and in fact, 40 columns can be at issue with more color combination than not.

    This driver has a non-interlaced mode that might help some with that. Depending on what your display does with a full interlaced signal, that might be the better option too.

    There isn't a good way to resolve those issues, other than to plug in various drivers for displays. No one size fits all is possible. IMHO, it would be difficult, if not impossible to pack the various signal options into a single COG too.

    That's the real problem. Simple, low resolution displays perform differently on signals than higher resolution ones do. And I didn't say your vision was bad, only that you don't have enough detail per arc angle of your field of vision with that display, and that display not having enough pixels to really display a higher quality signal.

    The lower quality signal output from the older drivers would work well on that display, but rather poorly on higher resolution ones.

    I don't know that there is a good answer, other than to tear into the BASIC and offer up options for various drivers. The issue there is the memory foot-print and display options. What will work well on that little TV won't really work well on larger devices and or higher resolutions.
    The answer here is simple. Put this driver into EmbeddedBASIC for a specific version that works with the simple low resolution TV.
    ''*****************************
    ''*    TV_WText 40x13 v1.2    *
    ''*      by Phil Pilgrim      *
    ''*     Based on TV_Text,     *
    ''*         which is          *
    ''*  (C) 2006 Parallax, Inc.  *
    ''*****************************
    
    The next question is what will it take to accomplish this?
  • HumanoidoHumanoido Posts: 5,770
    edited 2011-02-20 17:39
  • HumanoidoHumanoido Posts: 5,770
    edited 2011-02-21 17:06
    If anyone has any tips for putting the driver into EmbeddedBasic, I'm all ears..
Sign In or Register to comment.