Shop OBEX P1 Docs P2 Docs Learn Events
PROJECT: Font/Graphics Editor(s) — Parallax Forums

PROJECT: Font/Graphics Editor(s)

trodosstrodoss Posts: 577
edited 2010-08-09 06:49 in Propeller 1
Listed below are the font/graphics editor(s) that I have been working on.



PC-Based Code
Font Generator (v1.6)
A command-line application used to create "font" (1bpp, 2bpp 8x8 characters) to be used with AIGeneric or Potato_Text-based code. It converts a black/white bitmap image into the Spin source that can be included with your applications.

Graphics Convert (v1.0)
A command-line application used to convert various graphics format files to output usable by either Font Generator or Propeller-based display objects.

Font Generator an Graphics Convert are C# command-line applications (source included) compiled under .NET framework 2.0 (v2.0.50727). If you have the Mono runtime installed on Linux, you should be able to it as well.

Both of the applications are bundled int the Graphics Utilities archive.


Propeller-Based Code
Graphics Editor (v0.5)

A Propeller (Spin) application used to create sprite/graphics in multiple modes and dimensions.
Graphics Editor, unlike the Font Generator, will supports editing/viewing of the characters in multiple "View Modes" (such as 8x8 or 16x16), so that game-style sprite graphics can be created with the characters.











Visit the Propeller Powered SIGfourm kindly hosted at Savage Circuits

Game(s) <a target="_blank" href="http://forums.parallax.com/forums/default.aspx?f=33&m=309427&quot; target=_blank>Mythic Flight
</A>Utilities Font Editors (AIGeneric, Potato_Text, etc.)

Post Edited (trodoss) : 8/4/2010 6:46:26 PM GMT

