Robosoft and PAD (Part 1): The PAD Spec

Perhaps we had better start from the beginning…

Hopefully that helped to wake some people up from Zombie-land~!

Speaking of which, I still have some wicked Rob Zombie concert pictures to upload.

But that’s neither here nor there. You’re reading to find out about Robosoft and PAD and how it can help you promote your software.

So let’s get to it… And start from the beginning…

PAD

First, you need to have a minimum amount of technical knowledge for some terminology. Here I’m going to outline what PAD is, so you need to understand XML. If you don’t know what it is, it’s a superset of XHTML where you get to name your own tags and attributes. Done. It’s pretty much that easy. For PAD it’s even easier though as PAD does not use any attributes; nodes either contain data or other nodes.

PAD is an XML specification that structures everything you would want to know about a piece of software. And more. It allows easy syndication of your software information. It was originally created by Harold Holmes then sold to the ASP (Association of Software Professionals). It has had different maintainers over the years, but all from the ASP.

There are several top level nodes for a PAD file, including the company node and product nodes. The company node contains information about the software author or publisher.

Company information is reused for different products from the same company. If you look at different PAD files though, you will often see company information doesn’t match perfectly. e.g. Phone numbers or email addresses or contact people may change over time.

Product information spans several root level nodes and contains everything from the program name and description to downloads and screenshots. This is the most important part and in future posts I will go into great detail about it. The most important ones are the “Program_Descriptions” and “Web_Info” nodes.

As mentioned above, nodes are all very simple with no attributes. i.e. All nodes are of the form:

<node>content</node>

So as long as you understand that, the rest of the spec you can learn along the way.

PADGen

You can create a PAD file in a simple text editor, but there’s no reason to when there are several good PAD authoring tools available. The ASP offers 2 PAD authoring tools: PADGen and PAD Manager. PADGen is currently maintained by Mykola Rudenko, the author of Robosoft. PAD Manager is Mykola’s version of PADGen, but is also offered through the ASP.

Both are free programs. Whichever you decide to use is primarily a matter of personal choice. I use PADGen, but other people may prefer the drill-down approach in PAD Manager.

The PADGen interface is intuitive and self-explanatory. The screen below lets you input information for the Company_Info node (click to zoom):

PADGen Blank Company InfoEach input corresponds to a node in a PAD file.

If you haven’t already, download PADGen from the ASP and create a PAD file for one of your software titles. Don’t skip any sections and fill them all out completely. Some are optional, but you should complete the Company Info, Program Info, Descriptions, Web Info, and Permissions tabs. That’s enough for a PAD file.

The Build Options tab has some options that you can fill in or not. Our more advanced techniques will make the build options irrelevant.

But, that’s enough of an introduction to PAD. Like I said above, the best thing you can do is to get PADGen and create a PAD file. Future posts will assume that you are familiar with the actual spec. Here’s a blank PAD file:

