Shop OBEX P1 Docs P2 Docs Learn Events
The World according to a Prop — Parallax Forums

The World according to a Prop

BaggersBaggers Posts: 3,019
edited 2010-01-13 10:35 in Propeller 1
Hi All,

I've been wanting to do this for a long while, I've finally had a little spare time this evening, and instead of doing HERO ( yes, I know I should have done HERO instead ) I wanted to do this, and test it out. This is also for the Aviators out there, I don't have a GPS system for the prop, but you should easily be able to add it, and it's 433 pixels in X and 433 pixels in Y for 10 degrees, top left of map is·X -180, 90 Y bottom right of map is 180, -90

Sorry it's 433x433 for 10 degrees, but that's the size of the image. [noparse]:D[/noparse] I don't have the luxury of being able to create it at any specific size lol.

Just place "world.bit" in the root of a freshly formatted SD card ( as it gets the first sector, then reads from that, and offsets into the file for seeking )

Cursors to move around, and 1 to 0 to change the movement step, 1=1 pixel, 2=4, 3=8, 4=16, etc.

It's initially set up for Hybrid, but you can change it to your settings.

This is a SMALL version of the map.
worldsml.png


The zip file is too BIG for the forum, so get it from here

http://www.PropGFX.co.uk/Baggers/JB_World.zip

Let me know what you think, if it needs changing etc.


▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
http://www.propgfx.co.uk/forum/·home of the PropGFX Lite

·