Comments

  • trodosstrodoss Posts: 577
    edited 2009-08-20 13:42
    Attached is a screenshot of the Propeller-based Graphics Editor from Gear.
    791 x 480 - 33K
  • trodosstrodoss Posts: 577
    edited 2009-08-20 14:31
    Quick Note:
    I am working through some issues on the Prop-based graphics editor (saving in the .64c format), but hope to have the code released soon.

    From the other thread, there is already a 'feature request' of being able to change the color of the characters in the 'Preveiw' pane from OBC. It should be possible in some fashion, but have not looked into that yet.
  • Bill HenningBill Henning Posts: 6,445
    edited 2009-08-20 21:27
    Nice work!

    Feature requests are being accepted? Well... in that case...

    - save "DAT" files onto SD cards that can be included into Spin
    - two bit per pixel format please [noparse]:)[/noparse]
    - eight bit per pixel format please [noparse]:)[/noparse] [noparse]:)[/noparse] [noparse]:)[/noparse]
    - for one and two bit per pixel modes 8/16/24/32 bits wide, N lines tall
    - for eight bits per pixel Hres=8..32 and Vres=8..32 would be nice
    trodoss said...
    Quick Note:
    I am working through some issues on the Prop-based graphics editor (saving in the .64c format), but hope to have the code released soon.

    From the other thread, there is already a 'feature request' of being able to change the color of the characters in the 'Preveiw' pane from OBC. It should be possible in some fashion, but have not looked into that yet.
    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Please use mikronauts _at_ gmail _dot_ com to contact me off-forum, my PM is almost totally full
    Morpheus & Mem+dual Prop SBC w/ 512KB kit $119.95, 2MB memory IO board kit $89.95, both kits $189.95
    www.mikronauts.com - my site 6.250MHz custom Crystals for running Propellers at 100MHz
    Las - Large model assembler for the Propeller Largos - a feature full nano operating system for the Propeller
  • Oldbitcollector (Jeff)Oldbitcollector (Jeff) Posts: 8,091
    edited 2009-08-21 02:11
    2nd vote for spin files that can be included as an object in the code...

    This project appears to be coming along... Perhaps an HSS sound editor for the Prop is in order...
    Hmmmm.. Maybe after the expo... [noparse]:)[/noparse]

    OBC

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    New to the Propeller?

    Visit the: The Propeller Pages @ Warranty Void.
  • trodosstrodoss Posts: 577
    edited 2009-08-21 13:47
    @Bill, OBC
    ...By .spin files, are you meaning something like what FontGenerator generates (for AIGeneric?) I had been thinking of writing out "raw" bitmap files that could be either included in a DAT section or could be loaded with something like frsw in an application. If you needed to 'view' it you would use the Graphics Editor, right? ...At least, that was what I was thinking [noparse];)[/noparse]

    [noparse][[/noparse]Edit:] As a side note, I will probably "scrap" the .64c output. It is not that it can't be done... It sounds like there is not significant interest.

    Lots of excellent feedback from a lot of sources! I will try to see what can be done, and "do my homework." I can already tell that I will either need a larger edit pane or support scrolling the image being edited, and that there would need to be lots of "options" for view modes and for saving.

    I will change the name to "Sprite Editor," in the future so that it is not confused with an "image editor" program.

    Thanks!

    Post Edited (trodoss) : 8/21/2009 1:58:11 PM GMT
  • Oldbitcollector (Jeff)Oldbitcollector (Jeff) Posts: 8,091
    edited 2009-08-21 14:06
    From my point of view 64c access is really only interesting for providing access to the large
    library of .64c font files which can be downloaded. I actually wouldn't mind being able to
    import them into your program, but I really would rather have .spin output like your original
    program does. You'll need some sort of file format for saving the files so that they can be re-edited,
    so I would imagine that files would be loaded/saved as BMP, then exported to .spin.

    I don't think "sprite editor" really applies to this program. It might add confusion for new
    programmers, since we really aren't using sprites.

    You've got me excited by this project, as I can see this becoming part of a game-creation kit
    for people who want to learn how to make easy games. Some of the concepts in the
    Hydra book require a good deal of spin knowledge. This will lower the point of entry for new users.

    OBC

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    New to the Propeller?

    Visit the: The Propeller Pages @ Warranty Void.
  • trodosstrodoss Posts: 577
    edited 2009-08-21 14:14
    Also, from the other thread...
    I had asked if FontGenerator should be rewritten in say GCC, to avoid having to install the Mono runtime for Linux users. Any strong feelings either way?
  • Oldbitcollector (Jeff)Oldbitcollector (Jeff) Posts: 8,091
    edited 2009-08-21 14:22
    Not from here... Mono is pretty much standard install in most modern linux versions.
    I don't mind using it. It's pretty easy to create a "bash" process to execute it with mono.

    OBC

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    New to the Propeller?

    Visit the: The Propeller Pages @ Warranty Void.
  • trodosstrodoss Posts: 577
    edited 2009-08-21 14:39
    @OBC,

    "Graphics" can imply "sprite + palette mapping" (or to me at least), but I can also see that in this day and age "sprite" is a nebulous term. Eh, maybe I should leave the name well enough alone. Maybe I should call it something like "Splat" ... or, maybe not. Might end up with another "Spinner" [noparse];)[/noparse]

    I had been going down the path though of "dynamically loading" the font/graphics in a pre-existing load format (.64c) that AIGeneric supports.

    Interesting about the .spin output over just "raw" data that could be included in a DAT section. I am guessing that the aspect of it being a "visual reference" of the characters is important?

    As far as "re-editing," yes, one would have to include a form of file header on the data to load back in the configuration in some sort of "internal" file format. I Don't know about using "BMP" (Msft Bitmap) format though, as it includes palettes/RLE. Not a good match for the kind of data one would be working with.

    [noparse][[/noparse]Edit:] Re: Mono -- Yes, that is what I have found, but have heard the argument that it takes 100+ megs to load the Mono runtime if it is not present.

    Post Edited (trodoss) : 8/21/2009 2:46:53 PM GMT
  • Oldbitcollector (Jeff)Oldbitcollector (Jeff) Posts: 8,091
    edited 2009-09-07 02:49
    Just thought I'd bump this thread and see if you've done more with this project??

    Baggers was kind enough to include support for the fonts from Aigeneric,
    so your current Font editor is useful in this thread as well now.
    http://forums.parallax.com/showthread.php?p=838222

    OBC

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    New to the Propeller?

    Visit the: The Propeller Pages @ Warranty Void.
  • trodosstrodoss Posts: 577
    edited 2009-09-08 03:31
    OBC,
    Yes, there has been progress, but I am re-writing the 'engine' it was written on (originally it was AIGeneric itself), which has been a little slow. It has been a great learning experience though. I now have a *much* better understanding of how the video timing works on the Propeller.

    I have been investigating the 'fat pixel' mode graphics as well. Interesting that the old 'Font Generator' has found new life [noparse];)[/noparse]
  • Bill HenningBill Henning Posts: 6,445
    edited 2009-09-14 02:57
    trodoss,

    Very cool... for now I did a quick generator, where I design fonts as C strings, and it spits out a valid DAT file for Spin - but I am looking forward to trying your program!
    trodoss said...
    OBC,
    Yes, there has been progress, but I am re-writing the 'engine' it was written on (originally it was AIGeneric itself), which has been a little slow. It has been a great learning experience though. I now have a *much* better understanding of how the video timing works on the Propeller.

    I have been investigating the 'fat pixel' mode graphics as well. Interesting that the old 'Font Generator' has found new life [noparse];)[/noparse]
    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Please use mikronauts _at_ gmail _dot_ com to contact me off-forum, my PM is almost totally full
    Morpheus & Mem+dual Prop SBC w/ 512KB kit $119.95, 2MB memory IO board kit $89.95, both kits $189.95
    www.mikronauts.com - my site 6.250MHz custom Crystals for running Propellers at 100MHz
    Las - Large model assembler for the Propeller Largos - a feature full nano operating system for the Propeller
  • Oldbitcollector (Jeff)Oldbitcollector (Jeff) Posts: 8,091
    edited 2009-12-18 15:22
    This is AWESOME!

    We are well on our way to a game creation kit with this on-prop editor!

    Sorry it took me so long to respond. I'm moving my Propstuff back down
    into the basement shop with all the Christmas stuff upstairs this season.
    (Got some shop cleaning and organizing going on to get setup.)

    OBC

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    New to the Propeller?

    Visit the: The Propeller Pages @ Warranty Void.
  • trodosstrodoss Posts: 577
    edited 2009-12-21 02:38
    Thanks. Still a "work in progress," but is coming along.
    [noparse][[/noparse]Edit:] The "Import BMP" functionality needs to be updated--I finished it, and should be with the next release.

    There are a few things I will be trying to tackle:
    1) Converting to the new PotatoHead 8x8 text driver
    2) How to edit without having to have an SD card (lots of different options to investigate--PC client maybe?)
    3) Tackling editing more than 1BPP (will be tackling 4-color soon)
    4) Editing "masks" (I had a version working, will be a matter of getting it done)

    ...Just got back from Dallas this afternoon. Hope to have a little more time this week.

    --trodoss

    Post Edited (trodoss) : 12/22/2009 5:08:45 AM GMT
  • trodosstrodoss Posts: 577
    edited 2009-12-29 15:54
    Posted a minor update (0.5) of the Graphics Editor
    The "Import BMP" is now fully included/functioning, and the Help/About windows are present.

    The 1BPP Graphics Editor is now converting to the new Potatohead 8x8 display driver.
    Other 'Graphics Editor' apps will likely have to have their own 'custom' display driver to handle 4-color graphics.

    [noparse][[/noparse]Edit:] After working with Potato_Text,·it looks like·the code·will have to be 'smart' in how the system attempts to refresh the screen (on an action, instead of every main loop cycle).· There is also not an equivelent to GetChar (from AIGeneric), so I had to mod the Potato_Text_Start to include something similar.

    If it requires a large amount of rework, it may not be worth the effort.· It may be easier to add the 'autodetect' code from Potato_Text to the Graphics Editor, and work from there, at least for this app.

    Post Edited (trodoss) : 12/29/2009 11:02:18 PM GMT
  • Oldbitcollector (Jeff)Oldbitcollector (Jeff) Posts: 8,091
    edited 2010-01-02 06:32
    Running into what looks like a video issue with this.. Older NTSC monitor.

    What is your setup on the devevopment end?

    OBC

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    New to the Propeller?

    Visit the: The Propeller Pages @ Warranty Void.
  • Oldbitcollector (Jeff)Oldbitcollector (Jeff) Posts: 8,091
    edited 2010-01-03 22:31
    Nevermind.. It was a 2am dumb error on my part.

    I've got a couple of SD cards which appear to have worn out.

    OBC

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    New to the Propeller?

    Visit the: The Propeller Pages @ Warranty Void.
  • trodosstrodoss Posts: 577
    edited 2010-01-04 04:20
    I guess you are not still having a display issue then?· If so,·and there is something that needs to be done let me know.

    Was it the SD card that was causing your video problem?·

    --trodoss
  • trodosstrodoss Posts: 577
    edited 2010-01-11 19:17
    Interesting development in progress by matb of support of the TV_Text 32x16 ROM font:
    http://forums.parallax.com/showthread.php?p=871654

    Edit: Update coming soon to the FontGenerator code.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Game(s) Mythic Flight (0.9)
    Utilities Font Editors (AIGeneric, Potato_Text, etc.)

    Post Edited (trodoss) : 1/19/2010 7:06:14 PM GMT
  • trodosstrodoss Posts: 577
    edited 2010-03-04 16:00
    Updated the FontGenerator (v.1.2), incorporating matb's code, and adding an additional 2bpp format.

    --trodoss

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Game(s) Mythic Flight
    Utilities Font Editors (AIGeneric, Potato_Text, etc.)
  • Oldbitcollector (Jeff)Oldbitcollector (Jeff) Posts: 8,091
    edited 2010-03-08 14:49
    I think I spotted a minor bug in the ORE conversion.
    (At least with the included example graphic.)

    I get some really funky effects when I attempt to use character $00 for anything but a blank square.

    Any chance of a feature to go backwards? Something which will read the word entries and
    move them back into a .bmp? (As long as I don't add spaces or carriage returns?)

    OBC

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    New to the Propeller?

    Visit the: The Propeller Pages @ Warranty Void.
  • potatoheadpotatohead Posts: 10,261
    edited 2010-03-08 16:44
    Don't use $00

    That driver uses the simple NTSC signal. Color smearing will happen at 256 pixels and above, and there are no color lookups on it. Have to use $02, because $00 is sync, and if mixed with pixels, the TV is highly likely to trigger on it, distorting the display.

    Potato Text multi-color is in development, BTW.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Propeller Wiki: Share the coolness!
    8x8 color 80 Column NTSC Text Object
    Safety Tip: Life is as good as YOU think it is!
  • trodosstrodoss Posts: 577
    edited 2010-03-08 17:13
    @OBC,
    Really isn't a bug, since it is just converting patterns, and not assigning colors.· Black = 0, White = 1, Red = 3, Blue = 4.· Those colors are being used symbolically.· I figured using blue/red would be easier to see than trying to edit in "greyscale."

    Like Potatohead said, use $02 instead of $00.· Stick to the "safe" colors.· I didn't put in a lookup table in the code.· Potato has this table in code (think it is the old "mode 8" driver):
    {    $02, $03, $04, $05, $06, $07                      Six intensities
        $19, $1a, $1b, $1c, $1d, $1e, $98, $af            Magenta
        $29, $2a, $2b, $2c, $2d, $2e, $a8, $bf
        $39, $3a, $3b, $3c, $3d, $3e, $b8, $cf
        $49, $4a, $4b, $4c, $4d, $4e, $c8, $df            Red
        $59, $5a, $5b, $5c, $5d, $5e, $d8, $ef            
        $69, $6a, $6b, $6c, $6d, $6e, $e8, $ff            Orange
        $79, $7a, $7b, $7c, $7d, $7e, $f8, $0f
        $89, $8a, $8b, $8c, $8d, $8e, $08, $1f            
        $99, $9a, $9b, $9c, $9d, $9e, $18, $2f            Green
        $a9, $aa, $ab, $ac, $ad, $ae, $28, $3f            
        $b9, $ba, $bb, $bc, $bd, $be, $38, $4f
        $c9, $ca, $cb, $cc, $cd, $ce, $48, $5f            
        $d9, $da, $db, $dc, $dd, $de, $58, $6f            Blue
        $e9, $ea, $eb, $ec, $ed, $ee, $68, $7f            
        $f9, $fa, $fb, $fc, $fd, $fe, $78, $8f
                                                            
        This table is missing one hue, those values are:        $0a, $0b, $0c, $0d, $0e, $0f    Darker Blue  
    }
    

    @Potatohead,
    Great to hear that you are working on another driver!·

    Technically, yes, code could be written to consume the generated .spin code and produce a bitmap file, but that sounds like a "one shot use" case.· Are you needing to recover graphics from an older set?

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Game(s) Mythic Flight
    Utilities Font Editors (AIGeneric, Potato_Text, etc.)
  • Oldbitcollector (Jeff)Oldbitcollector (Jeff) Posts: 8,091
    edited 2010-03-08 17:41
    Thanks for posting that color chart!

    I'll sit down tonight and see if I can establish some additional color names for the CON section.
    It'll help for the game creation stuff.

    OBC

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    New to the Propeller?

    Visit the: The Propeller Pages @ Warranty Void.
  • Oldbitcollector (Jeff)Oldbitcollector (Jeff) Posts: 8,091
    edited 2010-03-08 17:44
    trodoss said...


    Technically, yes, code could be written to consume the generated .spin code and produce a bitmap file, but that sounds like a "one shot use" case. Are you needing to recover graphics from an older set?

    Not really. For some reason I find myself creating the initial graphics with the BMP, then as you can see wind up
    doing my fine tuning under spin. If it isn't a difficult trick, I'd love to be able to get my changes back upward
    to the .bmp if for no other reason than to be able to distribute the file with the game for others to modify.

    Also if you could read only the "word" entries, then a final copy of the font could be re-cooked off FontGenerator
    to clean up the comments entries.

    OBC

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    New to the Propeller?

    Visit the: The Propeller Pages @ Warranty Void.
  • SapiehaSapieha Posts: 2,964
    edited 2010-08-07 04:52
    trodoss wrote: »
    Listed below are the font/graphics editor(s) that I have been working on.



    PC-Based Code
    Font Generator (v1.6)
    A command-line application used to create "font" (1bpp, 2bpp 8x8 characters) to be used with AIGeneric or Potato_Text-based code. It converts a black/white bitmap image into the Spin source that can be included with your applications.

    Graphics Convert (v1.0)
    A command-line application used to convert various graphics format files to output usable by either Font Generator or Propeller-based display objects.

    Hi.
    File GraphicsUtilities16.zip Are broken.


  • trodosstrodoss Posts: 577
    edited 2010-08-07 11:45
    @Sapieha,
    Some of the attachments on the "new" forum have been having problems (they have been truncated/corrupted in the conversion).

    You might check on this thread in the old forum:
    http://forums.parallaxinc.com/forums/default.aspx?f=33&m=377666

    Hopefully the attachment there will download correctly for you. If not, PM me and I will find another way to get that attachment to you.

    --trodoss
  • trodosstrodoss Posts: 577
    edited 2010-08-09 06:49
    Jim restored the attachments on the post, so you should be able to download these from the first post in the thread again.

    --trodoss
Sign In or Register to comment.