<?xml version="1.0" encoding="UTF-8" ?>
<XML_DIZ_INFO>
 <MASTER_PAD_VERSION_INFO>
 <MASTER_PAD_VERSION>3.11</MASTER_PAD_VERSION>
 <MASTER_PAD_EDITOR>PADGen 3.1.1.47 http://www.padgen.org</MASTER_PAD_EDITOR>
 <MASTER_PAD_INFO>Portable Application Description, or PAD for short, is a data set that is used by shareware authors to disseminate information to anyone interested in their software products. To find out more go to http://pad.asp-software.org</MASTER_PAD_INFO>
 </MASTER_PAD_VERSION_INFO>
 <Company_Info>
 <Company_Name>a</Company_Name>
 <Address_1 />
 <Address_2 />
 <City_Town />
 <State_Province />
 <Zip_Postal_Code />
 <Country />
 <Company_WebSite_URL />
 <Contact_Info>
 <Author_First_Name />
 <Author_Last_Name />
 <Author_Email />
 <Contact_First_Name />
 <Contact_Last_Name />
 <Contact_Email />
 </Contact_Info>
 <Support_Info>
 <Sales_Email />
 <Support_Email />
 <General_Email />
 <Sales_Phone />
 <Support_Phone />
 <General_Phone />
 <Fax_Phone />
 </Support_Info>
 </Company_Info>
 <Program_Info>
 <Program_Name>a</Program_Name>
 <Program_Version />
 <Program_Release_Month>03</Program_Release_Month>
 <Program_Release_Day>20</Program_Release_Day>
 <Program_Release_Year>2011</Program_Release_Year>
 <Program_Cost_Dollars />
 <Program_Cost_Other_Code />
 <Program_Cost_Other />
 <Program_Type />
 <Program_Release_Status />
 <Program_Install_Support />
 <Program_OS_Support />
 <Program_Language />
 <Program_Change_Info />
 <Program_Specific_Category />
 <Program_Category_Class />
 <Program_System_Requirements />
 <File_Info>
 <File_Size_Bytes />
 <File_Size_K />
 <File_Size_MB />
 </File_Info>
 <Expire_Info>
 <Has_Expire_Info>N</Has_Expire_Info>
 <Expire_Count />
 <Expire_Based_On />
 <Expire_Other_Info />
 <Expire_Month />
 <Expire_Day />
 <Expire_Year />
 </Expire_Info>
 </Program_Info>
 <Program_Descriptions>
 <English>
 <Keywords />
 <Char_Desc_45 />
 <Char_Desc_80 />
 <Char_Desc_250 />
 <Char_Desc_450 />
 <Char_Desc_2000 />
 </English>
 </Program_Descriptions>
 <Web_Info>
 <Application_URLs>
 <Application_Info_URL />
 <Application_Order_URL />
 <Application_Screenshot_URL />
 <Application_Icon_URL />
 <Application_XML_File_URL />
 </Application_URLs>
 <Download_URLs>
 <Primary_Download_URL />
 <Secondary_Download_URL />
 <Additional_Download_URL_1 />
 <Additional_Download_URL_2 />
 </Download_URLs>
 </Web_Info>
 <Permissions>
 <Distribution_Permissions />
 <EULA />
 </Permissions>
 <Affiliates>
 <Affiliates_FORM>Y</Affiliates_FORM>
 <Affiliates_VERSION>1.4</Affiliates_VERSION>
 <Affiliates_URL>http://pad.asp-software.org/extensions/Affiliates.htm</Affiliates_URL>
 <Affiliates_Information_Page />
 <Affiliates_Avangate_Order_Page />
 <Affiliates_Avangate_Vendor_ID />
 <Affiliates_Avangate_Product_ID />
 <Affiliates_Avangate_Maximum_Commission_Rate />
 <Affiliates_BMTMicro_Order_Page />
 <Affiliates_BMTMicro_Vendor_ID />
 <Affiliates_BMTMicro_Product_ID />
 <Affiliates_BMTMicro_Maximum_Commission_Rate />
 <Affiliates_Cleverbridge_Order_Page />
 <Affiliates_Cleverbridge_Vendor_ID />
 <Affiliates_Cleverbridge_Product_ID />
 <Affiliates_Cleverbridge_Maximum_Commission_Rate />
 <Affiliates_clixGalore_Order_Page />
 <Affiliates_clixGalore_Vendor_ID />
 <Affiliates_clixGalore_Product_ID />
 <Affiliates_clixGalore_Maximum_Commission_Rate />
 <Affiliates_CommissionJunction_Order_Page />
 <Affiliates_CommissionJunction_Vendor_ID />
 <Affiliates_CommissionJunction_Product_ID />
 <Affiliates_CommissionJunction_Maximum_Commission_Rate />
 <Affiliates_DigiBuy_Order_Page />
 <Affiliates_DigiBuy_Vendor_ID />
 <Affiliates_DigiBuy_Product_ID />
 <Affiliates_DigiBuy_Maximum_Commission_Rate />
 <Affiliates_DigitalCandle_Order_Page />
 <Affiliates_DigitalCandle_Vendor_ID />
 <Affiliates_DigitalCandle_Product_ID />
 <Affiliates_DigitalCandle_Maximum_Commission_Rate />
 <Affiliates_Emetrix_Order_Page />
 <Affiliates_Emetrix_Vendor_ID />
 <Affiliates_Emetrix_Product_ID />
 <Affiliates_Emetrix_Maximum_Commission_Rate />
 <Affiliates_eSellerate_Order_Page />
 <Affiliates_eSellerate_Vendor_ID />
 <Affiliates_eSellerate_Product_ID />
 <Affiliates_eSellerate_Maximum_Commission_Rate />
 <Affiliates_Kagi_Order_Page />
 <Affiliates_Kagi_Vendor_ID />
 <Affiliates_Kagi_Product_ID />
 <Affiliates_Kagi_Maximum_Commission_Rate />
 <Affiliates_LinkShare_Order_Page />
 <Affiliates_LinkShare_Vendor_ID />
 <Affiliates_LinkShare_Product_ID />
 <Affiliates_LinkShare_Maximum_Commission_Rate />
 <Affiliates_NorthStarSol_Order_Page />
 <Affiliates_NorthStarSol_Vendor_ID />
 <Affiliates_NorthStarSol_Product_ID />
 <Affiliates_NorthStarSol_Maximum_Commission_Rate />
 <Affiliates_OneNetworkDirect_Order_Page />
 <Affiliates_OneNetworkDirect_Vendor_ID />
 <Affiliates_OneNetworkDirect_Product_ID />
 <Affiliates_OneNetworkDirect_Maximum_Commission_Rate />
 <Affiliates_Order1_Order_Page />
 <Affiliates_Order1_Vendor_ID />
 <Affiliates_Order1_Product_ID />
 <Affiliates_Order1_Maximum_Commission_Rate />
 <Affiliates_Osolis_Order_Page />
 <Affiliates_Osolis_Vendor_ID />
 <Affiliates_Osolis_Product_ID />
 <Affiliates_Osolis_Maximum_Commission_Rate />
 <Affiliates_Plimus_Order_Page />
 <Affiliates_Plimus_Vendor_ID />
 <Affiliates_Plimus_Product_ID />
 <Affiliates_Plimus_Maximum_Commission_Rate />
 <Affiliates_Regnet_Order_Page />
 <Affiliates_Regnet_Vendor_ID />
 <Affiliates_Regnet_Product_ID />
 <Affiliates_Regnet_Maximum_Commission_Rate />
 <Affiliates_Regnow_Order_Page />
 <Affiliates_Regnow_Vendor_ID />
 <Affiliates_Regnow_Product_ID />
 <Affiliates_Regnow_Maximum_Commission_Rate />
 <Affiliates_Regsoft_Order_Page />
 <Affiliates_Regsoft_Vendor_ID />
 <Affiliates_Regsoft_Product_ID />
 <Affiliates_Regsoft_Maximum_Commission_Rate />
 <Affiliates_ShareIt_Order_Page />
 <Affiliates_ShareIt_Vendor_ID />
 <Affiliates_ShareIt_Product_ID />
 <Affiliates_ShareIt_Maximum_Commission_Rate />
 <Affiliates_Shareasale_Order_Page />
 <Affiliates_Shareasale_Vendor_ID />
 <Affiliates_Shareasale_Product_ID />
 <Affiliates_Shareasale_Maximum_Commission_Rate />
 <Affiliates_SWReg_Order_Page />
 <Affiliates_SWReg_Vendor_ID />
 <Affiliates_SWReg_Product_ID />
 <Affiliates_SWReg_Maximum_Commission_Rate />
 <Affiliates_V-Share_Order_Page />
 <Affiliates_V-Share_Vendor_ID />
 <Affiliates_V-Share_Product_ID />
 <Affiliates_V-Share_Maximum_Commission_Rate />
 <Affiliates_VFree_Order_Page />
 <Affiliates_VFree_Vendor_ID />
 <Affiliates_VFree_Product_ID />
 <Affiliates_VFree_Maximum_Commission_Rate />
 <Affiliates_Yaskifo_Order_Page />
 <Affiliates_Yaskifo_Vendor_ID />
 <Affiliates_Yaskifo_Product_ID />
 <Affiliates_Yaskifo_Maximum_Commission_Rate />
 </Affiliates>
 <ASP>
 <ASP_FORM>Y</ASP_FORM>
 <ASP_Member>N</ASP_Member>
 <ASP_Member_Number />
 </ASP>
