Shop OBEX P1 Docs P2 Docs Learn Events
The graphic vga driver - now beta - Page 2 — Parallax Forums

The graphic vga driver - now beta

2»

Comments

  • pik33pik33 Posts: 2,366
    edited 2014-10-12 21:25
    Some types of warnings you can simply ignore
    - adjusted size. If for example a<=2, 2 is 32-bit constant. If a is 8bit port, the constant will be truncated and the warning will emerge
    - timing. When not initialized in proper file (I still don't know how to prepare this) it assumes 1 ns delay/hold/propagation times which cannot be achieved
  • rjo__rjo__ Posts: 2,114
    edited 2014-10-15 07:52
    pik33
    SDRAM is next on the queue.
    If you could start by integrating SDRAM into a plain P1v block design, it would be very much appreciated:)


    Rich
  • jmgjmg Posts: 15,173
    edited 2014-10-15 11:45
    pik33 wrote: »
    Some types of warnings you can simply ignore
    - adjusted size. If for example a<=2, 2 is 32-bit constant. If a is 8bit port, the constant will be truncated and the warning will emerge

    You can use sized constants, like 9'd16, 8'd226, 4'b1000 , and also use
    `define CtrZERO 10'd000
    if that makes code clearer, or easier to safely reconfig.
  • Cluso99Cluso99 Posts: 18,069
    edited 2014-10-15 16:33
    pik33 wrote: »
    Some types of warnings you can simply ignore
    - adjusted size. If for example a<=2, 2 is 32-bit constant. If a is 8bit port, the constant will be truncated and the warning will emerge
    - timing. When not initialized in proper file (I still don't know how to prepare this) it assumes 1 ns delay/hold/propagation times which cannot be achieved
    Yes, it's the timing ones I worry about. Not sure how many that was, but as I add to the code there are more timing warnings.

    Nice to see you are progressing with this driver.
  • pik33pik33 Posts: 2,366
    edited 2014-10-16 12:36
    SDRAM now added and first tested. In my retrocomputer memory map it is now available at addresses from $1_000_000 to $2_FFF_FFF - 128 MB free :) for the P1V.

    The memory map (in longs) as it is now:

    - $0000_0000 - $0007_FFFF - SRAM and frame buffer
    - $0008_0000 - $0008_03FF - pallette registers
    - $0008_1000 - $0008_17FF - font definition
    - $0008_2000 - $0008_25FF - sprites
    - $0008_3000 - $0008_300F - internal VGA registers
    - $0010_0000 - $0010_00FF - audio bufer
    - $0020_0000 - $00FF_FFFF - reserved for 15 other i/o devices
    - $0100_0000 - $02FF_FFFF - SDRAM
  • pik33pik33 Posts: 2,366
    edited 2014-10-17 06:06
    I have now fast blitting procedure - 9 PASM instruction for one long copy in all memory space. It means in the Mode 10 (448x280x256 colors) full screen save to sdram or restore from sdram needs about 10 ms... and 1000 such frames can be saved in SDRAM...

    The project still need some work until I'll put the sources and demos here, and this is no more VGA driver. It starting to be Propeller powered retrocomputer system on DE2-115

    Now it has "chip memory" (SRAM), "fast memory" (SDRAM), sound, keyboard, mouse and framebuffer with sprites. All the memory space is accessed in the same way

    I need now an xmm machine to use this huge space :) and some Basic (or maybe something other.. Forth?) to program the retromachine... time to look at some Basics available for the Propeller...
  • BaggersBaggers Posts: 3,019
    edited 2014-10-18 05:42
    pik33 this is awesome well done! :) will hopefully get to have a proper look in the next weekend or two ;)
  • Bill HenningBill Henning Posts: 6,445
    edited 2014-10-22 08:58
    Very nice work pik33!
  • steddymansteddyman Posts: 91
    edited 2014-10-25 06:49
    This looks an amazing project pik. Sorry, I am a relative newbie to the scene (I have a Micromite Companion).

    What is required to get this working? A large FPGA board or can the propeller be somehow augmented to support this?
  • pik33pik33 Posts: 2,366
    edited 2014-10-25 09:04
    The project - now the retromachine project - is made for DE2-115 board and uses specific hardware parts of this board - video DAC, audio codec, SRAM, SDRAM, LEDs.

    This project can be modified to run on another FPGA board. SDRAM is optional; the minimum RAM for this to work is 512 kB and this can be the RAM inside the FPGA, if it has a sufficient amount for this, or else the graphics resolution can be reduced to use less ram (560 vertical pixels modes use 256 kB)

    The real Propeller 1 cannot do this because the project uses its port B which is not connected in Propeller 1 chip. Also, the Port B is split to inb, outb and dirb to make a system bus.
  • steddymansteddyman Posts: 91
    edited 2014-10-26 11:54
    Thanks Pik. I understand now. Shame it wont run on the much cheaper CV
Sign In or Register to comment.