Comments

  • mparkmpark Posts: 1,305
    edited 2010-01-11 10:55
    I think this is going to be amazing, but the display starts tearing as I scroll away from the starting point. I'm using NTSC.

    For example, if I go east, by the time I get to Manchester the top of the display is shifting sideways. The farther I go, the worse it gets.
  • BaggersBaggers Posts: 3,019
    edited 2010-01-11 11:14
    Hi mpark, glad you like it so far [noparse]:D[/noparse]

    BTW is it a freshly-formatted drive? can you video what's wrong? as I'm not 100% sure on what you're describing.

    It does tear on update, as it's reading 96KB from SD to put on screen.
    96 scanlines, each reading 1KB eg 2 x 512byte sectors, incase it's stradling over two sectors.

    Baggers.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    http://www.propgfx.co.uk/forum/·home of the PropGFX Lite

    ·
  • mparkmpark Posts: 1,305
    edited 2010-01-11 12:25
    Pic attached. SD card was freshly formatted.
    640 x 480 - 139K
  • heaterheater Posts: 3,370
    edited 2010-01-11 12:45
    Wow "PropellerEarth".

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    For me, the past is not over yet.
  • BaggersBaggers Posts: 3,019
    edited 2010-01-11 13:29
    mpark, Ah, right, not to worry, it must be something to do with the file not being fully sequential, as the data is stored in Prop waitvid colour data, so any <2 values will mess around with the tv sync, which is what I'm guessing is going on there, so I'm going to now do a mod to scan and fix the data before putting it to the screen, then if you can try that for me, that would be great [noparse];)[/noparse] once I finish work for the day, I'll fix it and post.

    heater, thanks [noparse]:)[/noparse] yeah something like that [noparse]:D[/noparse]

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    http://www.propgfx.co.uk/forum/·home of the PropGFX Lite

    ·
  • Cluso99Cluso99 Posts: 18,069
    edited 2010-01-11 13:38
    Baggers: Now all you will have to do is get the maritime maps with higher definition and I can sail by them LOL

    Congratulations !

    Now we will be able to mark all the PropellerHeads locations smile.gif

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Links to other interesting threads:

    · Home of the MultiBladeProps: TriBlade,·RamBlade,·SixBlade, website
    · Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
    · Prop Tools under Development or Completed (Index)
    · Emulators: CPUs Z80 etc; Micros Altair etc;· Terminals·VT100 etc; (Index) ZiCog (Z80) , MoCog (6809)
    · Search the Propeller forums·(uses advanced Google search)
    My cruising website is: ·www.bluemagic.biz·· MultiBladeProp is: www.bluemagic.biz/cluso.htm
  • BaggersBaggers Posts: 3,019
    edited 2010-01-11 13:43
    Thanks Cluso99, Thought you'd like it! how big are the maritime maps in resolution? this map is 15600x7800 pixels.
    although not that this is the largest it can go, as it can go as big as your SD I suppose lol. that map is only 118MByte in size, so tiny really.
    I'd just need to have a GPS to coord conversion, for whatever the map area covers, then it should be easy to do for you. [noparse];)[/noparse]

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    http://www.propgfx.co.uk/forum/·home of the PropGFX Lite

    ·
  • Dr_AculaDr_Acula Posts: 5,484
    edited 2010-01-11 13:55
    Can you explain more about this: "It does tear on update, as it's reading 96KB from SD to put on screen."

    So - reading the sd card in real time to put it on the display?? Is that fast enough?

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    www.smarthome.viviti.com/propeller
  • BaggersBaggers Posts: 3,019
    edited 2010-01-11 14:05
    Dr_A, it's using an internal HUB-RAM buffer for the display, but when you move, it does an update, which directly reads in 96*1KB slices from the map, to update the screen, this is what is giving a "tear" ie, you can see it updating as you scroll the screen.
    it's not fast enough to have a real time display from SD, besides, I don't think you'd want to write to SD all the time to update it [noparse]:D[/noparse]. 96KB is a lot of memory, and maybe fast enough for Rayman's LCD's ( don't quote me on that though ) but if it was on his LCD, and reading from SD, I wouldn't have a 128x96 resolution [noparse]:)[/noparse]

    Also the reason it reads 1KB for each scanline even though they are only 128bytes is in case it crosses over a sector boundary.

    If people want me to continue with this, I will optimise it to scroll the screen ram, and only update the edge strips, this should then also speed it up, quite a bit. but it will go slow initially when it crosses over a sector boundary, if scrolling by a large amount.

    Baggers.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    http://www.propgfx.co.uk/forum/·home of the PropGFX Lite

    ·
  • Dr_AculaDr_Acula Posts: 5,484
    edited 2010-01-11 22:17
    Ah, I see. Very cunning.

    Would it be faster to read it from external sram rather than sd card?

    I'm thinking you already have the hardware, and the software is mostly written (read or write n bytes starting at location x). I'm thinking of existing code that grabs blocks off the sd card and sends them straight to external sram. Only two lines of spin code.

    Sing out if you want to brainstorm this some more.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    www.smarthome.viviti.com/propeller
  • BaggersBaggers Posts: 3,019
    edited 2010-01-11 22:36
    I don't think we have 118MB of external ram set up to the prop do we? [noparse]:D[/noparse]

    Although I could make it grab an area around where you are, and just feed hub-ram with the area needed. [noparse]:D[/noparse]

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    http://www.propgfx.co.uk/forum/·home of the PropGFX Lite

    ·
  • Dr_AculaDr_Acula Posts: 5,484
    edited 2010-01-11 23:07
    118mb on prop would be great. I was looking at some 128mb sram modules lying in the junk box yesterday thinking - "how can I use these?"

    Back to the real world, grabbing bits around where the user is would make sense, and buffer those in ram.

    Re "it's not fast enough to have a real time display from SD, besides, I don't think you'd want to write to SD all the time to update it"

    Would there be any writes? If it is all just reads, then the sd card would not wear out etc.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    www.smarthome.viviti.com/propeller
  • BaggersBaggers Posts: 3,019
    edited 2010-01-11 23:17
    if it was a display then I guess it wouldn't need writes, unless you were wanting to modify areas? if you had other ideas, or wanted to put something over it.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    http://www.propgfx.co.uk/forum/·home of the PropGFX Lite

    ·
  • VIRANDVIRAND Posts: 656
    edited 2010-01-12 05:47
    Interesting. I'll have to try that later. How do you boot? Is the first 32K an eeprom file?
  • BaggersBaggers Posts: 3,019
    edited 2010-01-12 08:57
    VIRAND, you use proptool to build it, the BIT file to be put on the SD card ( before you run the code [noparse]:D[/noparse] ) is the map.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    http://www.propgfx.co.uk/forum/·home of the PropGFX Lite

    ·
  • AribaAriba Posts: 2,690
    edited 2010-01-13 07:22
    Baggers - I like it!

    I have played the last hour with this map. Sometimes I wish to see a bigger part of the map to not loose the orientation, so I have added a Zoom mode:
    F1 = 1x
    F2 = 2x
    F3 = 4x
    When zoomed, the update is much slower, because a Spin loop copies every byte. But it is still usable.

    Attached is only the Top-object, all other objects have not changed.

    Andy
  • BaggersBaggers Posts: 3,019
    edited 2010-01-13 09:54
    Glad you're having fun with it Ariba [noparse]:)[/noparse] nice addition also [noparse]:D[/noparse]

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    http://www.propgfx.co.uk/forum/·home of the PropGFX Lite

    ·
  • Ahle2Ahle2 Posts: 1,179
    edited 2010-01-13 10:32
    This is really cool [noparse]:)[/noparse]
    FSRWFemto doesn't work with all SD cards though, it took me a second card to get it working.
  • BaggersBaggers Posts: 3,019
    edited 2010-01-13 10:35
    Ahle2, you can replace FSRWFemto with any driver that has sector reading [noparse]:)[/noparse] ( and returns current (next) sector address from read function)

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    http://www.propgfx.co.uk/forum/·home of the PropGFX Lite

    ·
Sign In or Register to comment.