</XML_DIZ_INFO>

And here’s a PAD file for one of my own software titles (it is somewhat old now and out of date):

<?xml version="1.0" ?>
<XML_DIZ_INFO>
 <MASTER_PAD_VERSION_INFO>
 <MASTER_PAD_VERSION>3.01</MASTER_PAD_VERSION>
 <MASTER_PAD_EDITOR>PADGen 3.0.1.38 http://www.padgen.org</MASTER_PAD_EDITOR>
 <MASTER_PAD_INFO>Portable Application Description, or PAD for short, is a data set that is used by shareware authors to disseminate information to anyone interested in their software products. To find out more go to http://www.asp-shareware.org/pad</MASTER_PAD_INFO>
 </MASTER_PAD_VERSION_INFO>
 <Company_Info>
 <Company_Name>Renegade Minds</Company_Name>
 <Address_1>#102, 651-7 Bunji</Address_1>
 <Address_2>Yeoksam Dong, Kangnam Gu</Address_2>
 <City_Town>Seoul</City_Town>
 <State_Province>Seoul</State_Province>
 <Zip_Postal_Code>135-913</Zip_Postal_Code>
 <Country>South Korea</Country>
 <Company_WebSite_URL>http://renegademinds.com/</Company_WebSite_URL>
 <Contact_Info>
 <Author_First_Name>Ryan</Author_First_Name>
 <Author_Last_Name>Smyth</Author_Last_Name>
 <Author_Email>pad@renegademinds.com</Author_Email>
 <Contact_First_Name>Ryan</Contact_First_Name>
 <Contact_Last_Name>Smyth</Contact_Last_Name>
 <Contact_Email>pad@renegademinds.com</Contact_Email>
 </Contact_Info>
 <Support_Info>
 <Sales_Email>pad@renegademinds.com</Sales_Email>
 <Support_Email>pad@renegademinds.com</Support_Email>
 <General_Email>pad@renegademinds.com</General_Email>
 <Sales_Phone>+82-19-313-7399</Sales_Phone>
 <Support_Phone>+82-19-313-7399</Support_Phone>
 <General_Phone>+82-19-313-7399</General_Phone>
 <Fax_Phone />
 </Support_Info>
 </Company_Info>
 <Program_Info>
 <Program_Name>Guitar and Drum Trainer</Program_Name>
 <Program_Version>4-RC1</Program_Version>
 <Program_Release_Month>11</Program_Release_Month>
 <Program_Release_Day>12</Program_Release_Day>
 <Program_Release_Year>2008</Program_Release_Year>
 <Program_Cost_Dollars>49.95</Program_Cost_Dollars>
 <Program_Cost_Other_Code />
 <Program_Cost_Other />
 <Program_Type>Shareware</Program_Type>
 <Program_Release_Status>New Release</Program_Release_Status>
 <Program_Install_Support>Install and Uninstall</Program_Install_Support>
 <Program_OS_Support>Windows2000,WinXP,Windows2003,Windows Vista Starter,Windows Vista Home Basic,Windows Vista Home Premium,Windows Vista Business,Windows Vista Enterprise,Windows Vista Ultimate,Windows Vista Home Basic x64,Windows Vista Home Premium x64,Windows Vista Business x64,Windows Vista Enterprise x64,Windows Vista Ultimate x64</Program_OS_Support>
 <Program_Language>English</Program_Language>
 <Program_Change_Info>Added Remove Vocals and Instruments, 62-band stereo EQ, save slowed down music, save pitch shifted songs</Program_Change_Info>
 <Program_Specific_Category>Audio</Program_Specific_Category>
 <Program_Category_Class>Audio &amp; Multimedia::Audio File Players</Program_Category_Class>
 <Program_System_Requirements>2.0 GHz CPU, 512 MB RAM, .NET 2.0</Program_System_Requirements>
 <File_Info>
 <File_Size_Bytes>3371036</File_Size_Bytes>
 <File_Size_K>3292</File_Size_K>
 <File_Size_MB>3.21</File_Size_MB>
 </File_Info>
 <Expire_Info>
 <Has_Expire_Info>Y</Has_Expire_Info>
 <Expire_Count>15</Expire_Count>
 <Expire_Based_On>Days</Expire_Based_On>
 <Expire_Other_Info />
 <Expire_Month />
 <Expire_Day />
 <Expire_Year />
 </Expire_Info>
 </Program_Info>
 <Program_Descriptions>
 <English>
 <Keywords>slow down music, pitch shift, vocal remover, remove vocals, tempo, visualizations, eq, pro audio, slow down, slow down mp3, reduce speed, slow</Keywords>
 <Char_Desc_45>Slow down music to learn new songs better</Char_Desc_45>
 <Char_Desc_80>Improve music practice time. Slow down music to your own pace to improve easier.</Char_Desc_80>
 <Char_Desc_250>Slow down music to learn at your own pace. Pitch shift music instead of retuning your instrument. Loop music. Filter instruments with vocal removal and 62-band stereo EQ. Save slowed down music. Pitch shift music. Save song settings. </Char_Desc_250>
 <Char_Desc_450>Slow down music to learn new songs at your own pace. Pitch shift music in different keys to your instrument instead of retuning. Filter out unwanted musical parts with vocal removal/reduction and a powerful 62 band professional level EQ. Set loop points to repeat parts. Save settings to practice later. Use the Speed Trainer to gradually increase or decreae speed. Slowing down music makes new songs and solos easy to learn. Save slowed down music.</Char_Desc_450>
 <Char_Desc_2000>Guitar and Drum Trainer is the ultimate musician's MP3 player to help increase practice time quality, improve playing faster and easier, or transcribe music.

