Shop OBEX P1 Docs P2 Docs Learn Events
More detailed info about the video generators? Where to find? — Parallax Forums

More detailed info about the video generators? Where to find?

godzichgodzich Posts: 74
edited 2008-09-30 12:05 in Propeller 1
Hi,

Still new with the Propeller, so bare with me.

I have a hardware background so I would like to see some kind of schematic (at least at block level) how the video generator and it's registers work? There is little or actually no information about this in the manual!!!

So - where can I find a better description for the video generator? I have in mind other special uses for this entity, but with this little information I have no way to understand how it works! Is it just a special shift-register, or what?

Please, anyone, can you kindly enlighten me on this one?! I think that the next manual revision deserves a better video generator chapter!!!

Christian

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
The future does not exist - we must invent it!

Comments

  • AleAle Posts: 2,363
    edited 2008-09-23 07:27
    I'd also like to see such a schematic wink.gif.

    There is an application note called Counters, where the counters and timers are explained. You can also have a look at some source code that generates video to get a grasp at how it works. I know it is not exactly what you asked for, but it may help. There is the propeller wiki (propeller.wikispaces.org) where you can find a bit more info, ain a more structured way than the forums, with an index in the first page wink.gif
  • Brian FairchildBrian Fairchild Posts: 549
    edited 2008-09-23 07:45
    page 13 of the datasheet?
  • godzichgodzich Posts: 74
    edited 2008-09-23 12:42
    Hi,

    Thanks for all comments. I have read pages 12..13 in the datasheet - but they are - how to express politely - rather sparse. One would assume that some additional info about the video gererator exists - and is officially published. Especially when Parallax encourages (or at least mentions) their use for other purposes as video generation!!!

    With this little in the data sheet I cannot continue. Please - the Propeller "father" Chip Gracey - can you shed some light here and please publish something more detailed?! How I feel now is that you want to keep the lid closed on the can of worms, like keeping a big secret for yourself.

    More information about the shfit register structure and modulator would be very much welcome. Probably these documents all exist, they only wait to be published [noparse]:)[/noparse]

    Or is it so that all efforts are already aimed at Propeller II? One would assume that you still want to promote the PropellerOne as much as possible to get a widespread use of it, and also good revenue to finance upcoming projects...

    I have never seen such a sparse data sheet for ANY processor!!! And believe me, I have read a bunch of such due to the fact that I have also designed CPU's nad MPU's components into embedded systems - for half my adult liffe.

    Othervice, I like the Propeller approach very much... It might be because it reminds me much of a DSP processor I designed in 1999... Many feartures are very similar. Long instructuction words, no ram but a huge bunch of registers, no interrups, source and destination adresses directly embedded in the opcodes., run at 20Mips per processor, dedicated NCO registers.... you see - much similarity here [noparse]:)[/noparse] However, what is missing the proplelle I had already 10 years ago; a 16x16 signed multiply using only 8 clock cycles - and this without any dedicated HW multiplier [noparse];)[/noparse]

    Have not yet written a single line of code for the propeller, but expect start soon - if I choose to use it. I'm trying to collect enought data to make my decision.

    Christian

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    The future does not exist - we must invent it!
  • Mike GreenMike Green Posts: 23,101
    edited 2008-09-23 16:43
    Currently, the Hydra Manual is the best documentation on the video hardware. Because it's a 3rd party document, you'd have to buy it. It's well worth the modest amount.

    The issue is not that Parallax or Chip wants to keep this detail secret. It's just that there's only so much time in the day and it's a huge amount of work to produce finished documents on something this complex. Fortunately, the most difficult use of the video hardware is its use in video drivers and that has already been provided. The Hydra Manual, although not free, is an excellent document. One can argue whether it's "fair" or "reasonable" to initially provide documentation at some cost through a 3rd party, but it's a commonly used system increasingly in the computer world, particularly where the developer has limited resources available for documentation.

    Regarding the multiplier ...

    The Propeller is primarily a microcontroller. Most of the time, the processor doesn't need a multiply or divide instruction, particularly when the Propeller has a barrel shifter and some special instructions to facilitate multiplication and division. An unoptimized 16 x 16 multiplication can be done in under 2us by subroutine. With the main loop unrolled, this can be done in about 1.7us.

    Post Edited (Mike Green) : 9/23/2008 4:53:10 PM GMT
  • Paul BakerPaul Baker Posts: 6,351
    edited 2008-09-23 16:53
    At this point in time, the Hydra book is the most comprehensive discourse on the video generator. Eventually there will be a AN002 - Video Generators, but this is still in the planning stage due to assigned priorities.

    Honestly they are pretty simple devices, the datasheet actually covers all the material (albeit in a terse fashion). Armed with that information and one of the already existing video drivers, you can figure out what you need to know about thier operation. Even the AN002 will only describe the behavior of the color phase encoding,·not·the actual circuitry·used to generate the waveform.

    Most people are content with using the drivers already in existance for thier development work, and those that want to tinker with the driver level get the Hydra manual.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Paul Baker
    Propeller Applications Engineer

    Parallax, Inc.

    Post Edited (Paul Baker (Parallax)) : 9/23/2008 5:14:54 PM GMT
  • godzichgodzich Posts: 74
    edited 2008-09-23 18:40
    Hi Paul & Mike,

    I appreciate you straight and honest input. Nice to be able to talk directly to gurus like both of you. Its a rare treat to be able to have conversations directly with people in charge !!

    Reassuring to hear that you are planning an AN002 that covers the video generators. I think that will be appreciated by other more hardware-oriented guys like me!!! Don't forget that document at the planning stage, you need to publish it soon, to fill a big black hole.

    The propeller chip is such a (nice) deviation to everything else, that it deserves all possible help to make it fly (pun intended [noparse]:)[/noparse] A detailed technical documentation is also reassuring and makes it easier to take the product more seriously. This product deserves more attention in the industry as it at this moment gets, and a good documentation is a must.

    You write " Armed with that information and one of the already existing video drivers, you can figure out what you need to know about thier operation." The key words are "figure out"! That is not hos it should be!

    I don't think that users should have to figue out things - that in the first place should be in the datasheet. Its understandable that it·occasionally happens with new products introduced early into the market. However, the datasheets gets normally complemented pretty soon. I can mention for example the Motorola 68HC11 processor. My·company was one of the first customers to use it here in Finland (that was early 1985). The first "data" sheet was just a joke, but the situation was corrected withing a year.

    The hardware of a·controller or IC should be so well documented that you can write a driver for it from scratch. Having tinker and reverse-engineer of someone elses code, is not the way it should be.

    Getting the Hydra manual is not an issue (costwise or other) if there is some additional useful data in it. But it is somewhat ridiculous to have to depend on this kind of (3rd party) material just to understand how the propeller hardware works. I just come to the conclusion that you don't want programmers to tinker with the video generator, or then the programmer must work for parallax to be able program it.

    It is nice to hear that you have at least planned AN002, I hope I have been able to reassure you (with my arguments) about it's importance.

    Nobody assumes·that you should write a complete tutorial of how the PAL/NTSC color encoding works. People that need to learn this can get that info elsewhere. People that want to "tinker" with the video generator (or use it for something else) must have some knowledge about the subject from before. I have such skills since I have been designing different kinds of video generators. Even with this professional skill level I feel completely stupid when I cannot write any code for the propeller video generator due to non-extisting documentation... You should not look down at people using this processor, If you do that·it will just stay as a "hobby" processor, and that would be a pity.

    Writing a good documentation is at least as difficult as designing the product itself. But a good documentation "sells" the product easily, and reduces the number of reoccurring questions to the support team. A good documentation is required to take the product seriously. This is especially true in the semiconductor field.

    I did not critisize that the propeller is lacking a harware multiplier. It has a very skilled barrel shifter (that my DSP did NOT have), and I know better than well that you can use is for pretty efficient multiplication/division. And the Prop II probably will have this multiplier or something similar, so there is a path of improvement!

    One on the reasons why I fell for the propeller was that it actually contains elements that you could find in an FPGA! With some clever assembly code you can perform peripheral functions that would be possible only using an FPGA or some dedicated ASIC's. I have (at this time) no plans (yet) to use it commercially, but will experiment with it in my home lab and use it as a controller in at least two serious projects. Both are quite demanding so that I planned to use an FPGA/CPU combination, but now the propeller is the first choice! The biggest black hole are the video generators...

    This processor is easy to fall in love with -·if you in the first place·can have feelings for·a piece of silicon! It is not only the chip, but the whole system that makes it special. Great work Chip & co!!! No you just should stop reading ridiculous forum posts like this, and concentrate on writing the AN002... [noparse]:)[/noparse]

    Cheers,

    Christian



    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    The future does not exist - we must invent it!
  • Mike GreenMike Green Posts: 23,101
    edited 2008-09-23 19:19
    1) I can't speak for Paul who is at least a tiny bit "in charge", but I'm not in charge at all ... I can have opinions on anything for what they're worth.

    2) Video generation is much much more than the video generation circuitry and the various control registers. It's intimately tied into several major conceptual pieces unique to the Propeller. You can generate NTSC/PAL video with only one cog and you can generate low resolution VGA video with only one cog, but higher resolution VGA requires the use of two or more synchronized cogs. That's a very complicated discussion and requires that someone already be intimately familiar with the Propeller in general already.

    3) In an ideal world, with significant resources available, I agree very much with your position on documentation and the documentation of the video generator in particular. In the specific situation at Parallax, they have chosen what to document and how to document it in a very reasonable way. The video generator is of little use to most new users other than through the use of existing drivers and the sample programs provided. For those that are interested, there's a very good text available. There has been quite a lot of excellent work by various users on new video drivers and some use of the video hardware for high speed communications. They seem to have managed with what documentation is available.

    4) There's enough documentation in the Propeller Manual for me to understand how to use the video hardware as a shift register. I haven't done it yet (I don't have a reason to do it), but it seems clear enough to me how to go about it.
  • Paul BakerPaul Baker Posts: 6,351
    edited 2008-09-23 19:39
    Thanks for your input Christian, it is much appreciated and always welcome. Typically when something hasn't been done yet it is a question of resources, and the AN002 is in that category. At the moment I am in the middle of product design, but once it's done I'll have more time to devote to things like application notes.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Paul Baker
    Propeller Applications Engineer

    Parallax, Inc.
  • BamseBamse Posts: 561
    edited 2008-09-23 20:20
    Check out the NTSC tutorial on this page, it might give you some information about the Video Generator that you don't already know...
    propeller.wikispaces.com/graphics+drivers

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Living on the planet Earth might be expensive but it includes a free trip around the sun every year...

    Experience level:
    [noparse][[/noparse] ] Let's connect the motor to pin 1, it's a 6V motor so it should be fine.
    [noparse][[/noparse] ] OK, I got my resistors hooked up with the LEDs.
    [noparse][[/noparse]X] I got the Motor hooked up with the H-bridge and the 555 is supplying the PWM.
    [noparse][[/noparse] ] Now, if I can only program the BOE-BOT to interface with he Flux Capacitor.
    [noparse][[/noparse] ] I dream in SX28 assembler...

    /Bamse
  • RinksCustomsRinksCustoms Posts: 531
    edited 2008-09-24 00:18
    dude... let the poor man product design for gods sake, lol! I can hardly wait to see what the prop II is capable of!! so many rumors, it has to be true!!

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    E3 = Thought

    http://folding.stanford.edu/·- Donating some CPU/GPU downtime just might lead to a cure for cancer! My team stats.
  • rjo_rjo_ Posts: 1,825
    edited 2008-09-24 03:00
    Christian,

    I wish I had a nickel for every time someone said... "it seems a little strange to have 3rd party folks doing _____" OR
    "who in their right mind depends on customers to...."

    Parallax doesn't just break the mold they shatter it.

    Wait til you get into the hardware... first it will seem odd... like waking up in a hotel room and not quite knowing what city you are in... then it will seem charming... and then... it will just blow you away.

    The Propeller is "like a box of chocolates..." except better.

    The Hydra book was written with the engineer in mind... you'll love it.

    Rich
  • SapiehaSapieha Posts: 2,964
    edited 2008-09-24 03:53
    Hi rjo_..

    You said...
    """ The Hydra book was written with the engineer in mind... you'll love it."""

    Maybe I have loved it ....... If I had many to buy It..
    In first place it is my daily living that eats them...
    In next place Why I will buy information that producer have and can suport me with..

    Regards Chj.



    Ps. In my opinion Propeler is multiprocesor and use then its capablites

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Nothing is impossible, there are only different degrees of difficulty.
    For every stupid question there is at least one intelligent answer.
    Don't guess - ask instead.
    If you don't ask you won't know.
    If your gonna construct something, make it·as simple as·possible yet as versatile as posible.


    Sapieha

    Post Edited (Sapieha) : 9/24/2008 4:37:07 AM GMT
  • rjo_rjo_ Posts: 1,825
    edited 2008-09-24 18:13
    Chj...

    You ask a good question. I think you are a philosopher, who prefers to eat[noparse]:)[/noparse]

    I have read many of your posts... and when I see your name pop up, I try to take a look, because you always have something of value to add to a conversation. You would be a good person to give the book to and ask to review it[noparse]:)[/noparse]

    I have the same problem in my profession... I stopped buying books because they were all wrong and it upset me to think that people were actually making a living selling such nonsense...[noparse]:)[/noparse]

    The Hydra book is actually not perfect... lots of typographic errors and it weighs too much. You wouldn't want to have one around a small child because if the child somehow became trapped under the book, he might die[noparse]:)[/noparse]
  • potatoheadpotatohead Posts: 10,261
    edited 2008-09-24 20:06
    It's a time / money thing. Always is. We either have time or money or both! If it's both, then we just make choices as we see fit. If it's one or the other, then it's a constraint on our choices.

    Have money, but little time? Maybe buy the book, or books or pay somebody.

    Have no money and more time, skip the book, spend a coupla evenings trolling the forum waters for goodies, then go learn stuff.

    @Christian, what are you wanting to know?

    Really, it's just a special shift register that has some extras for color signal generation. You configure it (PLLA, VSCL, PINS, MODE), then you feed it data via the waitvid instruction. Once you've issued a waitvid, you just keep making sure data is there before the frame (pixels and colors) run out.

    With this method, you generate the entire video signal, not just elements of it. Most of the parameters, such as pixel clock, sync, colors / bit, memory mapping, etc... are all part of a software video kernel loop that you write to literally build out the kind of display you want to build.

    This is significantly different than most video assists in that they manage the lower level stuff, leaving you to just configure some registers and write to RAM.

    In a bit, I'll post up a link or two to some simple video kernels that do TV and VGA.

    I suspect there is some confusion here over how much the video generator really does and the difference between more documentation and a reference implementation. On the Prop, that reference implementation literally is the documentation as most of the task of actually doing video is software, not hardware.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Propeller Wiki: Share the coolness!

    Chat in real time with other Propellerheads on IRC #propeller @ freenode.net
  • SapiehaSapieha Posts: 2,964
    edited 2008-09-24 20:19
    Hi potatohead

    This is fine to have that videogenerator and it is no problem for me to have time.
    But I have 8 COGs and Videogenerators and will to be in position to USE it with other things not only Video.
    To that I must have Schematic diagram

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Nothing is impossible, there are only different degrees of difficulty.
    For every stupid question there is at least one intelligent answer.
    Don't guess - ask instead.
    If you don't ask you won't know.
    If your gonna construct something, make it·as simple as·possible yet as versatile as posible.


    Sapieha
  • godzichgodzich Posts: 74
    edited 2008-09-26 09:01
    Hi,

    I would like to have a good and complete block diargam of the complete video generator stucture, including also something more about the color modulators.

    There is no way for me to "see" what I can do with this hardware -·if there is no clear documentation. Obviously I could do some expetimentation, but that would be slow, and comparable to reverse engineering... sigh.

    I bought a piece of processor hardware - I own it - and should have the right to program it as I want. But now I'm not "allowed" to do that, because there is not enough information about the harware I have in my posession. It's like someone has decided that this hardware is too complicated to tell about -·to the "not smart enough" end users...

    I don't mean that Parallax must reveal anything that is proprietary or company confidential. The internal structure of the video generator is specialized hardware in this chip, that should be exactly as "public" as the counter structures. A scematic or block diagram explains a lot more than just some code that must be· "de-chiffered"...

    I just printed the 450-page manual. It has certainly taken a couple of hours to write. It has very little (close to nil) about the video generator, very little additional effort is required (at least compared to this huge manual) to write the AN-002...

    I have some special uses in mind, but still don't have time or even interest to tinker, make guesses and experiment, I want to write the code professionally according to a hardare specification, and then - who would not? ...

    Please consider publishing this appilcation note soon. even better, add that info to the manual or data sheet, it belongs there. At the same time you could update the manual with the published errata (new revision with corrections) so that not we have to do the corrections manually... Not doing so but just publishing an errara gives at least me an impression of laziness or sloppiness.

    It's a little strange if Parallax cannot find the resorces for such important support work... But I have to·take into consideration·that it's a small company, that also took a big financial risk designing its own CPU. However, the poject is not finished before the documentation is at an accepable level.

    Christian

    PS: Don't get me wrong, this CPU just rocks! I fell immediately in "love" with this extremely clever and nice concept. I can't hardly wait to start the actual encoding, at this moment I'm only building the application hardware.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    The future does not exist - we must invent it!
  • RinksCustomsRinksCustoms Posts: 531
    edited 2008-09-26 17:43
    A quick note on the HYDRA book, it does not have schematics on the video hardware, it describes in detail how to set it up and use it and it goes into detail on how the pixels and colors are aranged in memory to make the whole process possible. It is a very good book about the Propeller capabilities, exelent material for a novice like me. I can visualize a VSU being utilized as a very high speed comunication feature, but the devil lies in the details.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    E3 = Thought

    http://folding.stanford.edu/·- Donating some CPU/GPU downtime just might lead to a cure for cancer! My team stats.
  • potatoheadpotatohead Posts: 10,261
    edited 2008-09-28 02:28
    I bought a piece of processor hardware - I own it - and should have the right to program it as I want. But now I'm not "allowed" to do that, because there is not enough information about the harware I have in my posession. It's like someone has decided that this hardware is too complicated to tell about - to the "not smart enough" end users...


    I take exception to this.

    There is enough information, in the form of running code, to tell you what you want. So then, it's a simple matter of time and value. Your position is valid, however it's not aligned with any sort of "right".

    You do have the right to program it how you want to. You just don't appear to have time to exercize it in a way that makes sense for you. Two very different things.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Propeller Wiki: Share the coolness!

    Chat in real time with other Propellerheads on IRC #propeller @ freenode.net
  • Mike GreenMike Green Posts: 23,101
    edited 2008-09-28 03:03
    I also take exception to this. The Propeller Manual contains a description of the video generator registers and what the various fields do, at least as well as many other processor manuals do for similar I/O registers. There's nothing secret. It's not the purpose of a reference manual to teach people how to use the processor, yet it seems to have a lot of examples and detail. Although I'm an experienced programmer, I've never written a VGA driver or an NTSC/PAL driver. I've never written the kind of high speed parallel I/O driver that you might use the video generator to make, but I can read the existing drivers that Chip wrote and the Hydra drivers that various other people wrote and I feel that I could write one from scratch if I had to just with the information in the Manual and a detailed description of NTSC and PAL signals. It might be a lot of work, but it's not the job of Parallax to provide application note level information in a Reference Manual and application notes at this sort of level are very low priority from any manufacturer, large or small.
  • SapiehaSapieha Posts: 2,964
    edited 2008-09-28 07:07
    Hi Mike Green.

    I am read Manual and all demos on Video Generator.
    I understod it in basic concept BUT it is not VIDEO GENERATING I will ude it to but to another Aplications that have similar necessities.
    And in that use information on mutual dependence is nessesary.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Nothing is impossible, there are only different degrees of difficulty.
    For every stupid question there is at least one intelligent answer.
    Don't guess - ask instead.
    If you don't ask you won't know.
    If your gonna construct something, make it·as simple as·possible yet as versatile as posible.


    Sapieha
  • Ron SutcliffeRon Sutcliffe Posts: 420
    edited 2008-09-28 07:56
    Sapieha

    It really does not matter how much information we have on the hardware, at the end of the day, we only have the instruction set to drive the hardware.

    There seems to me that everthing we need can be found in the manual.

    I think this is just a cultural thing, I have worked in Asia for some time. The service imformation for most local products here·are often just a source of amusement [noparse]:)[/noparse]

    Ron





    Regards

    Ron

    Post Edited (Ron Sutcliffe) : 9/28/2008 8:04:41 AM GMT
  • SapiehaSapieha Posts: 2,964
    edited 2008-09-28 08:16
    Hi Ron Sutcliffe.

    Yes it in many cases cultural thing. I am bear in Polen and during how there I lived wi have not any manuals to many Things.
    It was
    Experimentera > Testa what work > Write >Yours own manual.

    It works But is Time consuming. From Time I live in Sweden I learned at I can have Product Manual that is writen from factories.
    It saves Time to have Time to another things.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Nothing is impossible, there are only different degrees of difficulty.
    For every stupid question there is at least one intelligent answer.
    Don't guess - ask instead.
    If you don't ask you won't know.
    If your gonna construct something, make it·as simple as·possible yet as versatile as posible.


    Sapieha
  • hippyhippy Posts: 1,981
    edited 2008-09-28 17:23
    godzich said...
    There is no way for me to "see" what I can do with this hardware - if there is no clear documentation. Obviously I could do some expetimentation, but that would be slow, and comparable to reverse engineering... sigh.

    I bought a piece of processor hardware - I own it - and should have the right to program it as I want. But now I'm not "allowed" to do that, because there is not enough information about the harware I have in my posession.

    I understand the sentiment but I'm not sure Parallax deserve the criticism.

    Coming from a land of PAL I'd like to try some things with the video but have had difficulties with that. Not so much that I don't understand what the video generator is but I'm not 100% clear on what I need to do at the high level ( the PAL signal ) and how that translates into what is exposed in terms of hardware to deliver it. I would venture that if I knew exactly what I was meant to be doing I would have much less of a problem.

    Perhaps I would turn round and agree there are particularly things lacking in what Parallax currently document and provide in example code which stops me doing what I'd like to, but at the current time it looks to me that Parallax have documented enough to allow someone to do what they need to if they know what they have to do to get it. I cannot fairly blame Parallax for not laying it on a plate for me - That's for me to learn and to seek help from the forum and elsewhere as required ( same goes for my understanding of the counters ).

    Perhaps, like for me, it's not so much a lack of documentation but bridging the gap from what is needed to how it is achieved ? Is it Parallax's job to bridge that gap ? I'd say that's debatable. It would be generous if they did and probably useful too but there has to be, a line drawn somewhere between a resource constrained manufacturer providing a chip and documenting what it does and leading people through how to use it.

    I am sure that Parallax and forum users would step in and offer help where there are specifics which present a problem.
  • godzichgodzich Posts: 74
    edited 2008-09-29 07:01
    Hi,

    Constructive critisism should be allowed, it usually means that things can - and eventually will -·improve. Paul (from Parallax) even thanked me for my feedback! I'm not usually moaning without a sound reason, and most of all, I want to be constructive, not destructive. By starting this thread I hoped to stir up a discussion that would lead to a happy outcome - that is - more info for us to be able to use·this fantastic piece of hardware in a more efficient way!

    Whatever you claim, the video generator still mostly a black-box for all non-Parallax people. I stand behind my opinion that every bit accessible for me to program - must be documented to such detail - that I can write the required software - without trying to learn from someone elses code. It's nothing wrong to learn from readily written code (especially if it comes from Parallax), but if that is a necessity, it just prooves that the hardware is not documented good enough, and some reverse engineering is still required. Isn't disassembling code actually reverse engineering?

    Independently, it seems that Parallax has internally accnowledged the need to shed some more light on the subject by planning to publish the AN-002. And that IS grat news. I just hope this application note will be published in the near future. My plan to use the video generator for other purposes (than video) would be so much easier to achieve, if I had a complete and clear understanding of the video generator internals. My skill level is such (without bragging)·that I probably could write a PAL video driver from scracth if I only had a completely undestanding of the Propeller video generator's clever hardware.

    BTW, does there exist a published version of the Propeller manual - with the errata already corrected??? I would like to print a manual that is correct already out from the printer?

    Cheers,

    Christian





    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    The future does not exist - we must invent it!
  • potatoheadpotatohead Posts: 10,261
    edited 2008-09-29 15:56
    Well to be clear, I figured Parallax was just fine.

    My exception was about the overall positioning of "right to program as I want to". You have that right. It exists right now. That really was my point of discussion, not anything you said to or about Parallax.

    There are no secrets, other than the color bit is not all that clear. It's also not all that hard, IMHO.

    On that note, PLLA is used to generate the colorburst, and that's broken into 16 phases, each of which is 1/16th of a pixel in size. Asking for one of the phases will generate a small sub-pixel that will trigger the color output of the TV. The phase of PLLA may or may not be in sync with other PLLs running in the chip.

    Edit add: One cycle of the color burst = one full NTSC pixel. The output of any one phase is 1/16th of a pixel, with a signal level determined by the resistors used in the video output. All of that is keyed to PLLA, so you could output other things at other frequencies, if you wanted to. It's easier to just ignore the color totally, output full pixels and scale the output to the size and frequency needed too. PLLA is still used for this, but there are no sub-pixel outputs when no color is specified.

    Additionally, all the levels are used to generate the signal. This is the key difference between the Propeller and most other video output systems. So then, it's important to note that a black pixel is level 02, with 00 and 01 being signal levels, not active graphics display levels.

    These things were the key points of confusion for me. Perhaps they help you some!

    You have the output schematic that tells you the signal levels. There is the manual that details how the pixels get shifted, what form they take, what colors they will have, their size and number, and starting and stopping output.

    Finally, there are some simple drivers out there that show some running scenarios for simple displays, color, etc...

    If anything, gathering that info in one place is a good idea. Totally agree on that. However, the information is actually there and it just takes some time to collect it all. IMHO, evaluating a running driver in tandem with the manual or datasheet (and I like the datasheet better), gets it done nicely.

    I have moderate enough to be dangrous skill in all three disciplines (programming, electronics, and video signal details) and was able to build a running driver in a day. Expanded on that fairly quickly to push the chip where I wanted it to go. That was with no scope or anything either. Just reading what was there, observing the TV output and running code.

    Frankly, if you have skill enough to just knock out a PAL driver, a quick trip through the Parallax Reference TV driver will tell you all you need to know. For NTSC, you can get a simpler mode from the many NTSC drives posted here on the forum. The AiGeneric driver, Hippy posted, is a clean, single COG text driver that can do bitmaps with only minor league code changes. Oldbit, Hippy and I ended up mashing up a text driver I wrote to better connect it to PROPDOS. Core driver development was one evening thinking about character mode text displays and how to arrange data in both the COG and HUB to make best use of resources for a one COG driver. That exercise was about 5 hours, with another 10 to get the driver doing what it should. That's not all that long really, given the entire video signal is done in software!

    So then, it boils down to the time / money equation I mentioned earlier. Everybody works that balance, and that means getting the info out there first. This was done to a very high degree. Having made money, then perhaps getting it out there later in a more easily digested form makes sense. That's Parallax. For us, interested in driving the Propeller, there is enough to do just that with few worries. So then, the core of the exception came to light!

    Really, if you need it that badly, it's there. Asking for more and better is all good, but not getting that does not in any way infringe on your "right" to make use of the Propeller. It only impacts your time/money value judgments.

    No worries here, and I'm gonna go and work on something else.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Propeller Wiki: Share the coolness!

    Chat in real time with other Propellerheads on IRC #propeller @ freenode.net

    Post Edited (potatohead) : 9/29/2008 7:18:24 PM GMT
  • Steph LindsaySteph Lindsay Posts: 767
    edited 2008-09-29 18:07
    godzich said...

    Hi,

    Constructive critisism should be allowed, it usually means that things can - and eventually will -·improve...

    <shortened>

    ...BTW, does there exist a published version of the Propeller manual - with the errata already corrected??? I would like to print a manual that is correct already out from the printer?

    Cheers,

    Christian

    Hello godzich,

    I must say I also appreciate your constructive criticism, as much as I appreciate loyalty and generosity of our Propeller forum members who both understand the resource constraints that small companies face and who are also willing to step in and provide support for·new users where Parallax-generated material·is still thin.

    Regarding the Propeller Manual, our senior software engineer is currently authoring·new content for Version 1.1.· That material will be released first in an updated Supplement & Errata, so the information will be available during the editing and printing process.· We had fully intended to revise the Propeller Manual before now, but truthfully the list of items we wish to add or expand upon has not stopped growing. We already had many additions in mind of course, but our insightful customers have been adding to that list continually as well.· It has been a moving target, like a person who won't sit still for their portrait, but we intend to snap a picture soon.

    -Stephanie Lindsay

    Editor, Parallax Inc.
  • godzichgodzich Posts: 74
    edited 2008-09-30 12:05
    Hi,

    Thank's for all the·feedback. Nice to see that there is going on a fruitful discussion about the subject.

    Stephanie, your post is also appreciated very much! And no doubt about it, this forum IS great, and that depends only on the people contributing... The fact that people from Parallax also have time and interest to contribute, just makes the forum even better [noparse]:)[/noparse]

    The subject about the video generator IS probably quite hot, since there is much debating about it... A thread like this:

    http://forums.parallax.com/showthread.php?p=754724

    ·- is clear proof of·that there is still too much "deshiffering" and "quesswork" needed, to really master and completely understand·the the inner "secrets"·of the video generator. People have to experiment to find out rudimentary details. But - as it was promised, there is some light that is going to be shed on this - so - enough of that. I'm eagerly waiting [noparse]:)[/noparse]

    Intriguing, but the color phase modulator is still mostly a black box (at least for me - and the reason might be between the chair and the keyboard). I KNOW how a PAL signal is color modulated, but I cannot find any (or very little) information about the modulator itself, if I want to use it for something else, like phase modulation. I just need to read some assembly code again to get better understanding..

    I probably order today the Hydra handbook and try to learn more from there...

    Stephaine, could I suggest that you totally SKIP the publication of erratas, that actually are more irritating than useful - why not just simply correct those errors in the manual by a simple edit, increase the version number by one, and then publish it? It would take long before you run out of numbers [noparse];)[/noparse] This approach would be so much more user friendly. This sheme (going away from master releases + erratas) would allow·you to publish versions more often, and not to wait to have everything included... Everyone would benefit from it. Then you wouldn't have to worry about the moving target - that never will stop [noparse]:)[/noparse] I have been the head for the aftersales department in our company, so I think I know what I'm talking about. Service technicians and engineers HATE to receive erratas, they want to have corrected and trustful manuals... The don't simply have the time or interest to start to manually correct pages after pages... I think we all agree on that, there are better things to do.

    Or then just publish the PDF in such a format that I am able to asseble and edit it, using the erratas to correct the manual by myself... Well - probably you shouldn't take this last idea too seriously, I know that you probably cannot do that, but I could... [noparse];)[/noparse] After all, I think that correcting the manual with the latest erratas would not take longer than an afternoon...

    And don't get me wrong, I'm quite happy with what I have learned so far, and eager to learn more. It is quite amazing that a company (size of Parallax) has been able to design a such a genial CPU from scratch, together with supporting and clever languages and tools!!! It has taken lots of effort, money, time, and last but not least, courage!!! Even more amazing when you know that there·are only a few people(<3?) ·invloved in this design work. A risk that was worth taking, for all "propellerheads" sake [noparse]:)[/noparse]

    Cheers,

    Christian




    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    The future does not exist - we must invent it!

    Post Edited (godzich) : 9/30/2008 12:11:26 PM GMT
Sign In or Register to comment.