How Guitar and Drum Trainer helps:

Slow down music to practice and learn at your own pace.

Set loop points to practice difficult parts of a song easier.

Pitch shift music to match your instrument's tuning.

Use the GDT Speed Trainer to gradually increase music tempo to build accuracy and speed.

A full wave and zoomed wave form let you see music you are playing along to.

Zoom in to the second.

Filter out unwanted musical parts with a powerful 62-band stereo equalizer.

Filter center panned or non-center panned audio with vocal removal (karaoke).

Save slowed down music or pitch shifted music to FLAC or MP3 with LAME addon.

Shift stereo balance to hear musical parts played in the left or right channels more clearly.

Remix stereo channels.

View real time EQ visuals for graphical intrepretation of musical frequencies.

Hover mouse over EQ visuals to discover notes.

Choose your own color schemes for wave forms and EQ visualizations to match your personal style.

Open and play MP3, FLAC, WMA, OGG, WAV and CD audio files.

Use the Count In feature to set playback delays that give you time to return to your drum kit, piano, or keyboard racks.

Adjust CPU controls for optimum performance of visualizations.

Control volume and gain seperately for complete volume control.

Save loops, EQ settings and color schemes for fast recall.

Save and open song configurations to continue practice sessions later.

Set preferences to work the way you feel most comfortable.

Language learners, dancers and vocalists can also use the same features to help them achieve their goals.

The rich feature set is carefully crafted to provide a smooth and easy user experience, while maintaining a high functionality for demanding professional musicians.

</Char_Desc_2000>
 </English>
 </Program_Descriptions>
 <Web_Info>
 <Application_URLs>
 <Application_Info_URL>http://renegademinds.com/Products/GuitarDrumTrainer/tabid/65/Default.aspx</Application_Info_URL>
 <Application_Order_URL>http://renegademinds.com/BuyNow/tabid/62/Default.aspx</Application_Order_URL>
 <Application_Screenshot_URL>http://renegademinds.com/Portals/0/GDT/Slow-Down-Music/GDT4-Slow-Down-Music-Loops.gif</Application_Screenshot_URL>
 <Application_Icon_URL>http://renegademinds.com/portals/0/GDT-2.3-32x32.gif</Application_Icon_URL>
 <Application_XML_File_URL>http://renegademinds.com/portals/0/GDT4.xml</Application_XML_File_URL>
 </Application_URLs>
 <Download_URLs>
 <Primary_Download_URL>http://renegademinds.com/Portals/0/GDT4.zip</Primary_Download_URL>
 <Secondary_Download_URL />
 <Additional_Download_URL_1 />
 <Additional_Download_URL_2 />
 </Download_URLs>
 </Web_Info>
 <Permissions>
 <Distribution_Permissions />
 <EULA />
 </Permissions>
 <ASP>
 <ASP_FORM>Y</ASP_FORM>
 <ASP_Member>Y</ASP_Member>
 <ASP_Member_Number>05884</ASP_Member_Number>
 </ASP>
</XML_DIZ_INFO>

Hopefully that will help some.

Share

4 thoughts on “Robosoft and PAD (Part 1): The PAD Spec

  1. Two more suggestion.

    Have a special email address for PAD. Don’t publish you real support and contact emails in it.

    Don’t publish your real name in PAD. Use your keywords instead.

    1. Good point with the email address. Above I use pad@ and generally use the same one there.

      For names, I’m not that particular.

      1. I have noticed that some archives use contact name as anchor text for backlink to product site. So now I use keywords instead my real name 🙂

        Something like Backupsoftware Inc. or Soundrecorder Website

  2. Ive also been using robosoft for software marketing for a while now. Made about two dozen submissions, some more successful than others.. I’ve written some php code to try and improve the results. Just finished a web based PAD Translator. Upload a PAD with descriptions in 1 language, get a PAD back with descriptions in 52 languages. Would love to hear your thoughts on it: http://padtools.org/pad_translator/ Im also planning an email clicker for all those confirmation emails.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.