<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-4735792341523020531</id><updated>2011-11-27T15:21:35.573-08:00</updated><category term='photo shop tutorials'/><category term='Internet'/><category term='Powerpoint Designs'/><category term='visual basic'/><category term='free auto cad programs'/><category term='Linux'/><category term='Guitar Lessons'/><category term='free sql tutorials'/><category term='Web Designers'/><category term='Windows'/><category term='Fun'/><category term='autocad'/><category term='Java'/><category term='SolidWorks'/><category term='Rapidshare'/><category term='Google'/><category term='photoshop tutorials'/><title type='text'>Free Online Tutorials for Photoshop Autocad Rapidshare</title><subtitle type='html'>free tutorials for adobe photo shop, flash css, excel, typing html, dream weaver, quickbooks,access free rapidshare downloads Microsoft tutorial auto cad and visual basic lessons</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>85</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-2959627111330563705</id><published>2009-04-10T07:39:00.000-07:00</published><updated>2009-04-10T07:46:36.105-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='autocad'/><category scheme='http://www.blogger.com/atom/ns#' term='free auto cad programs'/><title type='text'>free auto cad programs</title><content type='html'>&lt;h1 style="font-family: times new roman;"&gt;&lt;span style="font-size:85%;"&gt;&lt;strong&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;1&lt;/span&gt;) Quick screen-shot demonstration of how &lt;span style="color: rgb(51, 102, 255);"&gt;eMachineShop&lt;/span&gt; works&lt;/strong&gt;:&lt;/span&gt;&lt;/h1&gt;&lt;h1 style="font-family: times new roman;"&gt;&lt;span style="font-size:85%;"&gt;Custom fabrication was never this streamlined, cost-effective, and enjoyable.&lt;/span&gt;&lt;/h1&gt;&lt;span style="font-family: times new roman;font-size:85%;" &gt;&lt;/span&gt;    &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:85%;"&gt;&lt;a href="http://www.emachineshop.com/ftp/emssetup156.exe"&gt;&lt;img src="http://www.emachineshop.com/machine-shop/assets/images/download_now.gif" alt="download_now" title="download_now" width="133" height="36" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;Download now and be designing in minutes!&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;2&lt;/span&gt;) &lt;strong style="color: rgb(51, 102, 255);"&gt;SmartDraw 2009 Suite Edition&lt;/strong&gt; is                                 the easy drawing software that lets you create                                 professional                           floor plans, facility diagrams, home designs, and more                           in minutes&lt;strong&gt; Looking for an easy, &lt;/strong&gt;&lt;a href="http://www.smartdraw.com/specials/facilityplanning.asp?id=10468" target="_blank"&gt;downloadable                               CAD program&lt;/a&gt;&lt;br /&gt;&lt;/span&gt; &lt;/p&gt;&lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;3&lt;/span&gt;) &lt;b style="color: rgb(51, 102, 255);"&gt;Free DWG Viewer&lt;/b&gt; Publisher Description will open native DWG, DXF, and DWF files for viewing, along with accompanying Xref files. It will also open Informative Graphics' own "content sealed" (CSF) file format, which is generated by the company's Net-It publishing products and featuring Visual Rights security options for file content. The DWG viewer also supports IGC's legacy formats from previous versions of Brava! and MYRIAD. View native AutoCAD r12 to 2005 files. &lt;a href="http://www.findmysoft.com/download-Free_DWG_Viewer.html"&gt;Download&lt;/a&gt; (13.9 MB)&lt;/span&gt;                               &lt;/p&gt;    &lt;span style="font-family: times new roman;font-size:85%;" &gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-2959627111330563705?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/2959627111330563705/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=2959627111330563705' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/2959627111330563705'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/2959627111330563705'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2009/04/free-auto-cad-programs.html' title='free auto cad programs'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-8143129088876323821</id><published>2008-02-26T11:18:00.000-08:00</published><updated>2008-02-26T11:20:39.433-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='autocad'/><title type='text'>Download Free Autocad viewer</title><content type='html'>&lt;span style="font-weight: bold;"&gt;DWGgateway now reads AutoCAD 2007&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;If you’re an AutoCAD user who occasionally has issues sharing files with colleagues, DWGgateway can make your life easier than ever now that it reads files created with AutoCAD 2007.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Why use DWGgateway?&lt;/span&gt;&lt;br /&gt;No need to upgrade to the next version of AutoCAD software&lt;br /&gt;&lt;br /&gt;You do not have to upgrade your AutoCAD license to the new version of AutoCAD to be compatible with your DWG files.&lt;br /&gt;Open and edit any DWG file using any version of AutoCAD&lt;br /&gt;&lt;br /&gt;Eliminate the need to upgrade AutoCAD licenses just to be able to share work and collaborate with other AutoCAD users. DWGgateway is the first free data translation plug-in that lets AutoCAD users work easily with DWG files created by any version of AutoCAD software.&lt;br /&gt;&lt;br /&gt;DWGgateway is simple&lt;br /&gt;&lt;br /&gt;    * Open DWG files created by any version of AutoCAD software.&lt;br /&gt;    * Save DWG files to any version of AutoCAD software.&lt;br /&gt;    * No need to leave the AutoCAD UI to open, save, or convert files - simply access DWGgateway from inside AutoCAD.&lt;br /&gt;    * Quick and easy download - the file size is small and there are no lengthy forms to fill out&lt;br /&gt;&lt;br /&gt;Create industry standard PDF documents from within AutoCAD&lt;br /&gt;&lt;br /&gt;DWGgateway enables AutoCAD users to create PDF documents that can be shared with virtually anyone. DWGgateway includes Adobe® PDF Library technology. Adobe PDF is the de facto standard for electronic document exchange. More than one half-billion copies of its companion software, Adobe® Reader®, have been distributed worldwide, and the world's top 10 PC makers ship their systems with the application.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;What users are saying:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;"An excellent option for those who do not want to be forced to constantly upgrade their AutoCAD. I have both opened and used several AutoCAD 2004 drawings on 2000i with no problems!."&lt;br /&gt;&lt;br /&gt;Jeff Hamilton&lt;br /&gt;&lt;br /&gt;Longwall Associates&lt;br /&gt;&lt;br /&gt;&lt;table border="0" height="646" width="308"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="blueHeader" nowrap="nowrap"&gt;&lt;div align="center"&gt;&lt;a href="http://www.solidworks.com/plugins/dwggateway/download.cfm?Release=REL&amp;amp;Type=DWGMSI&amp;amp;Language=English"&gt;&lt;img style="width: 202px; height: 69px;" src="http://www.dwggateway.com/images/download_lg.gif" alt="AutoCAD free download" border="0" height="69" hspace="0" vspace="0" width="202" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/td&gt;                           &lt;td valign="top"&gt; &lt;/td&gt;                         &lt;/tr&gt;                         &lt;tr&gt;                            &lt;td height="34" valign="top" width="1"&gt; &lt;/td&gt;                           &lt;td class="blueHeader" nowrap="nowrap" width="292"&gt;&lt;p class="blueHeader" style="margin-top: 0pt; margin-bottom: 0pt;" align="center"&gt;&lt;br /&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-8143129088876323821?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/8143129088876323821/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=8143129088876323821' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/8143129088876323821'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/8143129088876323821'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/02/download-free-autocad-viewer.html' title='Download Free Autocad viewer'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-305979270188480421</id><published>2008-02-26T10:53:00.000-08:00</published><updated>2008-02-26T11:01:47.231-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Rapidshare'/><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><title type='text'>How to search rapidshare on Google</title><content type='html'>Get a free rapidshare premium account. Rapidshare is giving free rapidshare accounts regularly. Check whenever they are available and create a new one immediately. This tool will automatically checks for the premium accounts availablity. You dont need to go to rapidshare site and check for them. It will automatically checks and informs you. So download it now and get a free rapidshare premium account.&lt;br /&gt;Get it here..&lt;br /&gt;&lt;div id="body"&gt;&lt;p&gt;When it comes to finding the top entertainment on the internet, knowing how to search and use the various websites is crucial. One of the more popular entertainment-based websites on the internet is Rapidshare, which offers movies, software, mp3, music and much more. Here are a few tips on how to search Rapidshare through other websites.&lt;/p&gt;&lt;p&gt;When you begin searching Rapidshare through other sites, you will notice categories toward the top of the page. Within these categories you will find web, blog, groups, images and extensions. This makes it easy for you to quickly identify what you are looking for.&lt;/p&gt;&lt;p&gt;If you want to find blogs about music Rapidshare or TV Rapidshare, simple go to the blogs category. And the same goes for the other categories, allowing you to find the subject that you are looking for. This way you can quickly start searching for TV files or music files and forego having to search through all of the other entertainment pieces that are irrelevant to you.&lt;/p&gt;&lt;p&gt;On one website that promotes Rapidshare and Megaupload, there is a place where you can search either by the title or URL that you’re looking for. This way if you know the exact URL, you can type it in and quickly jump to the site you want. While most people aren’t familiar with the URL they’re looking for, knowing the title for the movie or TV show that you want to download can bring you to the file immediately.&lt;/p&gt;&lt;p&gt;When you search Rapidshare, there are a number of different files for all kinds of entertainment. Sites like sharing engines, which I mentioned above, allow you to find what you want without getting lost on the Rapidshare website. Aside from the categories and searching by title or URL, there is also a Google search bar on this website. This way you can type in a broad term if you’re not sure on the title or URL of what you’re looking for. This will bring up a plethora of results that you can scroll through to help you find what you’re looking for.&lt;/p&gt;&lt;p&gt;As the internet continues to evolve, more and more websites are developing rapidly. Because of this, it can sometimes be difficult to find what you’re looking for. Searching Rapidshare is not the easiest thing in the world to do because of the numerous files and categories given to you. However, with these tips you should be able to search Rapidshare, Megaupload and many sites comparable to it rather quickly.&lt;/p&gt;&lt;p&gt;&lt;img style="width: 400px; height: 400px;" alt="The image “http://technofriends.files.wordpress.com/2007/10/rapidshare.jpg” cannot be displayed, because it contains errors." src="http://technofriends.files.wordpress.com/2007/10/rapidshare.jpg" /&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-305979270188480421?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/305979270188480421/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=305979270188480421' title='15 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/305979270188480421'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/305979270188480421'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/02/how-to-search-rapidshare-on-google.html' title='How to search rapidshare on Google'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>15</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-3753334153686866495</id><published>2008-02-26T10:42:00.000-08:00</published><updated>2008-02-26T10:53:00.694-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Rapidshare'/><title type='text'>100an drama ji rapidshare wang yi</title><content type='html'>Taipei, Aug. 8 (CNA) Premier Chang Chun-hsiung said Wednesday the government will continue working to have fugitive Rebar Group founder Wang You-theng repatriated back to Taiwan through legal means, in the wake of Wang's release from a holding center in the United States.&lt;br /&gt;All Olympic venues -- with the exception of the showpiece "Bird’s Nest" stadium -- would be finished by the end of the year and ticket sales were going well, said Wang Wei, executive vice president of the Beijing Organising Committee for the Olympic Games (BOCOG).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(255, 102, 0);"&gt;Wand Word Used for the Following items on rapidshare search&lt;/span&gt;&lt;br /&gt;vera wang&lt;br /&gt;vera wang wedding dress&lt;br /&gt;wang&lt;br /&gt;vera wang wedding gown&lt;br /&gt;wang chung&lt;br /&gt;wang lee hom&lt;br /&gt;princess vera wang&lt;br /&gt;vera wang perfume&lt;br /&gt;sleepwear vera wang&lt;br /&gt;kumpulan wang simpanan pekerja&lt;br /&gt;vera wang wedding&lt;br /&gt;vera wang dress&lt;br /&gt;chien ming wang&lt;br /&gt;100an drama ji turboupload wang yi&lt;br /&gt;100an drama ji sendspace wang yi&lt;br /&gt;100an drama ji megaupload wang yi&lt;br /&gt;100an drama ji rapidshare wang yi&lt;br /&gt;frank wank&lt;br /&gt;vera wang bridal&lt;br /&gt;wang center&lt;br /&gt;wang theater&lt;br /&gt;dress vera wang wedding womens&lt;br /&gt;wang s&lt;br /&gt;vera wang jewelry&lt;br /&gt;cyndi wang&lt;br /&gt;perfume princess vera wang&lt;br /&gt;vera wang bridal gown&lt;br /&gt;sandra wang&lt;br /&gt;wang leehom&lt;br /&gt;vera wang bridesmaid&lt;br /&gt;vera wang gown&lt;br /&gt;jiro wang&lt;br /&gt;ji wang&lt;br /&gt;vera wang shoes&lt;br /&gt;vera wang bridesmaid dress&lt;br /&gt;vera wang china&lt;br /&gt;wang theater boston&lt;br /&gt;alexander wang&lt;br /&gt;vera wang bridal dress&lt;br /&gt;wang center boston&lt;br /&gt;wayne wang&lt;br /&gt;lucky or wang&lt;br /&gt;garrett wang&lt;br /&gt;pink truly vera wang&lt;br /&gt;wang wei&lt;br /&gt;vera wang bridal collection&lt;br /&gt;kumpulan wang simpanan pekerja malaysia&lt;br /&gt;wang lee hom lyric&lt;br /&gt;jimmy wang yang&lt;br /&gt;sam wang&lt;br /&gt;vera wang fragrance&lt;br /&gt;nathan wang&lt;br /&gt;vera wang maid&lt;br /&gt;mattress vera wang&lt;br /&gt;vera wang ring&lt;br /&gt;vera wang for man&lt;br /&gt;vera wang wedding invitation&lt;br /&gt;label lavender vera wang&lt;br /&gt;shanxing wang&lt;br /&gt;vera wang invitation&lt;br /&gt;ming the wang&lt;br /&gt;wangyi&lt;br /&gt;the death of woman wang&lt;br /&gt;jian wang&lt;br /&gt;vera wang bridal shoes&lt;br /&gt;david wang&lt;br /&gt;cindy wang&lt;br /&gt;his wang&lt;br /&gt;vera wang eye glasses&lt;br /&gt;dr wang&lt;br /&gt;wang zhizhi&lt;br /&gt;jennifer saskatoon wang&lt;br /&gt;vera wang handbag&lt;br /&gt;vera wang wedding shoes&lt;br /&gt;vera wang cologne&lt;br /&gt;wang bu liu xing&lt;br /&gt;vera wang purse&lt;br /&gt;by princess vera wang&lt;br /&gt;robert wang&lt;br /&gt;vera wang earring&lt;br /&gt;mattress serta vera wang&lt;br /&gt;charles wang&lt;br /&gt;wang center boston ma&lt;br /&gt;k wang&lt;br /&gt;wang yani&lt;br /&gt;vera wang bridesmaid gown&lt;br /&gt;wang theater boston ma&lt;br /&gt;vera wang engagement ring&lt;br /&gt;wang yu&lt;br /&gt;wang computer&lt;br /&gt;lisa wang&lt;br /&gt;designer wang&lt;br /&gt;vera wang prom dress&lt;br /&gt;183 club sam wang&lt;br /&gt;liqin wang&lt;br /&gt;margaret wang&lt;br /&gt;big wang&lt;br /&gt;vera wang love knots&lt;br /&gt;vera wang grosgrain&lt;br /&gt;ase wang&lt;br /&gt;Wang&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-3753334153686866495?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/3753334153686866495/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=3753334153686866495' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/3753334153686866495'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/3753334153686866495'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/02/100an-drama-ji-rapidshare-wang-yi.html' title='100an drama ji rapidshare wang yi'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-7286404293563257256</id><published>2008-02-26T10:39:00.000-08:00</published><updated>2008-02-26T10:41:12.296-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Guitar Lessons'/><title type='text'>Music Hero-Guitar Lesson Nine</title><content type='html'>&lt;p&gt;&lt;span style="font-size:130%;"&gt;Let's take a look at the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;major&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; and &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;minor         3rd&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;:&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;div align="center"&gt;&lt;center&gt;&lt;table border="0" cellpadding="6" cellspacing="0"&gt;             &lt;tbody&gt;&lt;tr&gt;                 &lt;td&gt;&lt;img src="http://www.zentao.com/guitar/lesson9/interval01.gif" height="157" width="139" /&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;img src="http://www.zentao.com/guitar/lesson9/interval02.gif" height="157" width="137" /&gt;&lt;/td&gt;             &lt;/tr&gt;             &lt;tr&gt;                 &lt;td align="center" valign="top"&gt;&lt;span style="color:#008080;"&gt;&lt;strong&gt;Major 3rd&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td align="center" valign="top"&gt; &lt;/td&gt;                 &lt;td align="center" valign="top"&gt;&lt;span style="color:#008080;"&gt;&lt;strong&gt;Minor 3rd&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;             &lt;/tr&gt;         &lt;/tbody&gt;&lt;/table&gt;         &lt;/center&gt;&lt;/div&gt;&lt;p&gt; &lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;Now let's look at how our harmonized         scale lays out on the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; and &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D-strings&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;:&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p align="center"&gt;&lt;span style="font-size:130%;"&gt;&lt;img style="width: 390px; height: 97px;" src="http://www.zentao.com/guitar/lesson9/major03.gif" /&gt;&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;Seen this way, it is immediately         obvious which harmonies are major (&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#ff0000;"&gt;-&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;F&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#ff0000;"&gt;-&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;G&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#ff0000;"&gt;-&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;) and         which are minor (&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#0000ff;"&gt;-&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;F&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#0000ff;"&gt;-&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;G&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#0000ff;"&gt;-&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#0000ff;"&gt;-&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;).&lt;/span&gt;&lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;Let's add this new information onto our         staff:&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p align="center"&gt;&lt;span style="font-size:130%;"&gt;&lt;img style="width: 388px; height: 52px;" src="http://www.zentao.com/guitar/lesson9/major04.gif" /&gt;&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;If you look closely, you should see         that the major and minor intervals form an easily         recognizable pattern:&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;div align="center"&gt;&lt;center&gt;&lt;table border="0" cellpadding="6" cellspacing="0"&gt;             &lt;tbody&gt;&lt;tr&gt;                 &lt;td align="right"&gt;&lt;span style="font-size:130%;"&gt;1st measure:&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;M3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;m3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;m3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;M3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;             &lt;/tr&gt;             &lt;tr&gt;                 &lt;td align="right"&gt;&lt;span style="font-size:130%;"&gt;2nd measure:&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;M3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;m3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;m3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;M3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;             &lt;/tr&gt;         &lt;/tbody&gt;&lt;/table&gt;         &lt;/center&gt;&lt;/div&gt;&lt;p&gt; &lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;If we look at the whole-steps and         half-steps between each harmony, we will see that they         are also the same in each measure:&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;div align="center"&gt;&lt;center&gt;&lt;table border="0" cellpadding="6" cellspacing="0"&gt;             &lt;tbody&gt;&lt;tr&gt;                 &lt;td align="right"&gt;&lt;span style="font-size:130%;"&gt;1st measure:&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;M3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;m3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;m3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;M3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;             &lt;/tr&gt;             &lt;tr&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;"&gt;W&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;"&gt;W&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;"&gt;h&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;             &lt;/tr&gt;             &lt;tr&gt;                 &lt;td&gt;&lt;span style="font-size:130%;"&gt;2nd measure:&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;M3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;m3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;m3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;M3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;             &lt;/tr&gt;         &lt;/tbody&gt;&lt;/table&gt;         &lt;/center&gt;&lt;/div&gt;&lt;p&gt; &lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;That leaves only the whole-step between         the two measures, so let's put that in:&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;div align="center"&gt;&lt;center&gt;&lt;table border="0" cellpadding="6" cellspacing="0"&gt;             &lt;tbody&gt;&lt;tr&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;M3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;m3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;m3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;M3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;M3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;m3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;m3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;M3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;             &lt;/tr&gt;             &lt;tr&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;"&gt;W&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;"&gt;W&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;"&gt;h&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#ff0000;"&gt;W&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;"&gt;W&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;"&gt;W&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;"&gt;h&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;             &lt;/tr&gt;         &lt;/tbody&gt;&lt;/table&gt;         &lt;/center&gt;&lt;/div&gt;&lt;p&gt; &lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;Now, we know from working with the         major scale in every key, that while each key has a         different combination of notes, the intervals are exactly         the same, no matter which note you start on. That means         that you can use this exact same pattern of &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;major&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; and &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;minor&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;3rds&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; to harmonize the major scale &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;in any key&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;. All you have to do is play the correct order         of the harmonies and follow the whole-step/half-step         pattern of the scale.&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;So, the major scale, no matter what key         you play it in, will always yield this exact same pattern         of &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;major&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; and &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;minor&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;3rds&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;, and the harmonies will always follow the same         W/h-step pattern. This fact allows us to assign a number         to each of the harmonies, so that we can talk about them         without regard to which key signature is being used:&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;div align="center"&gt;&lt;center&gt;&lt;table border="0" cellpadding="6" cellspacing="0"&gt;             &lt;tbody&gt;&lt;tr&gt;                 &lt;td align="center"&gt;&lt;span style="font-size:130%;color:#0000a0;"&gt;&lt;strong&gt;I&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td align="center"&gt; &lt;/td&gt;                 &lt;td align="center"&gt;&lt;span style="font-size:130%;color:#0000a0;"&gt;&lt;strong&gt;ii&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td align="center"&gt; &lt;/td&gt;                 &lt;td align="center"&gt;&lt;span style="font-size:130%;color:#0000a0;"&gt;&lt;strong&gt;iii&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td align="center"&gt; &lt;/td&gt;                 &lt;td align="center"&gt;&lt;span style="font-size:130%;color:#0000a0;"&gt;&lt;strong&gt;IV&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td align="center"&gt; &lt;/td&gt;                 &lt;td align="center"&gt;&lt;span style="font-size:130%;color:#0000a0;"&gt;&lt;strong&gt;V&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td align="center"&gt; &lt;/td&gt;                 &lt;td align="center"&gt;&lt;span style="font-size:130%;color:#0000a0;"&gt;&lt;strong&gt;vi&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td align="center"&gt; &lt;/td&gt;                 &lt;td align="center"&gt;&lt;span style="font-size:130%;color:#0000a0;"&gt;&lt;strong&gt;vii&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td align="center"&gt; &lt;/td&gt;                 &lt;td align="center"&gt;&lt;span style="font-size:130%;color:#0000a0;"&gt;&lt;strong&gt;I&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;             &lt;/tr&gt;             &lt;tr&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;M3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;m3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;m3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;M3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;M3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;m3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;m3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;M3&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;             &lt;/tr&gt;             &lt;tr&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;"&gt;W&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;"&gt;W&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;"&gt;h&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#000000;"&gt;W&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;"&gt;W&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;"&gt;W&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;"&gt;h&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;             &lt;/tr&gt;         &lt;/tbody&gt;&lt;/table&gt;         &lt;/center&gt;&lt;/div&gt;&lt;p&gt; &lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;In this case, &lt;/span&gt;&lt;span style="font-size:130%;color:#0000a0;"&gt;&lt;strong&gt;Roman numerals&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; are used instead of regular (Arabic) numbers.         This is to distinguish between intervals (which are         designated with Arabic numerals) and harmonies built from         each note of the scale (which use Roman numerals). Notice         that upper case numerals are used to designate major and         lower case numerals are used to designate minor.&lt;/span&gt;&lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;These Roman numerals are very         important, because they are used to analyze and identify         the chords within a chord progression. We'el talk some         more about this in the next lesson. For now, just learn         to call each harmony by the correct number, and memorize         the pattern of major and minor, as well as where each         type sits along the W/h-step pattern.&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;Now, before I set you to work playing         this harmonized scale in every key and on every pair of         strings (You knew that was coming, didn't you?), let me         point out one more thing.&lt;/span&gt;&lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;You know that the scale can be played         up and down the entire length of the string. Once you         reach the octave, you can just keep going higher through         the scale until you run out of frets. You also know that         you can play any notes from the scale that are below your         starting note. This is also true for the harmonized         scale. Notice that both the starting harmony and the         ending harmony are considered &lt;/span&gt;&lt;span style="font-size:130%;color:#0000a0;"&gt;&lt;strong&gt;I&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;. This is because they are the same harmony.         They're just an octave apart. Any notes that are an         octave apart (higher or lower) are considered the same         thing. This is because notes that are an octave apart &lt;em&gt;function&lt;/em&gt;         the same within a song. &lt;/span&gt;&lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;So, once you reach &lt;/span&gt;&lt;span style="font-size:130%;color:#0000a0;"&gt;&lt;strong&gt;I&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; an octave higher, you can keep going into the         next octave until you can't play any higher. The same         thing is true for any scale tones that are below your         root note. They can be harmonized too. &lt;/span&gt;&lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;You need to practice the harmonized         scale all the way up and down the strings, not just from &lt;/span&gt;&lt;span style="font-size:130%;color:#0000a0;"&gt;&lt;strong&gt;I&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; to &lt;/span&gt;&lt;span style="font-size:130%;color:#0000a0;"&gt;&lt;strong&gt;I&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;.&lt;/span&gt;&lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;Also, when you are working with the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;G&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; and &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B-strings&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;, remember that the note on the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; will be a fret higher than usual. This is         always true when it comes to the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;.&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;This is where I get to tell you what         you should already know by now. You need to work this         harmonized scale out in every key on every pair of         strings and all the way up and down the neck.&lt;/span&gt;&lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;Go for it!&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-7286404293563257256?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/7286404293563257256/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=7286404293563257256' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/7286404293563257256'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/7286404293563257256'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/02/music-hero-guitar-lesson-nine.html' title='Music Hero-Guitar Lesson Nine'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-4763701475410812877</id><published>2008-02-26T10:37:00.000-08:00</published><updated>2008-02-26T10:38:43.306-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Guitar Lessons'/><title type='text'>Guitar Lesson Eight - Theory</title><content type='html'>&lt;h3&gt;Part II:&lt;/h3&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;I'm sure that you have noticed by now         that I place a lot of importance on learning scales. The         reason for this is that scales are the foundation for all         music. Everything that you hear when listening to a piece         of music is based on scales. Therefore, in order to have         any sort of understanding of how music is constructed,         you must have a firm understanding of scales.&lt;/span&gt;&lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;At this point within the lessons, you         need to have worked with both the major and minor scales         enough that you can play both scales in all twelve keys         on any string and be comfortable working with both scales         on any two adjacent strings. &lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;The first step in creating music from a         scale is &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;melody&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;. All the work you have done with scales so far         has been geared toward exploring the melodic         possibilities of scales. Now we are going to begin         exploring how scales create &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;harmony&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;.         Harmony is created whenever two or more notes are played         together. Chords are an example of complex harmony. We         are going to look at simple harmony.&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;h3&gt;Harmonizing Scales:&lt;/h3&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;Playing more than one note at a time         (harmony) requires that you be able to see a scale on two         strings at once.&lt;/span&gt;&lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;We'll use the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; major scale on the low &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; and &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A-strings&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; for our example:&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p align="center"&gt;&lt;span style="font-size:130%;"&gt;&lt;img style="width: 341px; height: 86px;" src="http://www.zentao.com/guitar/lesson8/harmony-01.gif" /&gt;&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;Now, familiarize yourself with the         position of each interval on the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; relative to the root at the 5th fret of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;:&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p align="center"&gt;&lt;span style="font-size:130%;"&gt;&lt;img style="width: 430px; height: 108px;" src="http://www.zentao.com/guitar/lesson8/harmony-02.gif" /&gt;&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;With proper hand position, you should         find every interval except the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;7th&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; and &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;octave&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; within reach of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;root&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; at the 5th fret on the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;.&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;When playing harmony, each interval is         given a designation. The &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;2nd&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;3rd&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;6th&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; and &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;7th&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; are called &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;major&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;         intervals, while the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;4th&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; and &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;5th&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; are called &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;perfect&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;         intervals. This designation is important, because it is         the basis of how chords are named. Also, if you play the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; at the 5th fret of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; and the open &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;         together the interval is called &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;unison&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;. Unison means that two notes of the same pitch         are being played together.&lt;/span&gt;&lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;Let's take a look at what each interval         looks like in standard notation:&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p align="center"&gt;&lt;span style="font-size:130%;"&gt;&lt;img style="width: 308px; height: 53px;" src="http://www.zentao.com/guitar/lesson8/harmony-03.gif" /&gt;&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;Hey!! There's a key signature for you         to read! &lt;/span&gt;&lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;Familiarize yourself with the sound and         location of each interval. You will find that certain         intervals sound pleasing to the ear while others sound         tense or &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;dissonant&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;. For the sake of being able to hear the 7th and         octave intervals, these notes can be moved over to the         6th and 7th fret of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;.&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;Now, we'll do the same thing with the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; minor scale. &lt;/span&gt;&lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;First, let's see how the scale lines up         on both strings:&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p align="center"&gt;&lt;span style="font-size:130%;"&gt;&lt;img style="width: 344px; height: 87px;" src="http://www.zentao.com/guitar/lesson8/harmony-04.gif" /&gt;&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;Now, familiarize yourself with each of         the intervals relative to the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;root&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; note at the fifth fret of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;:&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p align="center"&gt;&lt;span style="font-size:130%;"&gt;&lt;img style="width: 366px; height: 92px;" src="http://www.zentao.com/guitar/lesson8/harmony-05.gif" /&gt;&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;Recall that the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;3rd&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;6th&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; and &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;7th&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; in there natural position are called &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;major&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; intervals. When you flat a major interval it         becomes a &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;minor&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; interval. Minor intervals are usually denoted         with a lower case "m" as opposed to a capital         "M".&lt;/span&gt;&lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;Here's the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; minor         scale intervals in standard notation:&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p align="center"&gt;&lt;span style="font-size:130%;"&gt;&lt;img style="width: 286px; height: 46px;" src="http://www.zentao.com/guitar/lesson8/harmony-06.gif" /&gt;&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;Are you looking at the key signature?         Do you understand how that key signature indicates &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; minor?&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;One of the cool things about the guitar         is that except for the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;,         the tuning of the strings is uniform. What this means to         you and me is that we can move everything over to the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; and &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D-strings&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; without having to learn new relationships         between all of our intervals:&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p align="center"&gt;&lt;span style="font-size:130%;"&gt;&lt;img style="width: 331px; height: 81px;" src="http://www.zentao.com/guitar/lesson8/harmony-07.gif" /&gt;&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;Notice that all of the intervals are in         the same position relative to the root on the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;. This will be true for every pair of strings         except the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;G&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; and &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B-strings&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;. Remember that the B-string is tuned ½-step         down from the rest of the strings. This means that all         the intervals on the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;         will be one fret higher than you would normally expect.&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;Now, figure out the major and minor         intervals on every pair of strings for all twelve keys.         Once you get going with it, you'll find that it isn't         hard to do at all.&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-4763701475410812877?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/4763701475410812877/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=4763701475410812877' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/4763701475410812877'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/4763701475410812877'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/02/guitar-lesson-eight-theory.html' title='Guitar Lesson Eight - Theory'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-2839990140996470384</id><published>2008-02-26T10:35:00.000-08:00</published><updated>2008-02-26T10:36:28.215-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Guitar Lessons'/><title type='text'>Theory -Guitar Lesson Seven</title><content type='html'>&lt;h3&gt;&lt;a name="Theory Part I"&gt;Theory Part I&lt;/a&gt;&lt;/h3&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;The major scale and the minor scale         have a unique relationship with each other. This is         because the minor scale is actually built from the major         scale. Each major scale has a minor scale inside of it. &lt;/span&gt;&lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;Let's take a look at the major scale.&lt;/span&gt;&lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;If you have worked through each of the         preceding lessons, you know quite a bit about the major         scale. You know that the note you start on is called the         root note. You know that the rest of the notes follow a         pattern of whole-steps and half-steps and that this scale         produces the intervals 1 - 2 - 3 - 4 - 5 - 6 - 7- 8. You         also know that the major scale can start on any note.&lt;/span&gt;&lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;Now I'm going to add one more item to         your knowledge of the major scale: the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;minor scale&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;.&lt;/span&gt;&lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;The minor scale is arrived at by         starting and stopping on the 6th note of the major scale.         For example, if we take the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; major         scale (&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C D         E F G A B C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;) and start on         the 6th note (&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;) instead of the original root (&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;), we get the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A minor scale&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; (&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A         B C D E F G A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;). Notice         that we are using the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;exact same notes&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; as the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; major scale, we only changed which note we         start and stop on. This is very important. By starting         and stopping on &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;, your ear will begin to hear that note as the         root note. &lt;/span&gt;&lt;span style="font-size:100%;"&gt;(It is important that         you make sure that you are playing the correct notes. You         may find yourself accidentally playing the notes of &lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt; major (&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;A         B C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:85%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt; D E F&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:85%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt; G&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:85%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;), because that is what you are used to hearing.         Pay close attention so that you are sure to play the         correct notes.)&lt;/span&gt;&lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;The minor scale may sound a bit odd to         you at first. That's ok. It takes a little while to get         used to a new scale sound. That is why I started you on         the minor scale in the last lesson. You should be getting         used to this new sound by now. This will make it a little         easier for you to understand and work with the         relationship between the major scale and the minor scale.&lt;/span&gt;&lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;The &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; major         scale and the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; minor scale are considered &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;RELATIVE&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; to one another because they share the exact         same notes. You could say that the two scales are like         brother and sister.&lt;/span&gt;&lt;/p&gt;&lt;table border="0" cellpadding="6" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td align="right"&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; major scale:&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C D E                 F G A B C &lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;             &lt;/tr&gt;             &lt;tr&gt;                 &lt;td align="right"&gt;&lt;span style="font-size:130%;"&gt;Relative minor:&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A B C                 D E F G A&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;             &lt;/tr&gt;             &lt;tr&gt;                 &lt;td align="right"&gt; &lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;             &lt;/tr&gt;             &lt;tr&gt;                 &lt;td align="right"&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;G&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; major scale:&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;G A B                 C D E F&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt; G&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;             &lt;/tr&gt;             &lt;tr&gt;                 &lt;td align="right"&gt;&lt;span style="font-size:130%;"&gt;Relative minor:&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E F&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt; G A B C D E&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;             &lt;/tr&gt;             &lt;tr&gt;                 &lt;td align="right"&gt; &lt;/td&gt;                 &lt;td&gt; &lt;/td&gt;             &lt;/tr&gt;             &lt;tr&gt;                 &lt;td align="right"&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; major scale:&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D E F&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt; G A B C# D&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;             &lt;/tr&gt;             &lt;tr&gt;                 &lt;td align="right"&gt;&lt;span style="font-size:130%;"&gt;Relative minor:&lt;/span&gt;&lt;/td&gt;                 &lt;td&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B C# D                 E F&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt; G A B&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;             &lt;/tr&gt;             &lt;tr&gt;                 &lt;td colspan="2" align="center"&gt;&lt;span style="font-size:130%;"&gt;etc...&lt;/span&gt;&lt;/td&gt;             &lt;/tr&gt;         &lt;/tbody&gt;&lt;/table&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;Now, once you have your chart finished,         you need to practice the major scale and it's relative         minor scale in each key. But don't try to practice them         all at once. It's better if you take one scale per day         and work that scale and it's relative minor scale up and         down each string. The next day, pick a different key. Do         this every day until you have practiced in every key.         Over time you will begin to see the relationship between         the two scales in every key.&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-2839990140996470384?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/2839990140996470384/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=2839990140996470384' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/2839990140996470384'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/2839990140996470384'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/02/theory-guitar-lesson-seven.html' title='Theory -Guitar Lesson Seven'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-2834010431450147437</id><published>2008-02-26T10:33:00.000-08:00</published><updated>2008-02-26T10:34:35.307-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Guitar Lessons'/><title type='text'>Introduction-Guitar Lesson Six</title><content type='html'>&lt;h3 align="left"&gt;&lt;a name="Introduction"&gt;Introduction&lt;/a&gt;&lt;/h3&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;So far, within these         lessons, The majority of our focus has been geared toward         approaching the guitar's six strings individually. That         focus is now going to shift to working with two strings         at a time. &lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;At this point, you will         begin to see Patterns and shapes emerging from the         fretboard. These patterns and shapes are very important         to the organization of musical ideas on the guitar, and,         once you begin to see them, the fingerboard will open up         for you.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;This does not mean that         you should stop practicing up and down each string         individually.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;Instead, what you may have         to do is structure your practice time to include equal         amounts of work in both areas. Eventually, you will find         yourself able to seamlessly integrate both approaches.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;Now, once w&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;e have explored the         possibilities of two strings, we will look at three         strings and then we will move on to &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;POSITION&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; playin&lt;/span&gt;&lt;span style="font-size:130%;"&gt;g. &lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;Position playing is the         direct opposite of playing up and down the strings.         Instead of moving up and down the fingerboard, position         playing requires you to play across the strings with         little or no linear hand movement.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;By the time we have         covered position playing, you will have gained a most         thorough understanding of the guitar fingerboard and will         be able to move quite easily into any area of the         fretboard that the music dictates.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;This approach to learning         the guitar seems the most logical to me, but you should         not hesitate to take advantage of &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;ANY&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; resources that you happen across, even if they         are not within the bounds of what I am currently showing         you.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;There is a lifetime of         information that can be learned about playing the guitar.         My goal is to give you the best tools that I know of to         start you on your journey.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt; &lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;So, how does a person         decide whether to play the notes on a single string or to         use more than one string?&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;There are no rules for         this. You have to decide for yourself. &lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;Unless the music requires         a technique, such as a slide, which can only be         accomplished by staying on the same string, I will         generally opt for the easiest way of playing the notes.         There are enough difficult things that you will encounter         without intentionally adding to their number.&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-2834010431450147437?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/2834010431450147437/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=2834010431450147437' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/2834010431450147437'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/2834010431450147437'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/02/introduction-guitar-lesson-six.html' title='Introduction-Guitar Lesson Six'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-2540517832890362060</id><published>2008-02-26T10:30:00.000-08:00</published><updated>2008-02-26T10:32:57.816-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Guitar Lessons'/><title type='text'>How to play Guitar</title><content type='html'>&lt;p align="left"&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;INTONATION&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;.         (The&lt;/span&gt;&lt;span style="font-size:130%;"&gt;re is a lot of debate that         rages regarding this subject. It's a lot like the         "which came first, the chicken or the egg?"         debate.&lt;/span&gt;&lt;/p&gt;&lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;Now, the overtones are         mathematically proportional to the fundamental. What that         means to you and me is that no two fundamentals produce         the exact same overtones. In other words, if an         instrument were built to play in the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;key of C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, and the overtones were used to         generate the pitches for the rest of the scale, that         instrument would not be capable of playing in tune in any         key other than &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;This is         how instruments were built for centuries.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;Eventually, the desire &lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;for &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;MODULATION&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; (changing key) within a piece         of music became great enough that instrument builders         began to experiment with what is called &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;TEMPERED TUNINGS&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;In order         to have an understanding of temperment, one must first         come to terms with the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;CIRCLE OF FIFTHS&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Let's say         that we are playing in the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;key of C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, and we want to modulate to         another. The smoothest transition will be found if we         move to a new key that is v&lt;/span&gt;&lt;span style="font-size:130%;"&gt;ery         similar to the key we are in. In other words, the fewer         notes that we have to alter in our original scale to         accommodate the new scale, the easier it will be to         modulate to the new key.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;Now, take a look at the         scale chart that you constructed in lesson 4. You will         notice that, in both the "scales with sharps"         column and the "scales with flats" column, each         scale has one more sharp or flat than the previous scale.         Also, notice that within the "scales with         sharps" column that each successive scale is built         off of the 5th note of the preceding scale, and that         within the "scales with flats" column that each         successive scale is built of the 4th tone of the         preceding scale.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;What this implies, is that         the smoothest modulation from our original &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;key of C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; will be to the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;key of G&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; or the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;key of F&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, because we would only have to         change one note (&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;F&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; to &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;F&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; or &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; to &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;b&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;) to accommodate the key change.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Let's say         that we modulate to &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;G&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. Once there, we might want to         modulate to another new key. If we choose the 4th tone of         &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;G&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; for our modulation, that would         take us back to the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;key         of C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;         (study your scale chart if this is not clear).         Therefore,the only option for modulating somewhere new,         is to go to the 5th tone (&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;).&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;If we were to continue         modulating to the fifth tone of each scale, we would         eventually arrive back on our original &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;key of C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; (I gue&lt;/span&gt;&lt;span style="font-size:130%;"&gt;ss         the world is round after all).&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;This successive modulation         can be expressed in a circle:&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;          &lt;/p&gt;&lt;p align="center"&gt;&lt;span style="font-size:130%;"&gt;&lt;img style="width: 236px; height: 231px;" src="http://www.zentao.com/guitar/lesson5/circle5ths.gif" height="231" width="236" /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="center"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;The tuning         that we use today is called &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;EQUAL TEMPERMENT&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. Equal temperment is arrived at         by tuning each 5th in the circle 2 cents flat (2 cents x         12 keys = 24 cents). This leaves us with a major chord         that is sharp by 14 cents (we can live with that) on the         3rd note of the scale, and 2 cents flat (barely         noticable) on the 5th note of the scale, but allows us to         modulate into any key with equal ease.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;All the         other notes of the scale are also slightly out of tune         with the overtones.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;This         presents a bit of a problem, especially when combined         with the distortion channel (lead channel, overdrive         channel etc...) found on most guitar amplifiers. This         type of sound is generated by over-emphasising the         harmonic overtones until a saturation level is reached. &lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;What this         all means, is that every time you play a note, you are         also setting into motion a whole slew of overtones. If         your trying to tune one note to another, your hearing,         not only the fundamental that you are trying to tune, but         also the harmonics involved with both notes.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;This is         one of the reasons for most tuning methods using unisons         (exact same note) or octaves. These notes are the only         ones that are supposed to be in tune within equal         temperment. Unisons and octaves also share the same         pitches within the overtone series.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Now,         recall that in the &lt;/span&gt;&lt;a href="http://www.zentao.com/guitar/lesson4/index.html"&gt;&lt;span style="font-size:130%;"&gt;&lt;u&gt;tuning section of lesson 4&lt;/u&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, I detailed two tuning methods         that use harmonics, one good and one bad. The method that         I labeled as good uses unison and octave harmonics in         conjunction with fretted and open-string notes. This will         yeild very accurate tuning.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;The         meathod that I labeled "bad", on the other         hand, will leave your guitar out of tune.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Let's take         a closer look:&lt;/span&gt;&lt;/p&gt;         &lt;blockquote&gt;             &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;When             you play the harmonic at the 5th fret of the low &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, the resultant pitch is &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:180%;color:#008080;"&gt;&lt;strong&gt;''&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. The harmonic at the 7th             fret of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; is also an &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. So far so good? Not quite.             &lt;/span&gt;&lt;/p&gt;             &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;If you             look at our circle of fifths, you'll see that &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; is the 5th of &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. Equal temperment dictates             that the 5th is tuned 2 cents flat, but you just             tuned them pure.&lt;/span&gt;&lt;/p&gt;             &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Now,             the frets on your guitar are spaced to give accurate             equal tempered pitches, so, in essence, you have             forced the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; to play 2 cents flat, which             is backward from what you need. ( &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; is supposed to be 2 cents             flat from &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; not &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. Study the circle if this             is not clear.)&lt;/span&gt;&lt;/p&gt;             &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Keep             in mind that 2 cents is not really enough to notice,             but you're about to do the same thing, again, to the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. You're going to be left             with a &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; that is 2 cents flat             compared to the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; which was already out of             tune!&lt;/span&gt;&lt;/p&gt;             &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;By the             time you get to the high &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, you will find that it is             noticably out of tune when compared to the low &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;.&lt;/span&gt;&lt;/p&gt;         &lt;/blockquote&gt;         &lt;p align="left"&gt; &lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;There are         a few more things to consider about the effects of         overtones on tuning:&lt;/span&gt;&lt;/p&gt;         &lt;blockquote&gt;             &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;ELECTRONIC             TUNERS&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;             - When using an electronic tuner, and trying to tune             using an open string, you're asking the tuner to pick             out the fundamental from within a barrage of             overtones. Is it any wonder that the dial goes crazy?             If instead, you tune by playing the harmonic at the             12th fret into the tuner, you will provide the tuner             with a more pure tone to read. Switching to the neck             pickup on your guitar and/or rolling back on the tone             knob will also help.&lt;/span&gt;&lt;/p&gt;             &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;DISTORTION&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; - Distortion (the sound of             your amps lead channel) accentuates everything,             especially tuning errors.&lt;/span&gt;&lt;/p&gt;             &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;POWER             CHORDS&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;             - Power chords are made up of a root note and a 5th             (this is covered more fully in the &lt;/span&gt;&lt;a href="http://www.zentao.com/guitar/lesson5/theory-2.html" target="_blank"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;&lt;u&gt;theory part II&lt;/u&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:130%;color:#000000;"&gt; section of this lesson).             They sound great with lots of distortion, but we just             learned that the 5th is supposed to be out of tune,             and that distortion is going to accentuate the             problem. It is sometimes necessary to tune your power             chords pure and "deal" with the             out-of-tuneness of the rest of the notes.&lt;/span&gt;&lt;/p&gt;             &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;MAJOR             CHORDS&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;             - Major chords use the 3rd note of the scale, which,             in equal temperment, is pretty far out of tune. They             sound pretty bad if you just hang out on them (one of             the reasons that Country music can sound so             "sour"). Again, distortion makes the             problem even worse (one of the reasons that power             chords are so common in Rock music).&lt;/span&gt;&lt;/p&gt;             &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;DEAD             STRINGS&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;             - When your strings begin to suffer from too much             "wear and tear", they begin to vibrate             inconsistently which produces odd harmonics. This             makes it almost impossible to play in tune.&lt;/span&gt;&lt;/p&gt;             &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;HARMONIC             CONVERGENCE&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; - If the "New-Agers" are right,             the next time the planets line up we're all doomed.             In that event, I don't suppose it will matter whether             your guitar is in tune or not :-)&lt;/span&gt;&lt;/p&gt;&lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;         &lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-2540517832890362060?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/2540517832890362060/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=2540517832890362060' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/2540517832890362060'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/2540517832890362060'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/02/how-to-play-guitar.html' title='How to play Guitar'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-7573946072007923955</id><published>2008-02-26T10:27:00.000-08:00</published><updated>2008-02-26T10:29:36.127-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Guitar Lessons'/><title type='text'>General Tips-Guitar Lesson Four</title><content type='html'>&lt;h3 align="left"&gt;General Tips&lt;/h3&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;There are many different         methods for tuning the guitar. We will cover the         specifics of a few of the better methods in a moment, but         first, let's look at some general guidlines that apply to         any tuning method&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt; &lt;/p&gt;                      &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;Reference             pitch&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;:             All methods of tuning, except for the use of an             electronic tuner, require that you have a reference             pitch to tune at least one string to. There are many             ways to get a reference pitch, such as:&lt;/span&gt;&lt;/p&gt;             &lt;ul&gt;&lt;li&gt;&lt;p align="left"&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;Electronic tuner&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; - Use the tuner to                     tune one string, and then, tune the rest of                     the strings by ear.&lt;/span&gt;&lt;/p&gt;                 &lt;/li&gt;&lt;li&gt;&lt;p align="left"&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;Another instrument&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; - This could be a                     piano, keyboard, another guitar or any other                     instrument that playes pitches. You will,                     most probably, encounter this as you get out                     and play with other musicians.&lt;/span&gt;&lt;/p&gt;                 &lt;/li&gt;&lt;li&gt;&lt;p align="left"&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;Your own instrument&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; - You can assume                     that at least one of the strings on your                     guitar is in tune, and tune the rest of the                     strings from there. Very rarely (unless you                     drop your guitar on the floor) will all of                     the strings on your guitar be out of tune at                     once. If you play a few familiar chords, you                     can usually determine that most of the                     strings are in tune and one or two are out.                     Once you determine which strings need to be                     tuned, you can tune them off of the strings                     that are in tune.&lt;/span&gt;&lt;/p&gt;                 &lt;/li&gt;&lt;li&gt;&lt;p align="left"&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;Tuning fork or pitchpipes&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; - Tuning forks                     provide an extremely accurate reference                     whereas pitchpipes are practically worthless.                     You get what you pay for.&lt;/span&gt;&lt;/p&gt;                 &lt;/li&gt;&lt;li&gt;&lt;p align="left"&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;Off the record&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; - When it comes to                     trying to play along with a recording, you                     will have to isolate a reference pitch from                     the recording itself. Often, it's easier to                     listen to the bass guitar to find a                     reference.&lt;/span&gt;&lt;/p&gt;                 &lt;/li&gt;&lt;li&gt;&lt;p align="left"&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;Misc.&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; - I've heard of all                     manner of references being used, including                     the dial tone on the telephone. One guy that                     I read about in a magazine even tuned his                     guitar to the 60 cycle hum caused by                     electricity. (It has been determined by                     "those on high" that the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; above &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;middle C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; shall, henceforth,                     vibrate at none other than &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;440 Hz&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. 60 Hz, therefore,                     yields a pitch that is, roughly, halfway                     between &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; and &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;b&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;.)&lt;/span&gt;&lt;/p&gt;                 &lt;/li&gt;&lt;/ul&gt;&lt;p align="left"&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;5th             fret&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;:             This is the most common "by-ear" meathod of             tuning, due to the fact that it is the only method             that utilizes the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;UNISON&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; (two notes of the exact             same pitch ringing together). Let's assume that your             low &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; is in tune. Now, play the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; note at the 5th fret of the             &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, and use that note to tune             the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; itself. The rest of the             strings, except when tuning the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, are exactly the same. The             5th fret of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; tunes the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, the 5th fret of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; tunes the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;G&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, The 4th fret of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;G&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; tunes the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; and the 5th fret of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; tunes the high &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;.&lt;/span&gt;&lt;/p&gt;             &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;Octave&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;: Tune the low &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. Now tune the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; at the 7th fret of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; to the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;open E-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. Then, tune the 7th fret of             the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; to the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;open A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, the 7th fret of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;G&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; to the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;open D&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, The 8th fret of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; to the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;open G&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, and the 7th fret of the             high &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; to the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;open B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. I use this one to double             check my tuning.&lt;/span&gt;&lt;/p&gt;             &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;Harmonics             (good)&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;:             Tune the high &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. Now tune the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;harmonic&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; at the 12th fret of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; to the 7th fret of the high             &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, the 12th fret &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;harmonic&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;G&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; to the 3rd fret of the high             &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, the 12th fret &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;harmonic&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; to the 3rd fret of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, the 12th fret &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;harmonic&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; to the 2nd fret of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;G&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, and the 12th fret &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;harmonic&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; of the low &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; to the 2nd fret of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. This is the meathod I use             to tune an acoustic guitar.&lt;/span&gt;&lt;/p&gt;             &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;Harmonics             (bad)&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;:             You will inevitably run into a lot of people who use             this one, so I'm going to lay it out for you, even             though, it will leave your guitar out of tune. In the             next lesson, I will provide you with a short             discourse on&lt;/span&gt;&lt;span style="font-size:130%;"&gt; &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;harmonic overtones&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; which will explain why this method is bad.             So, why does everyone use this method? In a word,             it's easy. Of all the tuning methods that I have ever             seen, this one makes it the easiest to hear the beat.             I suppose you could say that guitar players tend to             be very lazy, so many of them choose ease over             accuracy.&lt;/span&gt;&lt;/p&gt;             &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;Here goes: T&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;une your low &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. Then tune the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;harmonic&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; at the 7th fret of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; to the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;harmonic&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; at the 5th fret of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. Tune the 7th fret &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;harmonic&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; to the 5th fret &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;harmonic&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, and the 7th fret &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;harmonic&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;G&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; to the 5th fret &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;harmonic&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. To tune the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, you have to use one of the             other meathods like the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;5th fret&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; or &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;octave&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. Once the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; is in tune, tune the 7th             fret &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;harmonic&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; of the high &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; to the 5th fret &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;harmonic&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;.&lt;/span&gt;&lt;/p&gt;             &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;Power             chords&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;:             Power chords are second only to unisons and octaves             for being the most "in tune" thing that you             can play on the guitar. Start by tuning your low &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. Then play some power             chords using the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; and &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A-strings&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; up and down the neck, and             tune the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; so that it sounds right.             Thats all there is to this one. Play power chords on             all other pairs of strings, and just remember which             string is in tune and which needs to be adjusted.             Also, remember that the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; is tuned a fret lower than             the other strings. So, when you play a power chord             using the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;G&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; and &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B-strings&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, the notes have to be 3             frets apart instead of 2.&lt;/span&gt;&lt;/p&gt;             &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;One             final point&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;: You don't have to start with one method             and stick to that method only. I tend to "mix             and match" &lt;/span&gt;&lt;span style="font-size:130%;"&gt;from all the             above methods (and a few more) on any given pair of             strings, in order to really "nail" accurate             tuning.&lt;/span&gt;&lt;/p&gt;&lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-7573946072007923955?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/7573946072007923955/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=7573946072007923955' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/7573946072007923955'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/7573946072007923955'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/02/general-tips-guitar-lesson-four.html' title='General Tips-Guitar Lesson Four'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-9222981870823019547</id><published>2008-02-26T10:24:00.000-08:00</published><updated>2008-02-26T10:26:51.521-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Guitar Lessons'/><title type='text'>Tuning MIDI-Guitar Lesson Three</title><content type='html'>&lt;h3 align="left"&gt;&lt;a name="THEORY"&gt;THEORY&lt;/a&gt;&lt;/h3&gt;              &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Although         it might seem strange, (given the fact that the notes are         named &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; through &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;G&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;) music theory centers around         the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;key of         C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Below is         the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;CHROMATIC         SCALE&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;         starting with &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;:&lt;br /&gt;        &lt;/span&gt;&lt;span style="font-size:130%;color:#c0c0c0;"&gt;&lt;br /&gt;       &lt;br /&gt;        &lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;&lt;br /&gt;        &lt;/span&gt;&lt;/p&gt;     &lt;p align="center"&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; - &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:180%;color:#008080;"&gt;&lt;strong&gt;/&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;b&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; - &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; - &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:180%;color:#008080;"&gt;&lt;strong&gt;/&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;b&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; - &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; - &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;F&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; - &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;F&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:180%;color:#008080;"&gt;&lt;strong&gt;/&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;G&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;b&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; - &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;G&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; - &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;G&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:180%;color:#008080;"&gt;&lt;strong&gt;/&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;b&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; - &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; - &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:180%;color:#008080;"&gt;&lt;strong&gt;/&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;b&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; - &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; - &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#c0c0c0;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;           &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;A &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;SCALE&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; is nothing more than a clever         way to travel from &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;octave&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; to &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;octave&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. The word &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;CHROMATIC&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; comes from chroma or color.         Think of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;chromatic         scale&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;         (because it contains every note) as one that includes all         the colors.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Every         other scale (there are hundreds of them) is constructed         by selecting only certain notes from the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;chromatic scale&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;The &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;chromatic scale&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; is the model used for the         concept of &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;WHOLE-STEPS&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; and &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;HALF-STEPS&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; (sometimes refered to as &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;WHOLE TONE&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; and &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;SEMITONE&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;).&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;A &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;HALF-STEP&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; is the distance between any two         notes along the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;chromatic         scale&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. If         you play any note of the chromatic scale and then play         the next higher note &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;OR&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; the next lower note, that is considered a &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;HALF-STEP&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;A &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;WHOLE-STEP&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; is equal to the distance of two         &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;HALF-STEPS&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. Therefore, if you play any         note of the chromatic scale and then play, not the next         note, but, the note after that, you are executing a &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;WHOLE-STEP&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. (&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; to &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; is a &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;half-step&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; to &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; is a &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;whole-step&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; etc...)&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;When         applied to the guitar, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;half-step&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; translates to the distance of &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;one fret&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; and &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;whole-step&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; to the distance of &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;two frets&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. It makes no difference what         the names of the notes are. The only thing that matters,         is how far apart those notes are. (Understand that &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; and &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; are one fret apart as are &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; and &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;F&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. these two pair of notes are         therefore a &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;half-step&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; and not a &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;whole-step&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. This is a common         misunderstanding that beginning students have when first         learning this concept. They assume that because there is         no &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;sharp&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; or &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;flat&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; between those notes that they         are a &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;whole-step&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; apart.)&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Now,         before we continue, another definition:&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;A note         that is neither &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;sharp&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; nor &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;flat&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; is considered &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;NATURAL&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. The symbol used to denote &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;NATURAL&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; looks like this:&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt; &lt;/p&gt;         &lt;p align="center"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;&lt;img src="http://www.zentao.com/guitar/lesson3/natural.gif" height="52" width="34" /&gt;&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt; &lt;/p&gt;              &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;NATURAL&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; is &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;em&gt;&lt;strong&gt;understood&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; rather than written most of the         time. In other words, unless you see a &lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; or &lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;b&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; attatched to a note, that note is assumed to be         &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;NATURAL&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; and therefore, does not require         the use of it's symbol. (When dealing with standard music         notation however, you will encounter the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;NATURAL SIGN&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; quite frequently.)&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;If you         start on &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; and play only the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;NATURAL&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; notes until you reach the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;octave&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, you will arrive at the notes         of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C         MAJOR SCALE&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;:&lt;br /&gt;        &lt;/span&gt;&lt;span style="font-size:130%;color:#c0c0c0;"&gt;&lt;br /&gt;       &lt;br /&gt;        &lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;&lt;br /&gt;        &lt;/span&gt;&lt;/p&gt;       &lt;p align="center"&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C - D - E - F - G - A - B - C&lt;br /&gt;&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;           &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;(This is a         good time to draw your attention to the word &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;MAJOR&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. For reference sake music is         divided into different catagories based on sound quality.         Those things that are labeled &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;MAJOR&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; have a certain sound quality to         them. This will be covered in great detail as we go         along. For now, when you encounter such names as &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;MAJOR&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;MINOR&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;DOMINANT&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;DIMINISHED&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; or &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;AUGMENTED&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; don't worry about what they         mean. This knowlege will come in time. All you need to         understand at this point, is that these names refer to         what I call &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;FAMILIES         OF SOUND&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;.)&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Now, if we         look at the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;whole-steps&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; and &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;half-steps&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; between each note of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C MAJOR SCALE&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, we find this pattern:&lt;br /&gt;       &lt;br /&gt;       &lt;br /&gt;       &lt;br /&gt;        &lt;/span&gt;&lt;/p&gt;       &lt;p align="center"&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;W - W - H - W - W - W - H&lt;br /&gt;&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;           &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;This         pattern of &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;whole-steps&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; and &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;half-steps&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; is the single most important         part of understanding music theory. Know it well.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Your         theory assignment for this lesson is to map out the notes         of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C         major scale&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;         up and down each of the individual strings.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Here is         what the high &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; looks like:&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt; &lt;/p&gt;         &lt;p align="center"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;&lt;img style="width: 352px; height: 88px;" src="http://www.zentao.com/guitar/lesson3/estringcscale.gif" /&gt;&lt;/span&gt;&lt;/p&gt;              &lt;p align="left"&gt; &lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Notice the         use of a &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;Square&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; on the eighth fret. This is a         common visual aid for indicating the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;ROOT NOTE&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; of a scale. &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;ROOT NOTE&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; means the note that the scale         is based upon. Remember that we built our scale starting         on &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. Therefore, the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;ROOT NOTE&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; of the scale is &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; and the sound of the scale is &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;MAJOR&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;When first         learning a scale, It's important to start &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;AND&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; stop on the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;ROOT NOTE&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. This is so you learn to hear         how all of the notes in the scale &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;RESOLVE&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; to the root.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Try this         experiment. &lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Click on         the MIDI file below and, while it's playing, do the         following:&lt;/span&gt;&lt;/p&gt;         &lt;ul&gt;&lt;li&gt;&lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Play                 the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;root                 note&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; several times. Notice that it sounds                 right at home.&lt;/span&gt;&lt;/p&gt;             &lt;/li&gt;&lt;li&gt;&lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Slowly,                 play the note above the root (&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;) twice, the note below                 the root (&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;) twice and then play                 the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;root&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; and let the note ring.                 Notice that the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; and &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; sound &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;TENSE&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; or unsettled and the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C RESOLVES&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; that &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;TENSION&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. &lt;/span&gt;&lt;/p&gt;             &lt;/li&gt;&lt;li&gt;&lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Play                 the scale, slowly, from the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; at the 8th fret up to                 the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; at the 20th fret. (Be                 sure not to hit any wrong notes or you won't hear                 what I'm getting at) Notice how all the notes you                 play seem to naturally lead to the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; at the 20th fret.&lt;/span&gt;&lt;/p&gt;             &lt;/li&gt;&lt;li&gt;&lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Slowly,                 play the scale back down to the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; at the 8th fret. Again                 the notes seem to lead to the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;.&lt;/span&gt;&lt;/p&gt;             &lt;/li&gt;&lt;li&gt;&lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Play                 the scale up to the 20th fret, again but, this                 time, pause on the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; at the 19th fret for a                 moment. Then play the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; at the 20th fret.                 Notice how "unfinished" the scale                 sounds when you pause on the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; and how                 "complete" the scale sounds when you                 finally play the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;.&lt;/span&gt;&lt;/p&gt;             &lt;/li&gt;&lt;li&gt;&lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Play                 the scale back down to the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; at the 7th fret and                 pause for a moment. Then play the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. Again notice how                 "unfinished" it sounds when you pause                 on the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. This is called &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;TENSION&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. Notice how                 "complete" it sounds when you finally                 play the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. This is called &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;RESOLUTION&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;.&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;From this         experiment, you should realize how important &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;TENSION&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; and &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;RESOLUTION&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; are to creating music.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Now, go         ahead and figure out the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C major scale&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; on the remaining strings. Don't         worry about going across the strings (like you're doing         with your finger exercises). Just play up and down the         strings one at a time.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Once you         have a fair idea of where the notes are on one string,         play the MIDI file and practice going up and down the         entire length of the fingerboard while listening to the         sound that you are creating (If you ever sang &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;do&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;re&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;mi&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;fa&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;so&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;la&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;ti&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;do&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; in grade school, you're now playing the same         thing on your guitar).&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Then, go         on to the next string.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Playing up         and down the scale is good practice but, it's not really         making music. Let's make some music!&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Below is a         MIDI of a &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;CHORD         PROGRESSION&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;         in the key of &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C         major&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Pick a         string and, play along with the file using the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C major scale&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. Don't just play up and down         the scale. Instead, try jumping around to different spots         in the scale and see if you can come up with anything         that sounds interesting.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Now, it's         inevitable that you are going to hit some wrong notes.         Don't worry about it. If you lose your place too badly         just stop for a second and start over.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Also, If         you can hear that you are hitting wrong notes, it's a         good indication that you are developing an ear for what         the scale is "supposed" to sound like.&lt;/span&gt;&lt;/p&gt;         &lt;span style="font-size:130%;color:#000000;"&gt;You're not         going to sound like Eddie Van Halen right away but, as a         teacher I once had used to say, "&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;All of the masters were         born shitting in a diaper, just like you. The only thing         that separates you from them is practice&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;." Have fun, be adventurous         and play like you mean it!&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-9222981870823019547?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/9222981870823019547/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=9222981870823019547' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/9222981870823019547'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/9222981870823019547'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/02/tuning-midi-guitar-lesson-three.html' title='Tuning MIDI-Guitar Lesson Three'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-2490079255458366720</id><published>2008-02-26T10:21:00.000-08:00</published><updated>2008-02-26T10:24:27.265-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Guitar Lessons'/><title type='text'>Bass-Guitar Lesson Two</title><content type='html'>&lt;span style="font-size:130%;"&gt;Begin by tuning your guitar using your         electronic tuner. Check for accuracy by comparing the         pitch of each string to tunning.mid&lt;br /&gt;&lt;/span&gt;&lt;h3 align="left"&gt;&lt;a name="Theory"&gt;Theory&lt;/a&gt;&lt;/h3&gt;              &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;It's very important to         know what notes you are playing at any given time. With         practice, you will eventually reach a point where you can         identify any note on any string at a glance. This may         seem like a mammoth undertaking but, it is a lot easier         than it may first appear.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;The notes on the         fingerboard are laid out in a very logical and consistent         manner with only one exception. This exception is th&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;e &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. &lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;We will look at this         inconsistency in greater detail in a moment. But first,         let me show you something about the fingerboard.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;In lesson one, we         discussed how the notes are named and practiced playing         up and down one string at a time while naming the notes.         We also learned the term &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;OCTAVE&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;If you put         these two pieces of information together, you will find         that if you start on a given pitch and play up the string         until you reach the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;OCTAVE&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, you will be exactly &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;12 frets&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; higher than where you started.         This means that &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;12         frets&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; above          any note on any string is a note with the same         name ( It's important, at this point to make a         distinction between         &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;NOTE&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; and &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;PITCH&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;NOTE&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; refers strictly to the name of         a given &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;PITCH&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. If you play A, for example,         and then play A an &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;OCTAVE&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; higher or lower, you are         playing the same &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;NOTE&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; [&lt;/span&gt;&lt;span style="font-size:130%;"&gt; it has         the same name] Even though, "technically", you         are playing two different &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;PITCHES&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;.). The fact that the two notes         have the same &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;NAME&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; and that the ear can have         trouble distinguishing the difference in &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;PITCH&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; makes these two notes         interchangeable. To a certain extent, If you are required         to play a given note, it makes little difference which &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;OCTAVE&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; you p&lt;/span&gt;&lt;span style="font-size:130%;"&gt;lay.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;Now, take a look at the         fingerboard on your guitar. You will notice that the 12th         fret is clearly marked with two "fret dots" (         "Fret dots" is slang for the position markers         that are inlaid into the wood of the fingerboard and         along the edge of the neck at the 3rd, 5th, 7th, 9th,         12th, 15th, 17th, 19th, and 21st fret.) The 12th is the         only fret that is given the distinction of two dots (On         guitars that have 24 frets, the 24th fret will also have         two dots.).&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;The distinct marking of         the 12th fret provides us with an important visual         reference point. This is the point at which the notes on         the fingerboard begin to repeat. &lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;Recall that the open         strings are tune&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;d &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;G&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, low to high. If you follow the above         statements, you should now see that the notes at the 12th         fret are also &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;G&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;This means         that you don't have to learn separate         information to apply above the 12th fret. Anything you         learn below the 12th fret will simply repeat itself         above. This is true for chords, scales, licks, patterns         and anything else you could imagine.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;The above information can         also make it easier to identify the notes below the 12th         fret. Let's say that you want to fin&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;d &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;F&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; on the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. One method is to start with         the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;open A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; and make your way up the         fingerboard until you arrive at &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;F&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; (a distance of 8 frets&lt;/span&gt;&lt;span style="font-size:130%;"&gt;!). If instead, you were to start at the 12th         fret and work your way down the string, you will find the         note much faster (5 frets).&lt;/span&gt;&lt;/p&gt;         &lt;span style="font-size:130%;"&gt;Now, let's say that you         are playing the note at the 10th fret on th&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;e &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B-string &lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;and I ask you to tell me the         name of the note you are playing.         It should be obvious that the note you are playing is         much closer to the 12th fret than it is to the open         string. Therefore, it is an easy task to start at the         12th fret and work down the neck to the 10th fret and         identify the note&lt;br /&gt;&lt;/span&gt;&lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;Here are two more tools         that will help you get the notes down:&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;The first should be         painfully obvious. The highest and the lowest string are         both tuned t&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;o &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. Th&lt;/span&gt;&lt;span style="font-size:130%;"&gt;is         means that the notes are laid out exactly the same on         both strings. At any given fret, you will find the same         note on either of the two &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E-strings&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;The second is a powerful         tool for learning to see the notes across the fingerboard         as opposed to up and down a single string.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;In the diagram below, I         have placed a square on th&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;e &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; note at the 8th fret of the Low         &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; (It is common practice to refer         to the two &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E-strings&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; as Low &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; and High &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;). I have also placed a square         on the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;OCTAVE&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; on the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;:&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p align="center"&gt;&lt;img style="width: 440px; height: 113px;" src="http://www.zentao.com/guitar/lesson2/octave.gif" /&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;         From this diagram we can see that the octave &lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;of &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; at the 8th fret of the low &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; is two strings over (towards         the floor) and two frets up (towards the 12th fret). &lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Watch what         happens if we start with &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; at the 3rd fret of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;:&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p align="center"&gt;&lt;img style="width: 410px; height: 102px;" src="http://www.zentao.com/guitar/lesson2/octave2.gif" /&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;         Again, we see the same pattern - two strings over, two         frets up. &lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;Now understand, we could         have used any note we wanted to and this relationship         would be the same. I just picked &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; for the hell of it.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Now lets         take a look at the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;The         strings of the guitar are tuned in such a way that if you         play the note at the 5th fret of any string (except the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;G-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;) you will get the same note         (and &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;PITCH&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;) as the next &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;OPEN&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; string. For example, if you         play the note at the 5th fret of the low &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; you are playing &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; which of course is the note of         the open &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. If you play the note at the         5th fret of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; you get &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. If you play the 5th fret of         the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; you get &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;G&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. &lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;But, if         you play the 5th fret of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;G-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; you get &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; instead of &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. To get the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; note you have to play the 4th         fret instead. Yet, if you play the 5th fret of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; you &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;DO&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; get &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, but because the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B-string &lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;is "funny" it makes         the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; "funny" as well.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;What this means, for now&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, is that whenever the octave         lands on the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; or the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, It will be one fret higher (         the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; is tuned one fret lower than         all the strings before it and, since the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E-string &lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;is tuned off of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;, the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; is one fret lower as well).&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Observe         what happens if we plot the octave of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; at the 10th fret of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; as well as, the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; at the 5th fret of the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;G-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;:&lt;/span&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p align="center"&gt;         &lt;img style="width: 526px; height: 136px;" src="http://www.zentao.com/guitar/lesson2/octave3.gif" /&gt;&lt;/p&gt;         &lt;p&gt; &lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;         This tuning discrepancy         is necessary for playing chords. If you were to tune the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; and &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E-strings&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; up one fret so that they match         the rest of the strings, all of the chords that you         learned in the last lesson would be very hard to play.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Now, all         you have to remember is &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;2 strings over, two frets up&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; except when the octave falls on         the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; or the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; where you get &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;2 strings over and 3         frets up&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt;. &lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;color:#000000;"&gt;Your         assignment is to locate and memorize every &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#000000;"&gt; note on the guitar below and         above the 12th fret. Use th&lt;/span&gt;&lt;span style="font-size:130%;"&gt;e tools         I have given you and don't be afraid to cue off of the         fret dots. That's why they're on the neck in the first         place!&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-2490079255458366720?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/2490079255458366720/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=2490079255458366720' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/2490079255458366720'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/2490079255458366720'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/02/bass-guitar-lesson-two.html' title='Bass-Guitar Lesson Two'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-2335871976291908080</id><published>2008-02-26T10:17:00.000-08:00</published><updated>2008-02-26T10:20:39.056-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Guitar Lessons'/><title type='text'>Tuning up-Guitar Lesson One</title><content type='html'>&lt;h3 style="text-align: left; font-family: times new roman;"&gt;Tuning up&lt;/h3&gt;&lt;div style="font-family: times new roman;"&gt;              &lt;/div&gt;&lt;p style="text-align: justify; font-family: times new roman;"&gt;&lt;span style="font-size:130%;"&gt;The most difficult task that a         beginning guitarist faces is tuning the instrument. As it         takes time to develop a sense of pitch, I recommend that         you use an electronic tuner at first. If you don't have         one, go get one. It is impossible to learn to play on an         out of tune guitar. You can pick up an electronic tuner         for as little as $19.95, and it will pay for itself         before the end of this first lesson. Make sure that the         sales person shows you how to use it, and pay attention         to what they tell you. If the instructions don't make         sense to you, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;DO         NOT&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; leave the store until         you understand &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;EXACTLY&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; how to use the tuner. If the sales person acts         like they have something better to do than educate you on         how to tune the guitar, leave a complaint with the         management and go buy a tuner somewhere else. Playing in         tune is &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;THAT&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; important!&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify; font-family: times new roman;"&gt;         &lt;/div&gt;&lt;p style="text-align: justify; font-family: times new roman;"&gt; &lt;/p&gt;&lt;div style="text-align: justify; font-family: times new roman;"&gt;         &lt;span style="font-size:130%;"&gt;Begin by tuning your guitar using your         electronic tuner. Check for accuracy by comparing the         pitch of each string to tunning.mid&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;p style="text-align: justify; font-family: times new roman;"&gt;&lt;span style="font-size:130%;"&gt;As you work on this lesson, try tuning         to the MIDI file by ear and then double checking for         accuracy with your electronic tuner.&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify; font-family: times new roman;"&gt;                      &lt;/div&gt;&lt;p style="text-align: justify; font-family: times new roman;"&gt;&lt;span style="font-size:130%;"&gt;This lesson is divided             into four parts:&lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify; font-family: times new roman;"&gt;&lt;a name="Theory"&gt;&lt;span style="font-size:180%;"&gt;&lt;strong&gt;Theory&lt;/strong&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:180%;"&gt;&lt;strong&gt;&lt;br /&gt;&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify; font-family: times new roman;"&gt;  &lt;blockquote&gt;     &lt;blockquote&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;Notes are named after the         first seven letters in the alphabet. In order, they are:&lt;br /&gt;       &lt;br /&gt;        &lt;/span&gt;&lt;/p&gt;         &lt;p align="center"&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A         - B - C - D - E - F - G&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:180%;color:#ab9352;"&gt;&lt;strong&gt;&lt;br /&gt;        &lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;       &lt;br /&gt;       &lt;br /&gt;        &lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;Between any two notes,         except &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B -         C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; and &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E - F&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;, we also have a &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;sharp&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;         and/or &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;flat&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; note.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;These are the symbols that         are used to denote sharp and flat:&lt;br /&gt;       &lt;br /&gt;       &lt;br /&gt;       &lt;br /&gt;        &lt;/span&gt;&lt;/p&gt;     &lt;/blockquote&gt; &lt;/blockquote&gt; &lt;/div&gt;&lt;center style="font-family: times new roman;"&gt;  &lt;table style="text-align: left; margin-left: 0px; margin-right: 0px;" border="0" cellpadding="3" cellspacing="0"&gt;     &lt;tbody&gt;&lt;tr&gt;         &lt;td&gt;&lt;span style="font-size:130%;"&gt;&lt;img src="http://www.zentao.com/guitar/lesson1/sharp.gif" height="42" width="22" /&gt;&lt;/span&gt;&lt;/td&gt;         &lt;td&gt;&lt;span style="font-size:130%;"&gt;= &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;sharp&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;     &lt;/tr&gt;     &lt;tr&gt;         &lt;td&gt;&lt;span style="font-size:130%;"&gt;&lt;img src="http://www.zentao.com/guitar/lesson1/flat.gif" height="34" width="26" /&gt;&lt;/span&gt;&lt;/td&gt;         &lt;td&gt;&lt;span style="font-size:130%;"&gt;= &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;flat&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;     &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt; &lt;/center&gt;&lt;div style="text-align: justify; font-family: times new roman;"&gt;  &lt;blockquote&gt;     &lt;blockquote&gt;         &lt;p&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;       &lt;br /&gt;       &lt;br /&gt;       &lt;br /&gt;        If we list the notes, again, and include the sharps and         flats, we get:&lt;br /&gt;       &lt;br /&gt;        &lt;/span&gt;&lt;/p&gt;         &lt;p align="center"&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A         - A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:180%;color:#008080;"&gt;&lt;strong&gt;/&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;b&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt; - B - C - C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:180%;color:#008080;"&gt;&lt;strong&gt;/&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;b&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt; - D - D&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:180%;color:#008080;"&gt;&lt;strong&gt;/&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;b&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt; - E - F - F&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:180%;color:#008080;"&gt;&lt;strong&gt;/&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;G&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;b&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt; - G - G&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:180%;color:#008080;"&gt;&lt;strong&gt;/&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;b&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt; - A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:180%;color:#ab9352;"&gt;&lt;strong&gt; &lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;       &lt;br /&gt;       &lt;br /&gt;       &lt;br /&gt;        &lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;One important thing to         notice is that &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;X&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:180%;color:#008080;"&gt;&lt;strong&gt;/&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;X&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;b&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; is one note that has two names (The term used         to describe this is &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;ENHARMONIC&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;). For example, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; is the         exact same note as &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;b&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;. Sometimes, one name will be used, and         sometimes the other name will be used. We will cover this         in much greater detail in a later lesson. For now, it's         only important that you know the names of the notes.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;Another thing to notice is         that after &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;G&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:180%;color:#008080;"&gt;&lt;strong&gt;/&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;b&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; We arrive at &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; again.         This second &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; vibrates exactly twice as fast as the first &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;, and therefore, the ear tends to hear it as         another version of the same note. The second &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; is called the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;OCTAVE&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; of         the first &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;. If we continue after the second &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;, we get &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:180%;color:#008080;"&gt;&lt;strong&gt;/&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;b&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; an &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;OCTAVE&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; higher than the first, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; an &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;OCTAVE&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; higher, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; an &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;OCTAVE&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; higher etc., etc., until we get to &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; again. This &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; is two &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;OCTAVES&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; higher than the first &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;. If we keep going, the whole pattern just         repeats over and over until we can't get any higher on         the instrument. (If you didn't run out of notes, you         could keep right on going until the notes were so high         that only a dog could hear them!) The same is true if you         travel in the opposite direction. The pattern repeats         until you run out of notes, or the neighbors call the         cops (whichever comes first).&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;Here's something to help         you remember the sharps and flats. If you sharpen a         pencil, you &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;raise&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; a point on it. Therefore, if you play &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; and then play the next &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;higher&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; note, you would call the second note &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;. If you flatten a pop can, you mash it &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;down&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;. Likewise, if you play &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; and then play the next &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;lower&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; note, you would call the second note &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;b&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;. Remember that &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; and &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;b&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; are the exact same note or &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;ENHARMONIC&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;This may be a bit         confusing but, you'el get used to it.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;All you have to remember         is &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; through &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;G&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; of the alphabet and a &lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;/&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;b&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; note in between every two notes except &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B - C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; and &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E         - F&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; (there's no such note         as &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;B&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; or &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;b&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;, likewise, &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; or &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;F&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;b&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;. There is an exception to this but, that's way         down the road!).&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;Now, the strings of the         guitar are tuned &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;E         A D G B E&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; from the lowest         sounding to the highest sounding. &lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;What I have for you, is an         exercise that uses the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;         to practice playing and naming the notes. Don't worry         about the standard music notation right now. Just follow         the TAB until you get the idea. Once you get the idea of         the exercise, don't use the TAB either. You have to know         this stuff by heart.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;The idea of this exercise         is to start on the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;OPEN&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; (if you just play the string without putting         any finger down on it, its called &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;OPEN&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;) &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; and play each note, in order, up and down the         string, while naming the note out loud to yourself. Don't         worry about which left-hand fingers to use. Just use         whatever seems comfortable. We'el start worrying about         which fingers to use later.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;It looks like this:&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt; &lt;/p&gt;         &lt;p align="center"&gt;&lt;span style="font-size:130%;"&gt;&lt;img style="width: 492px; height: 333px;" src="http://www.zentao.com/guitar/lesson1/notes.gif" /&gt;&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt; &lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;         I only took the exercise up to the 12th fret but, you         could keep going as high up the neck as possible before         heading back down to the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;OPEN&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;         string. (Up and down directions on guitar &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;ALWAYS&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; refer to the pitch of the notes. If you go up         the neck, you go from playing lower sounding notes to         higher sounding notes. If you go down the neck, you go         from playing higher sounding notes to lower sounding         notes.)&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;Once you can go up and         down the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;A-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; and name the notes (Don't worry about trying to         remember exactly where each note is. That will come         later. Just get the pattern of how the notes are named so         that you know it by heart.), do the same thing on the         other strings.&lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;If you start on the &lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D-string&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; (or any other string), the pattern is still the         same. You're just starting in a different spot:        &lt;br /&gt;       &lt;br /&gt;       &lt;br /&gt;        &lt;/span&gt;&lt;/p&gt;         &lt;p align="center"&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt;D         - D&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt; - E - F - F&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt; - G - G&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt; - A - A&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt; - B - C - C&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:#008080;"&gt;&lt;strong&gt;#&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;color:#008080;"&gt;&lt;strong&gt; - D&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:180%;color:#008080;"&gt;&lt;strong&gt;&lt;br /&gt;        &lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;       &lt;br /&gt;       &lt;br /&gt;        &lt;/span&gt;&lt;/p&gt;         &lt;p align="left"&gt;&lt;span style="font-size:130%;"&gt;I left out the flats         because I'm tired of typing them, but they're still         there, just like before.&lt;/span&gt;&lt;/p&gt;     &lt;/blockquote&gt; &lt;/blockquote&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-2335871976291908080?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/2335871976291908080/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=2335871976291908080' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/2335871976291908080'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/2335871976291908080'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/02/tuning-up-guitar-lesson-one.html' title='Tuning up-Guitar Lesson One'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-5001694777956008624</id><published>2008-02-26T10:07:00.000-08:00</published><updated>2008-02-26T10:17:04.145-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='autocad'/><title type='text'>Isometric Triangular Dot Paper printable</title><content type='html'>Isometric Triangular Dot Paper&lt;br /&gt;&lt;p&gt;&lt;img style="width: 533px; height: 716px;" src="http://www.ac.wwu.edu/%7Emnaylor/dotpaper/dotpaper.gif" /&gt;&lt;/p&gt;&lt;p&gt;Asymmetric graph paper is typically used for knitting patterns. Knit stitches are taller than they are wide. You can set your own width to height ratio here to accomodate the type of stitch used.&lt;/p&gt;&lt;p&gt;Brick graph paper is typically used for beadwork patterns, but it has other applications as well. You can set your own width to height ratio. Useful for smocking designs.&lt;/p&gt;&lt;p&gt;Variable aspect ratios, and optional description lines. If you need paper to plan out your broadcast or film production,&lt;/p&gt;&lt;p&gt;The monster of log paper generators. Full log, or semi log on either axis. Up to 6 cycles &lt;i&gt;per axis&lt;/i&gt; for printing very large format sheets.&lt;/p&gt;&lt;p&gt;Arbitrary start and end numbers. Integer or non-integer increments. (By non-integer, I still mean reals... things like 0.5 and 0.2 seem to be nice... incrementing by "0.82 + 62&lt;i&gt;i&lt;/i&gt;" would be a problem.)&lt;/p&gt;&lt;br /&gt;&lt;h4&gt;Cornell Lined&lt;/h4&gt; &lt;p&gt;Cornell Lined Note Taking System. One page divided into 3 sections, with a bunch of lines in one of them.&lt;/p&gt;&lt;h4&gt;Cornell Music&lt;/h4&gt; &lt;p&gt;Standard Cornell Graph Paper layout with places to jot down your compositions and other musical notes. &lt;/p&gt;&lt;p&gt;  &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-5001694777956008624?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/5001694777956008624/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=5001694777956008624' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/5001694777956008624'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/5001694777956008624'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/02/isometric-triangular-dot-paper.html' title='Isometric Triangular Dot Paper printable'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-80438853411559823</id><published>2008-02-26T09:46:00.000-08:00</published><updated>2008-02-26T10:02:48.884-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='autocad'/><title type='text'>3D ISOMETRIC DRAWING</title><content type='html'>&lt;p align="center"&gt;&lt;b&gt;&lt;span style="font-family:Arial;font-size:130%;"&gt;SUMMATIVE TASK - 3D ISOMETRIC DRAWING&lt;/span&gt;&lt;/b&gt;&lt;/p&gt; &lt;p align="left"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;Using a computer and CAD Qickdraw drawing software, produce a rendered/surfaced isometric drawing of the orthogonal projection of the LOCKING JIG drawn below. Scale 1:1. No dimensions required.&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="left"&gt;    &lt;img src="http://www.goldengrovehs.sa.edu.au/home/tech/star2.gif" border="0" height="56" width="61" /&gt;     &lt;img src="http://www.goldengrovehs.sa.edu.au/home/tech/alarm.gif" border="0" height="32" width="32" /&gt;    &lt;img style="width: 61px; height: 56px;" src="http://www.goldengrovehs.sa.edu.au/home/tech/star2.gif" border="0" height="56" width="61" /&gt;&lt;/p&gt;&lt;p align="center"&gt;&lt;span style="font-family:Arial;font-size:100%;color:#008000;"&gt;&lt;b&gt;&lt;i&gt;Class work - formative (CAD)&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p align="left"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;Using a computer and CAD Qickdraw drawing software, produce a rendered/surfaced isometric drawing of the orthogonal projections drawn below. Scale 1:1. No dimensions required.&lt;/span&gt;&lt;/p&gt;&lt;p align="left"&gt;&lt;b&gt; &lt;p align="center"&gt;&lt;span style="font-family:Arial;font-size:130%;"&gt;SUMMATIVE TASK � ESSAY (homework)&lt;/span&gt;&lt;/p&gt; &lt;/b&gt; &lt;/p&gt;&lt;p style="line-height: 100%; margin-bottom: -2px;"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;b&gt;TASK&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: 100%; margin-top: 0pt;"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;In the early 1980s, CAD, along with other technologies made their way into the traditional drafting industry, and, as a consequence these have changed the way outcomes are produced.&lt;/span&gt;&lt;/p&gt;&lt;p style="line-height: 100%; margin-bottom: 0pt;"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;The essay needs to be structured in such a way that it has an &lt;b&gt;introduction, body, conclusion&lt;/b&gt; and a &lt;b&gt;bibliography&lt;/b&gt; as main headings.&lt;/span&gt;&lt;/p&gt; &lt;b&gt; &lt;/b&gt;&lt;p style="line-height: 100%; margin-bottom: -2px;"&gt;&lt;b&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;INTRODUCTION&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p style="line-height: 100%; margin-top: 0pt;"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;A number of well-structured sentences stating specifically what topics and points that the essay is going to cover.&lt;/span&gt;&lt;/p&gt; &lt;b&gt; &lt;p style="line-height: 100%; margin-bottom: -2px;"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;BODY&lt;/span&gt;&lt;/p&gt; &lt;/b&gt;&lt;i&gt; &lt;p style="line-height: 100%; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;What is traditional drafting?&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: 100%; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;What is CAD drafting?&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: 100%; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;What is CADD?&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: 100%; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;Compare the two drafting methods giving both good and bad points of each.&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: 100%; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;What technologies have made their way into the drafting industry and how are outcomes produced?&lt;/span&gt;&lt;/p&gt; &lt;/i&gt;&lt;b&gt; &lt;p style="line-height: 100%; margin-bottom: -2px;"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;CONCLUSION&lt;/span&gt;&lt;/p&gt; &lt;/b&gt; &lt;p style="line-height: 100%; margin-top: 0pt;"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;Personal thoughts and opinions, giving reasons that support your views on the topic.&lt;/span&gt;&lt;/p&gt; &lt;b&gt; &lt;p style="line-height: 100%; margin-bottom: -2px;"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;BIBLIOGRAPHY&lt;/span&gt;&lt;/p&gt; &lt;/b&gt; &lt;p style="line-height: 100%; margin-top: 0pt;"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;List of references indicating research and reading used to obtain information to help compile the essay.&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: 100%; margin-bottom: -2px;"&gt;&lt;b&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;ASSESSMENT &lt;/span&gt; &lt;/b&gt; &lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;b&gt; SCHEME&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="line-height: 100%; margin-top: 0pt;"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;Your essay needs to be in your own words, double line spaced, minimum of 250 word-processed words, with a 25-millimetre margin.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 8px; margin-bottom: 8px;" align="center"&gt;&lt;b&gt;&lt;span style="font-family:Arial;font-size:130%;"&gt;SUMMATIVE TASK 2 - 2D ORTHOGONAL PROJECTION&lt;/span&gt;&lt;/b&gt;&lt;/p&gt; &lt;p style="margin-top: 8px; margin-bottom: 8px;" align="left"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;Using a computer, 2D CAD Qickdraw drawing soft ware, set up a 5 x 5 grid and produce orthogonal projections in third angle (TOP VIEW, FRONT VIEW and RIGHT SIDE VIEW) of the isometric drawing of the SHAFT BRACKET drawn below. Drawing is to be drawn to a scale of 1 : 1 (full size) and be fully dimensioned.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 8px; margin-bottom: 8px;" align="center"&gt;&lt;b&gt;&lt;i&gt;&lt;span style="font-family:Arial;font-size:100%;color:#800000;"&gt;Homework assignments - formative&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;/p&gt; &lt;p style="margin-top: 8px; margin-bottom: 8px;" align="left"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;Using a rule and a red biro, complete the orthogonal projections in the 5 x 5 grids provided. Count the grid square on the isometric drawing opposite to obtain the necessary measurements for the completion of the orthogonal projections.&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-top: 8px; margin-bottom: 8px;" align="left"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;Add any missing hidden edge lines and out lines to complete the orthogonal projection.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 8px; margin-bottom: 8px;" align="center"&gt;&lt;span style="font-family:Arial;font-size:100%;color:#008000;"&gt;&lt;b&gt;&lt;i&gt;Class work - formative (CAD)&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-top: 8px; margin-bottom: 8px;" align="left"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;Using a computer, 2D CAD Qickdraw drawing soft ware, set up a 5 x 5 grid and produce orthogonal projections in third angle (TOP VIEW, FRONT VIEW and RIGHT SIDE VIEW) of the following drawn isometric drawings. Drawings are to be drawn to a scale of 1 : 1 (full size) and be fully dimensioned.&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-top: 4px; margin-bottom: 4px;" align="left"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;b&gt;NB. &lt;/b&gt;Produces a free hand pencil sketch of the three views and have them checked before using a computer.&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-top: 4px; margin-bottom: 4px;" align="left"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;b&gt;NB.&lt;/b&gt; Work out the view spacing for each exercise.&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-top: 4px; margin-bottom: 4px;" align="left"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;b&gt;NB.&lt;/b&gt; All line styles are to be of the correct thickness (value).&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-top: 4px; margin-bottom: 4px;" align="left"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;b&gt;NB. &lt;/b&gt;Have your CAD drawing checked off as you you complete each drawing exercise.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 8px; margin-bottom: 8px;" align="center"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;b&gt;ASSESSMENT SCHEME&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-top: 4px; margin-bottom: 4px;" align="center"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;Accuracy of TOP VIEW                                                        /10&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-top: 4px; margin-bottom: 4px;" align="center"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;Accuracy of FRONT VIEW                                                   /10&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-top: 4px; margin-bottom: 4px;" align="center"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;Accuracy of RIGHT SIDE VIEW                                           /10&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-top: 4px; margin-bottom: 4px;" align="center"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;Correct line values / view spacing / names of views          /10&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-top: 4px; margin-bottom: 4px;" align="center"&gt;   &lt;span style="font-family:Arial;font-size:100%;"&gt;                                                                    TOTAL              /40&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p style="margin-top: 8px; margin-bottom: 8px;" align="center"&gt;&lt;a href="http://www.goldengrovehs.sa.edu.au/home/tech/YR10WRITTENDRAWINGASSIGNMENTS.htm#Caveman"&gt;&lt;img src="http://www.goldengrovehs.sa.edu.au/home/tech/haut11.gif" border="0" height="40" width="45" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="margin-top: 8px; margin-bottom: 8px;" align="center"&gt;&lt;img style="width: 100px; height: 66px;" src="http://www.goldengrovehs.sa.edu.au/home/tech/dolphin.gif" border="0" height="66" width="100" /&gt;&lt;/p&gt; &lt;p style="margin-top: 8px; margin-bottom: 8px;" align="center"&gt;&lt;span style="font-family:Arial;font-size:100%;color:#800000;"&gt;&lt;b&gt;&lt;i&gt;Homework assignments - formative&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-top: 8px; margin-bottom: 8px;" align="left"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;Using a rule and a red biro, complete the orthogonal projections in the 5 x 5 grids provided. Count the grid square on the isometric drawing opposite to obtain the necessary measurements for the completion of the orthogonal projections.&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-top: 8px; margin-bottom: 8px;" align="left"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;Add any missing hidden edge lines and out lines to complete the orthogonal projection.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 8px; margin-bottom: 8px;" align="left"&gt;&lt;b&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;a name="TASK 1 -  2D ORTHOGONAL PROJECTION without DIMENSIONS"&gt;ASK         1 -  2D ORTHOGONAL PROJECTION without DIMENSIONS&lt;/a&gt;&lt;/span&gt;&lt;/b&gt;             &lt;/p&gt;&lt;p style="margin-top: 8px; margin-bottom: 8px;" align="center"&gt;&lt;span style="font-family:Arial;font-size:100%;color:#008000;"&gt;&lt;i&gt;&lt;b&gt;Class work 'a' - formative (CAD)&lt;/b&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-top: 8px; margin-bottom: 8px;" align="left"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;Using a computer, 2D CAD Qickdraw drawing soft ware, work through the procedure with accompanying dimensioned drawing and accurately reproduce the following drawn objects. Use a scale of 1 : 1 (full size).&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-80438853411559823?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/80438853411559823/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=80438853411559823' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/80438853411559823'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/80438853411559823'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/02/3d-isometric-drawing.html' title='3D ISOMETRIC DRAWING'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-7904593976928611603</id><published>2008-02-24T11:46:00.000-08:00</published><updated>2008-02-24T11:50:39.605-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SolidWorks'/><title type='text'>Architectural Desktop</title><content type='html'>&lt;table border="0" cellpadding="0" cellspacing="5" width="100%"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;span class="fsmall"&gt;The essential tools in ADT Schedule 2006 enable instant one-click scheduling and bill of materials, plus dynamic spreadsheet linking between Architectural Desktop or Building Systems and Microsoft Excel.&lt;/span&gt;&lt;p&gt;&lt;span class="fsmall"&gt;ADT Schedule provides the fastest and most effective way to generate schedules and bill of materials - all at the click of a button! Its feature-rich toolset lets you query drawings for Architectural Desktop objects and block attribute data and save it to a variety of file formats.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="fsmall"&gt;Keep your Microsoft Excel spreadsheets synchronized with the Dynamic Link option. Simply edit the current workbook and your drawing updates automatically! Alternatively, you can work on spreadsheets remotely and update associated drawings in an instant with the unique import options.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="fsmall"&gt;Key Features:&lt;/span&gt;&lt;/p&gt;&lt;ul&gt;&lt;span class="fsmall"&gt;&lt;li&gt;One-click scheduling of selected objects in the current drawing or multiple drawings containing Xrefs!&lt;/li&gt;&lt;li&gt;Rule Manager lets you merge tabled items based on user-defined criteria.&lt;/li&gt;&lt;li&gt;Set spreadsheet styles with unique Excel formatting options.&lt;/li&gt;&lt;li&gt;Query drawings for object data and save it to a variety of file formats including Microsoft Excel, Access, CSV and XML.&lt;/li&gt;&lt;li&gt;Hot-link Architectural Desktop drawings with Excel spreadsheets.&lt;/li&gt;&lt;li&gt;Dynamically update objects and blocks  for true design synchronization!&lt;/li&gt;&lt;li&gt;Modify the standard physical properties of objects and blocks from within Excel.&lt;/li&gt;&lt;li&gt;Connect 'live' to spreadsheets or import from spreadsheet file.&lt;/li&gt;&lt;li&gt;Dynamic Link feature supports Microsoft Excel 97, 2000 and XP.&lt;/li&gt;&lt;/span&gt;&lt;/ul&gt;&lt;span class="fsmall"&gt;ADT Schedule supports Architectural Desktop 2000-2006 and Building Systems. The software can be installed on a standalone computer or network drive (you can connect the entire design team with total network support options). Further details are available during installation.&lt;/span&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;   &lt;table border="0" cellpadding="0" cellspacing="0" width="100%"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td width="50%"&gt;&lt;table border="0" cellpadding="0" cellspacing="1" width="100%"&gt; &lt;tbody&gt;&lt;tr&gt; &lt;td align="left"&gt;&lt;span class="rspmid"&gt;&lt;b&gt;   Name:&lt;/b&gt;&lt;/span&gt;&lt;/td&gt; &lt;td align="left"&gt;&lt;span class="mid"&gt;GcadAs2006Trial.exe&lt;/span&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td align="left"&gt;&lt;span class="rspmid"&gt;&lt;b&gt;   Date:&lt;/b&gt;&lt;/span&gt;&lt;/td&gt; &lt;td align="left"&gt;&lt;span class="mid"&gt;14/01/2006&lt;/span&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td align="left"&gt;&lt;span class="rspmid"&gt;&lt;b&gt;   Size:&lt;/b&gt;&lt;/span&gt;&lt;/td&gt; &lt;td align="left"&gt;&lt;span class="mid"&gt;7.51 MB&lt;/span&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td align="left"&gt;&lt;span class="rspmid"&gt;&lt;b&gt;   Version:&lt;/b&gt;&lt;/span&gt;&lt;/td&gt; &lt;td align="left"&gt;&lt;span class="mid"&gt;1.2&lt;/span&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td align="left"&gt;&lt;span class="rspmid"&gt;&lt;b&gt;   Author:&lt;/b&gt;&lt;/span&gt;&lt;/td&gt; &lt;td align="left"&gt;&lt;span class="mid"&gt;sales@globalcad.com&lt;/span&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td align="left"&gt;&lt;span class="rspmid"&gt;&lt;b&gt;   Website:&lt;/b&gt;&lt;/span&gt;&lt;/td&gt; &lt;td align="left"&gt;&lt;span class="mid"&gt;&lt;a href="http://www.globalcad.com/" target="_blank"&gt;http://www.globalcad.com&lt;/a&gt;&lt;/span&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td align="left"&gt;&lt;span class="rspmid"&gt;&lt;b&gt;   Cost:&lt;/b&gt;&lt;/span&gt;&lt;/td&gt; &lt;td align="left"&gt;&lt;span class="mid"&gt;30 day trial (£195.00)&lt;/span&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td align="left"&gt;&lt;span class="rspmid"&gt;&lt;b&gt;   Downloads:&lt;/b&gt;&lt;/span&gt;&lt;/td&gt; &lt;td align="left"&gt;&lt;span class="mid"&gt;797&lt;/span&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td align="left"&gt;&lt;span class="rspmid"&gt;&lt;b&gt;   Ratin&lt;/b&gt;&lt;/span&gt;&lt;a href="http://www.caddepot.com/cfiles/screenshots/adtsched.gif" target="_blank"&gt;&lt;img src="http://www.caddepot.com/cfiles/screenshots/adtsched.gif" alt="adtsched.gif" border="0" height="100" width="100" /&gt;&lt;/a&gt;&lt;span class="rspmid"&gt;&lt;b&gt;g:&lt;/b&gt;&lt;/span&gt;&lt;/td&gt; &lt;td align="left"&gt;&lt;span class="mid"&gt;10/10 (1 Votes)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;b&gt;&lt;span class="rspsmall"&gt;Operating Systems:&lt;/span&gt;&lt;/b&gt;       &lt;span class="rspsmall"&gt;ADT 2000&lt;br /&gt;ADT 2000i&lt;br /&gt;ADT 2002&lt;br /&gt;ADT 2004&lt;br /&gt;ADT 2005&lt;br /&gt;ADT 2006&lt;br /&gt;Building Systems&lt;br /&gt;&lt;/span&gt;&lt;table bg cellpadding="0" cellspacing="1" width="100%" style="color:#ffffff;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td width="45%"&gt;&lt;b&gt;&lt;span class="rspsmall"&gt;Connection&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;        &lt;td align="left" width="55%"&gt;&lt;b&gt;&lt;span class="small"&gt;Download Time&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;       &lt;/tr&gt;       &lt;tr&gt;        &lt;td width="45%"&gt;&lt;span class="rspsmall"&gt;56k Modem&lt;/span&gt;&lt;/td&gt;        &lt;td width="55%"&gt;&lt;span class="small"&gt;22 mins, 76 secs&lt;/span&gt;&lt;/td&gt;       &lt;/tr&gt;       &lt;tr&gt;        &lt;td width="45%"&gt;&lt;span class="rspsmall"&gt;128k ISDN&lt;/span&gt;&lt;/td&gt;        &lt;td width="55%"&gt;&lt;span class="small"&gt;9 mins, 63 secs&lt;/span&gt;&lt;/td&gt;       &lt;/tr&gt;       &lt;tr&gt;        &lt;td width="45%"&gt;&lt;span class="rspsmall"&gt;256k Cable/DSL&lt;/span&gt;&lt;/td&gt;        &lt;td width="55%"&gt;&lt;span class="small"&gt;4 mins, 64 secs&lt;/span&gt;&lt;/td&gt;       &lt;/tr&gt;       &lt;tr&gt;        &lt;td width="45%"&gt;&lt;span class="rspsmall"&gt;512k Cable/DSL&lt;/span&gt;&lt;/td&gt;        &lt;td width="55%"&gt;&lt;span class="small"&gt;2 mins, 41 secs&lt;/span&gt;&lt;/td&gt;       &lt;/tr&gt;       &lt;tr&gt;        &lt;td width="45%"&gt;&lt;span class="rspsmall"&gt;1mbit Link&lt;/span&gt;&lt;/td&gt;        &lt;td width="55%"&gt;&lt;span class="small"&gt;1 mins, 19 secs&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt; &lt;/td&gt; &lt;td align="center" valign="middle" width="50%"&gt; &lt;table border="0" cellpadding="1" cellspacing="0"&gt; &lt;tbody&gt;&lt;tr&gt; &lt;td bgcolor="#7d808e"&gt; &lt;table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" width="100%"&gt; &lt;tbody&gt;&lt;tr&gt; &lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-7904593976928611603?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/7904593976928611603/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=7904593976928611603' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/7904593976928611603'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/7904593976928611603'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/02/architectural-desktop.html' title='Architectural Desktop'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-3773176555182161453</id><published>2008-02-24T11:34:00.000-08:00</published><updated>2008-02-24T11:46:16.053-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SolidWorks'/><title type='text'>What are the main poblems in SolidWorks</title><content type='html'>Why does Solidworks allow you to change the gear ratio?&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;Free Solidworks tutorials download&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;Disable Auto convert&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;What are all the Icons in SolidWorks&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;Can someone give me the quick and dirty on solidworks!?&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;Circular Pattern problems&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;How to cut internal annular grooves&lt;br /&gt;&lt;br /&gt;Need help with cosmos&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;Drawings&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;Would SW be best for my work type ?&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;Changing dimensions on Toolbox parts&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;dealing with balloons&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;compressing a Solidworks file&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;Introducing SolidWorks 2008&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;SolidWorks Office Premium&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;IGES file question&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;Fastener threads....&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;make model into solid&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt; Problem with Sheet Metal Bends&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt; How to avert this disaster&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;basic question&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt; Multiple bodies to single feature&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;Solidworks models in my AutoCAD drawings?&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;Solidworks vs Autocad&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;Solidworks to CAD &lt;br /&gt;&lt;br /&gt;SolidWorks World 2008&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;SolidWorks installation, missing Toolbox &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Solidworks training books and demo CD’s in the book stores?? &lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;Solidworks Training Center &lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;catia sketcher tutorials &lt;br /&gt;&lt;br /&gt;SolidWorks file extensions&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-3773176555182161453?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/3773176555182161453/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=3773176555182161453' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/3773176555182161453'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/3773176555182161453'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/02/what-are-main-poblems-in-solidworks.html' title='What are the main poblems in SolidWorks'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-2850738879384520659</id><published>2008-02-24T11:16:00.000-08:00</published><updated>2008-02-24T11:25:34.298-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Fun'/><title type='text'>Crazy Lips Games</title><content type='html'>Kindly Use your keyboard and turened up the sound to enjoy this amazing fun that you may never seen before on internet&lt;br /&gt;&lt;br /&gt;&lt;embed src="lips%28www.albinoblacksheep.com%29.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" height="400" width="400"&gt;&lt;/embed&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.mobile2fun.com/"&gt;Crazy Mobile Fun&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-2850738879384520659?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/2850738879384520659/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=2850738879384520659' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/2850738879384520659'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/2850738879384520659'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/02/crazy-lips-games.html' title='Crazy Lips Games'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-5240793450095521663</id><published>2008-02-24T11:12:00.000-08:00</published><updated>2008-02-24T11:16:05.935-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='photoshop tutorials'/><category scheme='http://www.blogger.com/atom/ns#' term='Web Designers'/><category scheme='http://www.blogger.com/atom/ns#' term='Internet'/><title type='text'>MP3 Sharing Community</title><content type='html'>&lt;p&gt;&lt;img style="width: 355px; height: 179px;" src="http://www.ttthings.com/images/portfolio/mp3_id_01.jpg" class="portfolio" alt="portfolio" /&gt; &lt;/p&gt; &lt;p&gt; There was a time were Little Ponies ran free all over the world and Google didn’t actually meant anything yet (Long live &lt;a href="http://www.hotbot.com/" title="HotBot.com"&gt;HotBot.com&lt;/a&gt;). Back in those days of the Y2K fever and before the RIAA rule the world (and killed all the little ponies) I designed a logo (a mascot) and website for a MP3 Sharing Community. &lt;em&gt;Ahhh… to be young and reckless.&lt;/em&gt; &lt;/p&gt; &lt;p&gt;&lt;img style="width: 356px; height: 185px;" src="http://www.ttthings.com/images/portfolio/mp3_web_01.jpg" class="portfolio" alt="portfolio" /&gt;  &lt;/p&gt; &lt;p&gt; &lt;img style="width: 356px; height: 267px;" src="http://www.ttthings.com/images/portfolio/mp3_web_02.jpg" class="portfolio" alt="portfolio" /&gt; &lt;/p&gt; &lt;p&gt; Eventually the site was taken down voluntarily, so the new redesign never saw the light. Until now. &lt;/p&gt; &lt;p&gt; &lt;img style="width: 380px; height: 435px;" src="http://www.ttthings.com/images/portfolio/mp3_web_03.jpg" class="portfolio" alt="portfolio" /&gt;  &lt;/p&gt;  I can already see tons of traffic coming from search engines looking for the last Britney single. So, If you got here because you typed &lt;em&gt;“mp3 britney download”&lt;/em&gt; I’m sorry this is just a piece of work I’ve done in the past for a MP3 Sharing Community that is &lt;strong&gt;NO LONGER AVAILABLE&lt;/strong&gt;. I don’t know Britney and I have parted ways with the frog (not before he stole my headphones) long time ago. Actually, I heard he’s dating Britney now, so go away and let me mourn alone in the dark&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-5240793450095521663?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/5240793450095521663/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=5240793450095521663' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/5240793450095521663'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/5240793450095521663'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/02/mp3-sharing-community.html' title='MP3 Sharing Community'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-9183282148276627766</id><published>2008-02-24T11:06:00.001-08:00</published><updated>2008-02-24T11:11:28.311-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='photoshop tutorials'/><category scheme='http://www.blogger.com/atom/ns#' term='Web Designers'/><category scheme='http://www.blogger.com/atom/ns#' term='Internet'/><title type='text'>NOS Logo, Website, Accounting and Sales</title><content type='html'>&lt;p&gt;&lt;img style="width: 392px; height: 180px;" src="http://www.ttthings.com/images/portfolio/nos_id_01.jpg" class="portfolio" alt="portfolio" /&gt;  &lt;/p&gt; &lt;p&gt; Yes, that is true. &lt;strong&gt;NOS&lt;/strong&gt; is the company I founded with my partner Martin Acuña. &lt;strong&gt;NOS&lt;/strong&gt; is the reason I’m a partner at &lt;a href="http://www.sumagency.com/" title="SUM Agency"&gt;SUM Agency&lt;/a&gt; today and the reason I’m here now. What else can I say. &lt;strong&gt;NOS&lt;/strong&gt; represents the first time I wake up one day and thought to myself &lt;em&gt;“Hey… I can do this for a living”&lt;/em&gt;. The very next thing I did that morning was to call my boss at the time to let him know I was quiting. Actually, I think I got dressed and then I called my boss. Mmm… no I’m pretty sure I quited while I was still in my undies.  &lt;/p&gt; &lt;p&gt;But it’s true. The first years we did everything from going after the client, working on the RFP’s, answering the phone, even standing in line for hours to make a deposit. &lt;/p&gt; &lt;p&gt; Anyway before I get emotional, let’s talk about the actual work. First, the name. I wasn’t sure about what I wanted for my company’s name, but I was dead sure about what I didn’t wanted. I didn’t wanted to be seen as a huge, impersonal, design agency. I also didn’t wanted to fall into &lt;em&gt;cliches&lt;/em&gt; like having super hip and cool words on the brand like &lt;strong&gt;ventures, technologies, solutions, interactive, etc&lt;/strong&gt;. Plus, we were only a bunch of guys. We couldn’t even fool our families. We were just &lt;strong&gt;us&lt;/strong&gt;. &lt;strong&gt;us&lt;/strong&gt; in Spanish translates to &lt;strong&gt;Nosotros&lt;/strong&gt; and that’s how we originally named ourselves.  &lt;/p&gt; &lt;p&gt; Then in 2006 we wanted to enter the US Market and &lt;strong&gt;Nosotros&lt;/strong&gt; was a bit to hard to pronounce so we shortened to &lt;strong&gt;NOS&lt;/strong&gt; which even in Spanish, still holds its meaning. Of course, the brand needed to reflect our versatility (hence the multicolor logo) and the fact that we were a small, united agency. By playing with the kerning on the &lt;strong&gt;NOS&lt;/strong&gt; we achieve that concept. &lt;/p&gt; &lt;p&gt; &lt;img style="width: 400px; height: 202px;" src="http://www.ttthings.com/images/portfolio/nos_web_01.jpg" class="portfolio" alt="portfolio" /&gt; &lt;/p&gt; &lt;p&gt; Our first website had this photo I took by the bay in Asuncion on a Sunday afternoon right before a huge storm. The camera moves down slowly and you would see us sitting on two benches. Quite simply really. Maybe that’s why so many people liked it. &lt;/p&gt; &lt;p&gt; &lt;img style="width: 404px; height: 304px;" src="http://www.ttthings.com/images/portfolio/nos_web_01-full.jpg" class="portfolio" alt="portfolio" /&gt; &lt;/p&gt; &lt;p&gt; &lt;img style="width: 367px; height: 391px;" src="http://www.ttthings.com/images/portfolio/nos_web_02.jpg" class="portfolio" alt="portfolio" /&gt;  &lt;/p&gt; &lt;p&gt; By 2006 we switched from Flash to a XHTML/CSS design and this time, we offered an &lt;del&gt;english&lt;/del&gt; &lt;em&gt;someglish&lt;/em&gt; version, as well as a German version of our site.  &lt;/p&gt; &lt;p&gt; &lt;img style="width: 358px; height: 199px;" src="http://www.ttthings.com/images/portfolio/nos_web_03.jpg" class="portfolio" alt="portfolio" /&gt;  &lt;/p&gt; &lt;p&gt; The website also featured a bunch of photos to resemblance the colors of our logo. &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-9183282148276627766?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/9183282148276627766/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=9183282148276627766' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/9183282148276627766'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/9183282148276627766'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/02/nos-logo-website-accounting-and-sales.html' title='NOS Logo, Website, Accounting and Sales'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-3979295091548365077</id><published>2008-02-24T11:03:00.000-08:00</published><updated>2008-02-24T11:06:20.277-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='photoshop tutorials'/><category scheme='http://www.blogger.com/atom/ns#' term='Web Designers'/><category scheme='http://www.blogger.com/atom/ns#' term='Internet'/><title type='text'>SUM Agency Logo and Website</title><content type='html'>&lt;p&gt; In October of 2006 SUM Agency was founded with the solely idea of providing creative solutions that help our clients succeed and obtain their goals. This is by far the most fun I have ever been while actually working.  &lt;/p&gt; &lt;p&gt;&lt;img style="width: 418px; height: 515px;" src="http://www.ttthings.com/images/portfolio/sum_web_01.jpg" class="portfolio" alt="portfolio" /&gt; &lt;/p&gt; &lt;p&gt;Our website received very good feedback from media and it was featured on several design galleries and websites, including #1 position for The &lt;a href="http://www.smashingmagazine.com/2007/04/26/11-almost-perfect-business-layouts/" title="Smashing Magazine 11 Almost Perfect Business Layouts"&gt;Smashing Magazine’s 11 Almost Perfect Business Layouts&lt;/a&gt; and most recently being picked to appear in the upcoming &lt;a href="http://www.dmdthebook.com/" title="Design Meltdown Book."&gt;Design Meltdown Book.&lt;/a&gt; &lt;/p&gt; &lt;p&gt; &lt;img style="width: 429px; height: 416px;" src="http://www.ttthings.com/images/portfolio/sum_web_02.jpg" class="portfolio" alt="portfolio" /&gt; &lt;/p&gt; &lt;p&gt; This is a our Reel section on the SUM Agency website. &lt;/p&gt; &lt;p&gt; &lt;img style="width: 368px; height: 230px;" src="http://www.ttthings.com/images/portfolio/sum_web_03.jpg" class="portfolio" alt="portfolio" /&gt; &lt;/p&gt; &lt;p&gt; Inheriting the same concept from NOS, we chose a colored pattern to communicate the versatility of the company. &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-3979295091548365077?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/3979295091548365077/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=3979295091548365077' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/3979295091548365077'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/3979295091548365077'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/02/sum-agency-logo-and-website.html' title='SUM Agency Logo and Website'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-1643408501496042109</id><published>2008-02-24T10:59:00.000-08:00</published><updated>2008-02-24T11:01:32.613-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web Designers'/><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><category scheme='http://www.blogger.com/atom/ns#' term='Internet'/><title type='text'>Web Design: From Good to Great in 25 Links</title><content type='html'>Web Design: From Good to Great in 25 Links&lt;br /&gt;Unless you’ve been living under a very large rock, you probably know this is that time of the year were everyone feels obligated to provide advice about &lt;a href="http://news.bbc.co.uk/2/hi/in_pictures/7142712.stm" title="BBC NEWS | In Pictures | Your pictures: Best of 2007"&gt;what’s good&lt;/a&gt;, &lt;a href="http://www.time.com/time/specials/2007/article/0,28804,1638344_1638341_1638336,00.html" title="eHarmony.com - 5 Worst Websites - TIME"&gt;what’s not&lt;/a&gt; and &lt;a href="http://www.webupon.com/Services/You-Bought-What-10-Extraordinarily-Peculiar-eBay-Purchases.70080" title="You Bought What?! 10 Extraordinarily Peculiar eBay Purchases"&gt;what’s just plain stupid&lt;/a&gt;.   &lt;p&gt;So lately I've been debating with myself about whether or not I should write an article about Web Design Advice and Tips, mainly because:&lt;/p&gt; &lt;ol&gt;&lt;li&gt;I think there's one too many &lt;em&gt;"Super Ultimate Definitive Guide to XYZ"&lt;/em&gt; already, plus I don't have a &lt;em&gt;super ultimate definitive&lt;/em&gt; knowledge on anything, (well except for matching socks, I sure know how to pick'em) and...&lt;/li&gt;&lt;li&gt;You know what they say about &lt;a href="http://www.ttthings.com/blog/comments/the_best_video_you_will_see_today/" title="advice being just a form of nostalgia"&gt;advice being just a form of nostalgia&lt;/a&gt;, so the last thing I would've wanted is to sound like a war veteran&lt;/li&gt;&lt;/ol&gt; &lt;p&gt;Then yesterday, while catching up with my RSS feeds, I found a &lt;a href="http://www.airbagindustries.com/archives/airbag/help.php" title="Airbag - Help."&gt;great (and sadly true) post from Greg&lt;/a&gt; about how hard is it to find good talent in today's industry.&lt;/p&gt; &lt;p&gt;&lt;q&gt;As an employer of a growing number of full-time and freelance workers I can tell you that it's becoming increasingly difficult to find good people. I have had several conversations with persons of top stature in the web design business who are of the same opinion. Their own businesses' have been slightly crippled this year due to &lt;strong&gt;work demand vs. human supply&lt;/strong&gt;.&lt;/q&gt;&lt;/p&gt; &lt;p&gt;&lt;q&gt;I don't see there being a quick turn-around for this problem but it will escalate &lt;strong&gt;if we don't spend time and resources to proactively help improve the situation&lt;/strong&gt;&lt;/q&gt;&lt;/p&gt; &lt;p&gt;After reading Greg's post (and experience it several times myself), I decided to help, to be more proactive and write an useful list of resources that could simplify what I learned over the last 11 years in Web Design. Who knows, that old Spanish Proverb might be right after all: &lt;/p&gt; &lt;p&gt;&lt;q&gt;The Devil is wiser because he's old, not because he's the Devil&lt;/q&gt;&lt;/p&gt; &lt;p&gt;Below there's a set of 25 links I gathered from my bookmarks. On this links you'll find not only very useful tools, but also real mind opener tips and information about Web Design, ranging from Typography, Creative Tactics, Design Principles, Tutorials, and great inspirational examples. &lt;/p&gt; &lt;h2&gt;From Good to Great, One link at a time&lt;/h2&gt; &lt;a href="http://www.smashingmagazine.com/2007/11/08/40-excellent-freefonts-for-professional-design/"&gt;&lt;img src="http://www.ttthings.com/images/uploads/fromgoodtogreat_1.jpg" class="float_right" title="From Good To Great Web Design in 25 Links" alt="From Good To Great Web Design in 25 Links" height="141" width="194" /&gt;&lt;/a&gt;&lt;small&gt;Smashing Magazine's&lt;/small&gt; &lt;h3&gt;40+ Excellent Free Fonts For Professional Design&lt;/h3&gt; &lt;p&gt;"The importance of typography in design can’t be overestimated. The accuracy, precision and balance of geometric forms can give letters the elegance and sharpness they deserve" &lt;/p&gt; &lt;p&gt;&lt;a href="http://www.smashingmagazine.com/2007/11/08/40-excellent-freefonts-for-professional-design/" title="40+ Excellent Freefonts For Professional Design | Fonts | Smashing Magazine"&gt;Visit the site&lt;/a&gt;&lt;/p&gt;   &lt;a href="http://psdtuts.com/designing-tutorials/9-essential-principles-for-good-web-design/"&gt;&lt;img src="http://www.ttthings.com/images/uploads/fromgoodtogreat_2.jpg" class="float_right" title="From Good To Great Web Design in 25 Links" alt="From Good To Great Web Design in 25 Links" height="144" width="194" /&gt;&lt;/a&gt;&lt;small&gt;PSDTUTS's&lt;/small&gt; &lt;h3&gt;9 Essential Principles for Good Web Design&lt;/h3&gt; &lt;p&gt;"Web design can be deceptively difficult. Getting a design that is both usable and pleasing, delivers information and builds brand, is technically sound and visually coherent..." &lt;/p&gt; &lt;p&gt;&lt;a href="http://psdtuts.com/designing-tutorials/9-essential-principles-for-good-web-design/" title="PSDTuts - Photoshop Tutorials and Links  - 9 Essential Principles for Good Web Design"&gt;Visit the site &lt;/a&gt;&lt;/p&gt;   &lt;a href="http://www.alistapart.com/articles/whitespace"&gt;&lt;img src="http://www.ttthings.com/images/uploads/fromgoodtogreat_3.jpg" class="float_right" title="From Good To Great Web Design in 25 Links" alt="From Good To Great Web Design in 25 Links" height="144" width="194" /&gt;&lt;/a&gt;&lt;small&gt;A List Apart's&lt;/small&gt; &lt;h3&gt;Whitespace&lt;/h3&gt; &lt;p&gt;"My first design job was with a small print design agency in Manchester that produced work in varying media: packaging, publications, and marketing support materials, and… direct mail" &lt;/p&gt; &lt;p&gt;&lt;a href="http://www.alistapart.com/articles/whitespace" title="A List Apart: Articles: Whitespace"&gt;Visit the site&lt;/a&gt;&lt;/p&gt;   &lt;a href="http://psdtuts.com/designing-tutorials/elements-of-great-web-design-the-polish/"&gt;&lt;img src="http://www.ttthings.com/images/uploads/fromgoodtogreat_4.jpg" class="float_right" title="From Good To Great Web Design in 25 Links" alt="From Good To Great Web Design in 25 Links" height="144" width="194" /&gt;&lt;/a&gt;&lt;small&gt;PSDTUTS's&lt;/small&gt; &lt;h3&gt;Elements of Great Web design: The Polish&lt;/h3&gt; &lt;p&gt;"When I put together designs I usually do so in two phases - Layout and Polish. During the layout phase I place the main objects on the page usually finishing with something that looks relatively complete."&lt;/p&gt; &lt;p&gt; &lt;a href="http://psdtuts.com/designing-tutorials/elements-of-great-web-design-the-polish/" title="PSDTuts - Photoshop Tutorials and Links  - Elements of Great Web Design: The Polish"&gt;Visit the site&lt;/a&gt;&lt;/p&gt;   &lt;a href="http://www.smashingmagazine.com/2007/04/20/35-designers-x-5-questions/"&gt;&lt;img src="http://www.ttthings.com/images/uploads/fromgoodtogreat_5.jpg" class="float_right" title="From Good To Great Web Design in 25 Links" alt="From Good To Great Web Design in 25 Links" height="144" width="194" /&gt;&lt;/a&gt;&lt;small&gt;Smashing Magazine's&lt;/small&gt; &lt;h3&gt;35 Designers x 5 Questions&lt;/h3&gt; &lt;p&gt;"35 designers. 5 questions. 5 precise answers. Result: 175 professional suggestions, tips and ideas from some of the best web-developers all around the world." &lt;/p&gt; &lt;p&gt;&lt;a href="http://www.smashingmagazine.com/2007/04/20/35-designers-x-5-questions/" title="35 Designers x 5 Questions | Know-How | Smashing Magazine"&gt;Visit the site&lt;/a&gt;&lt;/p&gt;   &lt;a href="http://freelanceswitch.com/working/34-places-to-get-design-inspiration-online-and-off/"&gt;&lt;img src="http://www.ttthings.com/images/uploads/fromgoodtogreat_6.jpg" class="float_right" title="From Good To Great Web Design in 25 Links" alt="From Good To Great Web Design in 25 Links" height="144" width="194" /&gt;&lt;/a&gt;&lt;small&gt;FreelanceSwitch's&lt;/small&gt; &lt;h3&gt;34 Places to Get Design Inspiration (On and Off)&lt;/h3&gt; &lt;p&gt;"Everyone who hasn’t encountered designer’s block, raise your hand. Just as I thought. Well then, chances are you could use some places to get inspiration for those days when the pixels aren’t aligned and your mouse finger isn’t clicking like it should" &lt;/p&gt; &lt;p&gt;&lt;a href="http://freelanceswitch.com/working/34-places-to-get-design-inspiration-online-and-off/" title="34 Places to Get Design Inspiration - Online and Off - FreelanceSwitch - The Freelance Blog"&gt;Visit the site&lt;/a&gt;&lt;/p&gt;   &lt;a href="http://www.seomoz.org/blog/web-design-tactics"&gt;&lt;img src="http://www.ttthings.com/images/uploads/fromgoodtogreat_7.jpg" class="float_right" title="From Good To Great Web Design in 25 Links" alt="From Good To Great Web Design in 25 Links" height="144" width="194" /&gt;&lt;/a&gt;&lt;small&gt;SEOmoz's&lt;/small&gt; &lt;h3&gt;8 Web Design Tactics to Help You When You're Stuck&lt;/h3&gt; &lt;p&gt;"Web design can be incredibly frustrating. You'd think that with the infinite possibilities of what-goes-where it'd be pretty easy to land a design that works, yet somehow we've all been stuck before." &lt;/p&gt; &lt;p&gt;&lt;a href="http://www.seomoz.org/blog/web-design-tactics" title="SEOmoz | 8 Web Design Tactics to Help You When You're Stuck"&gt;Visit the site&lt;/a&gt;&lt;/p&gt;   &lt;a href="http://www.smashingmagazine.com/2007/03/19/40-designtech-magazines-to-read/"&gt;&lt;img src="http://www.ttthings.com/images/uploads/fromgoodtogreat_8.jpg" class="float_right" title="From Good To Great Web Design in 25 Links" alt="From Good To Great Web Design in 25 Links" height="144" width="194" /&gt;&lt;/a&gt;&lt;small&gt;Smashing Magazine's&lt;/small&gt; &lt;h3&gt;42 Design/Tech Magazines To Read&lt;/h3&gt; &lt;p&gt;"Regardless of what it is that you’re selling, in order to remain competitive, you have to know exactly, what’s going on in the field you’re working in. More than that - actually, you have to know what happens next, which trends are coming up and which technologies will become big in the future."&lt;/p&gt; &lt;p&gt; &lt;a href="http://www.smashingmagazine.com/2007/03/19/40-designtech-magazines-to-read/" title="42 Design/Tech Magazines To Read | Developer's Toolbox | Smashing Magazine"&gt;Visit the site &lt;/a&gt;&lt;/p&gt;   &lt;a href="http://www.photoshoproadmap.com/Photoshop-blog/2007/10/25/100-awesome-high-resolution-photoshop-brushes/"&gt;&lt;img src="http://www.ttthings.com/images/uploads/fromgoodtogreat_9.jpg" class="float_right" title="From Good To Great Web Design in 25 Links" alt="From Good To Great Web Design in 25 Links" height="144" width="194" /&gt;&lt;/a&gt;&lt;small&gt;The Photoshop Roadmap's&lt;/small&gt; &lt;h3&gt;100 Awesome High Resolutions Photoshop Brushes&lt;/h3&gt; &lt;p&gt;"Let’s dive today into a sea of brushes. Hundreds of thousands of sets are lying undiscovered like pirate treasures all over the web. " &lt;/p&gt; &lt;p&gt;&lt;a href="http://www.photoshoproadmap.com/Photoshop-blog/2007/10/25/100-awesome-high-resolution-photoshop-brushes/" title="» 100 Awesome High Resolution Photoshop Brushes"&gt;Visit the site&lt;/a&gt;&lt;/p&gt;   &lt;a href="http://www.smashingmagazine.com/2007/07/12/time-savers-code-beautifier-and-formatter/"&gt;&lt;img src="http://www.ttthings.com/images/uploads/fromgoodtogreat_10.jpg" class="float_right" title="From Good To Great Web Design in 25 Links" alt="From Good To Great Web Design in 25 Links" height="144" width="194" /&gt;&lt;/a&gt;&lt;small&gt;Smashing Magazine's&lt;/small&gt; &lt;h3&gt;30 More Excellent Blog Designs&lt;/h3&gt; &lt;p&gt;"It’s not hard to design a weblog, but it’s getting harder when you try to achieve a unique weblog design. It doesn’t matter what weblog-engine you are using — frequently used themes tend to become boring over time, and they also don’t necessarily reflect the unique identity of the blogger. "&lt;/p&gt; &lt;p&gt; &lt;a href="http://www.smashingmagazine.com/2007/11/22/30-more-excellent-blog-designs/" title="30 More Excellent Blog Designs"&gt;Visit the site&lt;/a&gt;&lt;/p&gt;   &lt;a href="http://www.websiteoptimization.com/services/analyze/index.html"&gt;&lt;img src="http://www.ttthings.com/images/uploads/fromgoodtogreat_11.jpg" class="float_right" title="From Good To Great Web Design in 25 Links" alt="From Good To Great Web Design in 25 Links" height="144" width="194" /&gt;&lt;/a&gt;&lt;small&gt;WebSiteOptimization's&lt;/small&gt; &lt;h3&gt;Web Page Analyzer&lt;/h3&gt; &lt;p&gt;"Free web site speed test to improve website performance. Enter a URL below to calculate page size, composition, and download time. The script calculates the size of individual elements and sums up each type of web page component." &lt;/p&gt; &lt;p&gt;&lt;a href="http://www.websiteoptimization.com/services/analyze/index.html" title="Web Page Analyzer - free website optimization tool website speed test check website performance report from web site optimization"&gt;Visit the site&lt;/a&gt;&lt;/p&gt;   &lt;a href="http://hellyeahdude.com/?p=28"&gt;&lt;img src="http://www.ttthings.com/images/uploads/fromgoodtogreat_12.jpg" class="float_right" title="From Good To Great Web Design in 25 Links" alt="From Good To Great Web Design in 25 Links" height="144" width="194" /&gt;&lt;/a&gt;&lt;small&gt;Hell Yeah Dude's&lt;/small&gt; &lt;h3&gt;Starting a design blog from the ground up&lt;/h3&gt; &lt;p&gt;"So you want to start discussing the theories on your mind? But you have no where to do it? No problem, don’t fall into the free blogging platforms that display all their ads on your blog!" &lt;/p&gt; &lt;p&gt;&lt;a href="http://hellyeahdude.com/?p=28" title="Starting a design blog from the ground up » Hell Yeah Dude! - A Web site for young &amp;amp; inspiring minds"&gt;Visit the site&lt;/a&gt;&lt;/p&gt;   &lt;a href="http://www.smashingmagazine.com/2007/10/16/best-practices-for-bulletproof-e-mail-delivery/"&gt;&lt;img src="http://www.ttthings.com/images/uploads/fromgoodtogreat_13.jpg" class="float_right" title="From Good To Great Web Design in 25 Links" alt="From Good To Great Web Design in 25 Links" height="144" width="194" /&gt;&lt;/a&gt;&lt;small&gt;Smashing Magazine's&lt;/small&gt; &lt;h3&gt;Best Practices for Bulletproof E-Mail Delivery&lt;/h3&gt; &lt;p&gt;"Have your e-mails already been flagged as spam, although you’ve sent a seemingly legitimate proposal to your client? Have you ever wondered why the efficiency of your newsletter campaigns suddenly dropped down? In both cases you deal with a problem which is harder to get done with than you think it is: bulletproof e-mail delivery." &lt;/p&gt; &lt;p&gt;&lt;a href="http://www.smashingmagazine.com/2007/10/16/best-practices-for-bulletproof-e-mail-delivery/" title="Best Practices For Bulletproof E-Mail Delivery | Know-How | Smashing Magazine"&gt;Visit the site&lt;/a&gt;&lt;/p&gt;   &lt;a href="http://thinkvitamin.com/features/design/web-design-isms-7-surefire-styles-that-work"&gt;&lt;img src="http://www.ttthings.com/images/uploads/fromgoodtogreat_14.jpg" class="float_right" title="From Good To Great Web Design in 25 Links" alt="From Good To Great Web Design in 25 Links" height="144" width="194" /&gt;&lt;/a&gt;&lt;small&gt;Vitamin's&lt;/small&gt; &lt;h3&gt;7 Surefire Styles that Work&lt;/h3&gt; &lt;p&gt;"Glossy buttons, ornamental backgrounds, futuristic interfaces. We’ve all been guilty at one time or another of committing the 7 design-isms in this article from Larissa Meek. But that’s okay, she tells us, they’re classics for a reason." &lt;/p&gt; &lt;p&gt;&lt;a href="http://thinkvitamin.com/features/design/web-design-isms-7-surefire-styles-that-work" title="Vitamin Features  » Web Design-isms: 7 Surefire Styles that Work"&gt;Visit the site&lt;/a&gt;&lt;/p&gt;   &lt;a href="http://tutorialblog.org/20-of-the-best-ecommerce-websites/"&gt;&lt;img src="http://www.ttthings.com/images/uploads/fromgoodtogreat_15.jpg" class="float_right" title="From Good To Great Web Design in 25 Links" alt="From Good To Great Web Design in 25 Links" height="144" width="194" /&gt;&lt;/a&gt;&lt;small&gt;Tutorial Blog's&lt;/small&gt; &lt;h3&gt;20 of the Best E-Commerce Websites&lt;/h3&gt; &lt;p&gt;"These are a tricky site to get right and design can give way to conversions, which is after all, the reason they are there - to make money." &lt;/p&gt; &lt;p&gt;&lt;a href="http://tutorialblog.org/20-of-the-best-ecommerce-websites/" title="» 20 of the best Ecommerce Websites"&gt;Visit the site&lt;/a&gt;&lt;/p&gt;   &lt;a href="http://www.campaignmonitor.com/resources/plain-text-templates.aspx"&gt;&lt;img src="http://www.ttthings.com/images/uploads/fromgoodtogreat_16.jpg" class="float_right" title="From Good To Great Web Design in 25 Links" alt="From Good To Great Web Design in 25 Links" height="144" width="194" /&gt;&lt;/a&gt;&lt;small&gt;Campaign Monitor's&lt;/small&gt; &lt;h3&gt;Plain text templates and formatting tips&lt;/h3&gt; &lt;p&gt;"Not everybody has an email client that can show HTML, and some people just prefer plain text. We got permission from the creators of three really well designed plain text newsletters to share modified forms of their format with you..." &lt;/p&gt; &lt;p&gt;&lt;a href="http://www.campaignmonitor.com/resources/plain-text-templates.aspx" title="Plain text templates and formatting tips - Campaign Monitor"&gt;Visit the site&lt;/a&gt;&lt;/p&gt;   &lt;a href="http://www.smashingmagazine.com/2007/07/12/time-savers-code-beautifier-and-formatter/"&gt;&lt;img src="http://www.ttthings.com/images/uploads/fromgoodtogreat_17.jpg" class="float_right" title="From Good To Great Web Design in 25 Links" alt="From Good To Great Web Design in 25 Links" height="144" width="194" /&gt;&lt;/a&gt;&lt;small&gt;Smashing Magazine's&lt;/small&gt; &lt;h3&gt;Time Savers: Code Beautifier And Formatter&lt;/h3&gt; &lt;p&gt;"Well-documented and readable source code is essential for every collaborative project. Logically structured, well organized and nicely formatted, the code can speed up the bug hunting... " &lt;/p&gt; &lt;p&gt;&lt;a href="http://www.smashingmagazine.com/2007/07/12/time-savers-code-beautifier-and-formatter/" title="Time-Savers: Code Beautifier And Formatter | Developer's Toolbox | Smashing Magazine"&gt;Visit the site&lt;/a&gt;&lt;/p&gt;   &lt;a href="http://clearfunction.com/weblog/2007/7/30/applying-progressive-enhancements-to-your-website"&gt;&lt;img src="http://www.ttthings.com/images/uploads/fromgoodtogreat_18.jpg" class="float_right" title="From Good To Great Web Design in 25 Links" alt="From Good To Great Web Design in 25 Links" height="144" width="194" /&gt;&lt;/a&gt;&lt;small&gt;Clear Function's&lt;/small&gt; &lt;h3&gt;Applying progressive enhancements to your website&lt;/h3&gt; &lt;p&gt;"A particular strategy of Web design that emphasizes accessibility, semantic markup, and external stylesheet and scripting technologies...." &lt;/p&gt; &lt;p&gt;&lt;a href="http://clearfunction.com/weblog/2007/7/30/applying-progressive-enhancements-to-your-website" title="Applying progressive enhancements to your website"&gt;Visit the site&lt;/a&gt;&lt;/p&gt;   &lt;a href="http://www.smashingmagazine.com/2007/07/17/exploring-design-outstanding-start-pages/"&gt;&lt;img src="http://www.ttthings.com/images/uploads/fromgoodtogreat_19.jpg" class="float_right" title="From Good To Great Web Design in 25 Links" alt="From Good To Great Web Design in 25 Links" height="144" width="194" /&gt;&lt;/a&gt;&lt;small&gt;Smashing Magazine's&lt;/small&gt; &lt;h3&gt;Exploring Design: Outstanding Start Pages&lt;/h3&gt; &lt;p&gt;"Designers have only a fraction of a second to attract users’ eye and win over their loyalty. Clear visual structure, thought-out typography and moderate use of images are extremely important..." &lt;/p&gt; &lt;p&gt;&lt;a href="http://www.smashingmagazine.com/2007/07/17/exploring-design-outstanding-start-pages/" title="Exploring Design: Outstanding Start Pages | Design Showcase | Smashing Magazine"&gt;Visit the site&lt;/a&gt;&lt;/p&gt;   &lt;a href="http://whoishostingthis.com/"&gt;&lt;img src="http://www.ttthings.com/images/uploads/fromgoodtogreat_20.jpg" class="float_right" title="From Good To Great Web Design in 25 Links" alt="From Good To Great Web Design in 25 Links" height="144" width="194" /&gt;&lt;/a&gt;&lt;small&gt;Very useful tool when your client doesn't know...&lt;/small&gt; &lt;h3&gt;Who is hosting this&lt;/h3&gt; &lt;p&gt;"Who Is Hosting This is a tool that enables you to find out who is hosting any web site. Simply type in any domain name, and you'll get a link to the company that's hosting this particular domain. It's that simple! " &lt;/p&gt; &lt;p&gt;&lt;a href="http://whoishostingthis.com/" title="Who is Hosting This?"&gt;Visit the site&lt;/a&gt;&lt;/p&gt;   &lt;a href="http://www.alistapart.com/articles/humantohuman"&gt;&lt;img src="http://www.ttthings.com/images/uploads/fromgoodtogreat_21.jpg" class="float_right" title="From Good To Great Web Design in 25 Links" alt="From Good To Great Web Design in 25 Links" height="144" width="194" /&gt;&lt;/a&gt;&lt;small&gt;A List Apart's&lt;/small&gt; &lt;h3&gt;Human-to-Human Design&lt;/h3&gt; &lt;p&gt;"My first design job was with a small print design agency in Manchester that produced work in varying media: packaging, publications, and marketing support materials, and… direct mail" &lt;/p&gt; &lt;p&gt;&lt;a href="http://www.alistapart.com/articles/humantohuman" title="A List Apart: Articles: Human-to-Human Design"&gt;Visit the site&lt;/a&gt;&lt;/p&gt;   &lt;a href="http://www.smashingmagazine.com/2007/05/21/60-elegant-and-visually-appealling-designs/"&gt;&lt;img src="http://www.ttthings.com/images/uploads/fromgoodtogreat_22.jpg" class="float_right" title="From Good To Great Web Design in 25 Links" alt="From Good To Great Web Design in 25 Links" height="144" width="194" /&gt;&lt;/a&gt;&lt;small&gt;Smashing Magazine's&lt;/small&gt; &lt;h3&gt;60 Elegant And Visually Appealing Designs&lt;/h3&gt; &lt;p&gt;"It’s quite easy to get stuck in creativity blocks, but it’s damn hard to get out of them. Particularly if you are out of time and don’t want to compromise your professional principles..." &lt;/p&gt; &lt;p&gt;&lt;a href="http://www.smashingmagazine.com/2007/05/21/60-elegant-and-visually-appealling-designs/" title="60 Elegant and Visually Appealing Designs | Design Showcase | Smashing Magazine"&gt;Visit the site&lt;/a&gt;&lt;/p&gt;   &lt;a href="http://www.gosquared.com/liquidicity/archives/114"&gt;&lt;img src="http://www.ttthings.com/images/uploads/fromgoodtogreat_23.jpg" class="float_right" title="From Good To Great Web Design in 25 Links" alt="From Good To Great Web Design in 25 Links" height="144" width="194" /&gt;&lt;/a&gt;&lt;small&gt;Liquidicity's&lt;/small&gt; &lt;h3&gt;50 Ways to Become a Better Designer&lt;/h3&gt; &lt;p&gt;"Being a successful creative has a lot to do with the way you work. Sure, you can’t teach good design, but it never hurts to learn a few new tricks, or simply make the most of your talents." &lt;/p&gt; &lt;p&gt;&lt;a href="http://www.gosquared.com/liquidicity/archives/114" title="liquidicity » 50 Ways to Become a Better Designer"&gt;Visit the site&lt;/a&gt;&lt;/p&gt;   &lt;a href="http://www.istockphoto.com/index.php"&gt;&lt;img src="http://www.ttthings.com/images/uploads/fromgoodtogreat_24.jpg" class="float_right" title="From Good To Great Web Design in 25 Links" alt="From Good To Great Web Design in 25 Links" height="144" width="194" /&gt;&lt;/a&gt;&lt;small&gt;How does "affordable stock images" sounds for a change&lt;/small&gt; &lt;h3&gt;iStockphoto&lt;/h3&gt; &lt;p&gt;"iStockphoto is the world's preeminent collection of member-generated royalty-free images, at the world's best prices. There are no subscription fees or extra costs. Just the best Stock Photography, Vector illustrations, Flash Files, and Videos, at prices for everyone"&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.istockphoto.com/index.php" title="Stock Photography: Search Royalty Free ImagesPhotos | iStockphoto.com"&gt;Visit the site&lt;/a&gt;&lt;/p&gt;   &lt;a href="http://www.smashingmagazine.com/2007/04/26/11-almost-perfect-business-layouts/"&gt;&lt;img style="width: 194px; height: 144px;" src="http://www.ttthings.com/images/uploads/fromgoodtogreat_25.jpg" class="float_right" title="From Good To Great Web Design in 25 Links" alt="From Good To Great Web Design in 25 Links" height="144" width="194" /&gt;&lt;/a&gt;&lt;small&gt;Smashing Magazine's&lt;/small&gt; &lt;h3&gt;11 Almost Perfect Business Layout&lt;/h3&gt; &lt;p&gt;"Business companies tend to impress visitors with solid site structures, precise navigation and the credibility of presented content. Therefore business layouts are usually quite unspectacular, mostly informative, but not attractive. &lt;/p&gt;&lt;p&gt;Yay for &lt;a href="http://www.sumagency.com/" title="Creating on purpose / SUM"&gt;SUM Agency&lt;/a&gt; appearing  #1 on the list!&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.smashingmagazine.com/2007/04/26/11-almost-perfect-business-layouts/" title="11 Almost Perfect Business Layouts | Design Showcase | Smashing Magazine"&gt;Visit the site&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;While this probably &lt;strong&gt;not&lt;/strong&gt; the &lt;strong&gt;Ultimate and Definitive&lt;/strong&gt; way to do it, If you go through each and one of them, &lt;strong&gt;you WILL&lt;/strong&gt; take your talent to a different level.&lt;/p&gt;  &lt;p&gt;Enjoy and good luck!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-1643408501496042109?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/1643408501496042109/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=1643408501496042109' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/1643408501496042109'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/1643408501496042109'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/02/web-design-from-good-to-great-in-25.html' title='Web Design: From Good to Great in 25 Links'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-640481902366161920</id><published>2008-02-24T10:55:00.000-08:00</published><updated>2008-02-24T10:58:24.023-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web Designers'/><category scheme='http://www.blogger.com/atom/ns#' term='Internet'/><title type='text'>Free Seo Tools</title><content type='html'>&lt;div id="section"&gt;   &lt;div id="section_title"&gt;   &lt;h1&gt;&lt;a href="http://webdevelopersfieldguide.com/#" name="freesearchsubmission"&gt;free search submission&lt;/a&gt;&lt;/h1&gt;   &lt;/div&gt;   &lt;div id="section_listing"&gt;    &lt;ul&gt;&lt;li&gt;&lt;a href="http://www.google.com/addurl/"&gt;Google Search Engine Crawler&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://submit.search.yahoo.com/free/request"&gt;Yahoo Search Engine Crawler&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.searchenginechannel.com/"&gt;Searchengine Channel&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.tipsntutorials.com/Top-Directories/"&gt;Top Directories with free web site submission&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;    &lt;/div&gt;   &lt;/div&gt;            &lt;div id="section"&gt;   &lt;div id="section_title"&gt;   &lt;h1&gt;&lt;a href="http://webdevelopersfieldguide.com/#" name="seotools"&gt;seo tools&lt;/a&gt;&lt;/h1&gt;   &lt;/div&gt;   &lt;div id="section_listing"&gt;    &lt;ul&gt;&lt;li class="red"&gt;&lt;a href="http://performancing.com/node/3422"&gt;3 Ways to Immediately Increase Search Engine Traffic&lt;/a&gt;&lt;/li&gt;&lt;li class="red"&gt;&lt;a href="http://www.pronetadvertising.com/articles/10-things-you-should-be-monitoring.html"&gt;10 things you should be monitoring&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.seocompany.ca/tool/seo-tools.html"&gt;99 Free SEO Tools&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.456bereastreet.com/archive/200502/basics_of_search_engine_optimisation/"&gt;Basics of search engine optimisation&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.devtoolz.com/"&gt;DevToolz&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://comparesearchengines.dogpile.com/"&gt;Dogpile&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.iconinteractive.com/tools/pop/index.php"&gt;icon interactive Link Popularity Tool&lt;/a&gt;&lt;/li&gt;&lt;li class="red"&gt;&lt;a href="http://www.pronetadvertising.com/articles/getting-links-1-of-5.html"&gt;Getting Links&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.webworkshop.net/pagerank_calculator.php3"&gt;Google's PageRank - Calculator&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.marketleap.com/verify/default.htm"&gt;Marketleap Search Engine Marketing Tools&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.nichewatch.com/index.php"&gt;Niche Keyword Competition Checker&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.nichebot.com/"&gt;NicheBot - Keyword Database (Wordtracker keywords)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.seochat.com/?tool=7&amp;amp;option=com_seotools&amp;amp;hl=en&amp;amp;lr=&amp;amp;ie=UTF-8&amp;amp;oe=UTF-8&amp;amp;q=&amp;amp;result_mode=pagerank&amp;amp;num=10&amp;amp;btnG=+++Search+++"&gt;PageRank Search&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.seocompany.ca/pagerank/page-rank-update-list.html"&gt;Page Rank Update List History&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.searchbliss.com/"&gt;SearchBliss&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.seochat.com/"&gt;SEO Chat&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.webmasterbrain.com/"&gt;SEO Scanner - Pros' SEO Tool&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.yahoosearchrankings.com/"&gt;SEO Tool for Yahoo Search Engine&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.siteometrics.com/"&gt;SiteOMetrics&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.scrutinizethis.com/?url="&gt;The Scrutinizer&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.delorie.com/web/lynxview.html"&gt;This is how a search engine robot sees your web-site&lt;/a&gt;&lt;/li&gt;&lt;li class="red"&gt;&lt;a href="http://www.useit.com/alertbox/visualizing-traffic-analysis.html"&gt;Visualizing Web Analytics Data: Drooping Tail and Log-Log Charts (Jakob Nielsen\\&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.langreiter.com/exec/yahoo-vs-google.html"&gt;Yahoo! &amp;amp; Google Search Comparison&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.webmastereyes.com/"&gt;Webmaster PageRank Eyes&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;    &lt;/div&gt;   &lt;/div&gt;            &lt;div id="section"&gt;   &lt;div id="section_title"&gt;   &lt;h1&gt;&lt;a href="http://webdevelopersfieldguide.com/#" name="seoreferences"&gt;seo references&lt;/a&gt;&lt;/h1&gt;   &lt;/div&gt;   &lt;div id="section_listing"&gt;    &lt;ul&gt;&lt;li&gt;&lt;a href="http://www.modernlifeisrubbish.co.uk/click-survey-heatmap-analysis.asp"&gt;Click Survey Analysis &amp;amp; Heatmap&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.vaughns-1-pagers.com/internet/google-ranking-factors.htm"&gt;Google Ranking Factors&lt;/a&gt;&lt;/li&gt;&lt;li class="red"&gt;&lt;a href="http://www.jimwestergren.com/link-bait/"&gt;Link Bait&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.searchenginewatch.com/"&gt;Searchengine Watch&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.highrankings.com/forum/"&gt;Search Engine Optimization Forum&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.searchenginewatch.com/facts"&gt;Search Engines Overview&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.allstarmakeovers.com/blog/2005/05/search-engine-visibility-do-you.html"&gt;Search Engine Visibility - Do You Measure Up?&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://blog.outer-court.com/archive/2005-01-29-n34.html"&gt;Tools You Might Have Missed&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www-db.stanford.edu/%7Ebackrub/google.html"&gt;The Anatomy of a Large-Scale Hypertextual Web Search Engine&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.searchenginewatch.com/facts/article.php/2156041"&gt;What People Search For&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&lt;div id="section"&gt;&lt;div id="section_listing"&gt;&lt;ul&gt;&lt;li style="color: rgb(255, 153, 0);"&gt;&lt;span style="font-size:130%;"&gt;&lt;a href="http://www.theseminal.com/"&gt;Friends of the field guide&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.theseminal.com/"&gt;The Seminal&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.poptakeout.com/"&gt;Pop Takeout (iPhone social news)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://healthbolt.net/"&gt;healthbolt.net&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;    &lt;/div&gt;   &lt;/div&gt;          &lt;!-- end content --&gt;      &lt;!-- begin footer --&gt;   &lt;div id="footer"&gt;   this is &lt;a href="http://wordpress.org/"&gt;wordpress&lt;/a&gt; as a CMS | content+code © 2008 &lt;a href="http://wademeredith.com/"&gt;wade&lt;/a&gt;  &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-640481902366161920?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/640481902366161920/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=640481902366161920' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/640481902366161920'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/640481902366161920'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/02/free-seo-tools.html' title='Free Seo Tools'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-4462393684561361204</id><published>2008-02-24T10:51:00.000-08:00</published><updated>2008-02-24T10:54:05.114-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web Designers'/><category scheme='http://www.blogger.com/atom/ns#' term='Rapidshare'/><category scheme='http://www.blogger.com/atom/ns#' term='Internet'/><title type='text'>Ajax Resources</title><content type='html'>&lt;span style="color: rgb(0, 204, 204);font-size:180%;" &gt;Ajax Resources&lt;/span&gt;&lt;br /&gt;&lt;div id="section_listing"&gt;    &lt;ul&gt;&lt;li&gt;&lt;a href="http://www.maxkiesler.com/index.php/weblog/comments/round_up_of_30_ajax_tutorials/"&gt;30 AJAX Tutorials&lt;/a&gt;&lt;/li&gt;&lt;li class="red"&gt;&lt;a href="http://www.maxkiesler.com/index.php/weblog/comments/50_ajax_reference_websites_from_around_the_world/"&gt;50 AJAX Reference Websites From Around the World&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.maxkiesler.com/index.php/weblog/comments/60_more_helpful_ajax_tutorials/"&gt;60 More AJAX Tutorials&lt;/a&gt;&lt;/li&gt;&lt;li class="red"&gt;&lt;a href="http://www.sci-tech-today.com/news/Ajax--Future-of-Web-App-Development/story.xhtml?story_id=12300DQEF9G9"&gt;Ajax: Future of Web App Development&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://ajax.zervaas.com.au/"&gt;AjaxAC - Open-source PHP framework for creating AJAX / JavaScript applications&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.adaptivepath.com/publications/essays/archives/000385.php"&gt;Ajax: A New Approach to Web Applications&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://developer.mozilla.org/en/docs/AJAX"&gt;AJAX - Devmo&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.thinkvitamin.com/features/webapps/serving-javascript-fast"&gt;Ajax Optimization: Serving JavaScript Fast&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://ajax.solutoire.com/"&gt;Ajax Resources @ Solutoire.com&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.robertnyman.com/2005/11/13/proudly-presenting-ajax-s/"&gt;AJAX-S: An Ajax-based slideshow system&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.ajaxian.com/archives/2005/11"&gt;Ajax and Flash: AFLAX&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://snyke.net/blog/2006/02/05/ajax-design-patterns/"&gt;Ajax Design Patterns: Fading Roses &amp;amp; Raging Viruses&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.ajaximpact.com/tutorials.php"&gt;AJAX Impact: Tutorials&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://ajaxian.com/"&gt;Ajaxian&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.ajaxmatters.com/"&gt;AJAX Matters&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.ajaxpatterns.org/"&gt;AjaxPatterns.Org&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.feedfeeds.com/feedtv"&gt;Ajax Feed TV&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.unwieldy.net/ajaxim/"&gt;ajax instant messanger&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://ajax.phpmagazine.net/"&gt;AJAX Magazine&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://alexbosworth.backpackit.com/pub/67688"&gt;Ajax Mistakes&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.onlamp.com/pub/a/onlamp/2005/06/09/rails_ajax.html"&gt;Ajax on Rails&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://blog.joshuaeichorn.com/ajax-resources/"&gt;Ajax Resources: There and Back Again&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.ajaxtoolbox.com/"&gt;Ajax Toolbox&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.sitepoint.com/article/remote-scripting-ajax"&gt;AJAX: Usable Interactivity with Remote Scripting [JavaScript &amp;amp; DHTML Tutorials]&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.fiftyfoureleven.com/resources/programming/xmlhttprequest/examples"&gt;Ajax Working Examples &amp;amp; XMLHttpRequest&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.ajaxwrite.com/"&gt;Ajax Write&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://labs.revision10.com/?p=5"&gt;Dynamic Ajax Tables&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.earthcode.com/ajax/2005/12/jslog.html"&gt;JSlog: Ajax logging tool&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.webreference.com/programming/javascript/jf/column12/index.html"&gt;How to Develop Web Applications with Ajax&lt;/a&gt;&lt;/li&gt;&lt;li class="red"&gt;&lt;a href="http://ecosmear.com/relay/"&gt;Relay: Ajax Directory Manager&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://openrico.org/rico/demos.page"&gt;Rico - Demos: Javascript + Ajax for Rich Internet Applications&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.modernmethod.com/sajax/"&gt;Sajax: Simple Ajax Toolkit&lt;/a&gt;&lt;/li&gt;&lt;li class="red"&gt;&lt;a href="http://www.computerworld.com/action/article.do?command=printArticleBasic&amp;amp;articleId=9002170"&gt;So how do you code an AJAX Web page?&lt;/a&gt;&lt;/li&gt;&lt;li class="red"&gt;&lt;a href="http://labs.adobe.com/technologies/spry/"&gt;Spry framework for Ajax&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.devarticles.com/c/a/XML/Step-by-Step-to-AJAX/"&gt;Step by Step to AJAX&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.sitepoint.com/article/take-command-ajax"&gt;Take Command with AJAX [JavaScript &amp;amp; DHTML Tutorials]&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.aventureforth.com/?p=13"&gt;Top 10 Ajax Applications&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://24ways.org/advent/introducing-udasss"&gt;Unobtrusive Degradable Ajax Style Sheet Switcher!&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://jszen.blogspot.com/2005/05/ajaxed-out.html"&gt;What is Ajax?&lt;/a&gt;&lt;a href="http://webdevelopersfieldguide.com/#" name="javascript"&gt;&lt;br /&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;    &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-4462393684561361204?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/4462393684561361204/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=4462393684561361204' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/4462393684561361204'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/4462393684561361204'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/02/ajax-resources.html' title='Ajax Resources'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-478062313725312304</id><published>2008-02-24T10:47:00.000-08:00</published><updated>2008-02-24T10:51:33.635-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Windows'/><category scheme='http://www.blogger.com/atom/ns#' term='Internet'/><title type='text'>Miscellaneous tools</title><content type='html'>&lt;div id="section"&gt;   &lt;div id="section_title"&gt;   &lt;h1&gt;&lt;a href="http://webdevelopersfieldguide.com/#" name="misctools"&gt;&lt;/a&gt; Miscellaneous tools&lt;/h1&gt;   &lt;/div&gt;   &lt;div id="section_listing"&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://thejackol.com/htaccess-cheatsheet"&gt;.htaccess Cheatsheet&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.accessify.com/tools-and-wizards/acrobot/default.asp"&gt;Acrobot Abbreviation and Acronym Generator&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.phpbuilder.com/columns/vaska20050722.php3"&gt;10 Tips That Every PHP Newbie Should Know&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.phpbuilder.com/columns/vaska20050812.php3"&gt;10 Tips That Every PHP Newbie Should Know [ Part 2 ]&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.intersmash.com/300images/"&gt;300 Images From 1800 Sites (arrows, posts, comments, bullets, print etc.)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.accessify.com/tools-and-wizards/default.asp"&gt;9 useful tools for web design&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.willmaster.com/possibilities/demo/aelgwase.html"&gt;Advanced Email Link Generator&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.reeddesign.co.uk/test/points-pixels.html"&gt;Approximate Conversion from Points to Pixels&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.lucazappa.com/brilliantMaker/buttonImage.php"&gt;80x15 Brilliant Button Maker&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://button.blogflux.com/"&gt;80x15 Button Maker and Generator - Blog Flux&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://buttonmaker.80by15.com/"&gt;80by15&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://gtmcknight.com/buttons/"&gt;80x15 Buttons Gallery&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://lab.rails2u.com/bgmaker/"&gt;Background Image Maker&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://somerandomdude.net/srd-projects/bitcons/"&gt;Bitcons Icons&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.browsercam.com/"&gt;Browsercam - Check how your web-site looks in different browsers&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.browsershots.org/recent/"&gt;BrowserShots&lt;/a&gt;&lt;/li&gt;&lt;li class="red"&gt;&lt;a href="http://www.browsrcamp.com/"&gt;BrowsrCamp - Test a web-page on Mac OS X browser&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://browsersize.com/"&gt;Browsersize.com&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.stylegala.com/features/bulletmadness/"&gt;Bullet Madness&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.buttonator.com/"&gt;Buttonator&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.sitepoint.ch/online-tools/google-aktivitaet/"&gt;Check Google Activity&lt;/a&gt; &lt;img src="http://webdevelopersfieldguide.com/de.png" alt="German" height="11" width="16" /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://nces.ed.gov/nceskids/Graphing/"&gt;Create a Graph Online&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.el73.be/drunkey-love/category/icons/"&gt;Drunkey Love Icons&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://services.nexodyne.com/email/index.php"&gt;E-mail: E-Mail Icon Generator&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.iconico.com/emailProtector/"&gt;E-mail: Online Email Protector&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://digitalcolony.com/02/maskemail/inc/genEmailMask.asp"&gt;E-Mail: Mask Email Image Generator&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.faganfinder.com/urlinfo/"&gt;FaganFinder URLInfo&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.famfamfam.com/lab/icons/"&gt;famfamfam.com: Icons&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.chami.com/html-kit/services/favicon/"&gt;FavIcon Generator [1]&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://209.59.146.86/favicon/index.php"&gt;FavIcon Generator [2]&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://deltatangobravo.com/archives/2004/march/favourite"&gt;Favourite Favicons&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://flagrantdisregard.com/flickr/badge.php"&gt;Flickr Badge Maker&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.phpied.com/form-auto-fill-bookmarklet/"&gt;Form auto-fill bookmarklet&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://code.google.com/apis/ajaxsearch/"&gt;Google AJAX Search API&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.generator.de.tt/"&gt;Google sitemap generator&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.stevenhargrove.com/redirect-web-pages/"&gt;How to redirect a web page, the smart way&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.maxpower.ca/free-icons/2006/03/05/"&gt;Icons for your website or application @ MaxPower&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.danvine.com/icapture/"&gt;iCapture - see through the eyes of a Mac browser&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.danvine.com/iecapture/"&gt;ieCapture v. 0.0.4 alpha&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.chami.com/html-kit/services/imge/help/"&gt;Image Embellisher&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.1-hit.com/all-in-one/tool.loading-time-checker.htm"&gt;Load time check&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.ndesign-studio.com/resources/pixel_icons.htm"&gt;Mini Pixel Icons @ NStudio&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.chami.com/html-kit/services/is/"&gt;Online Image Splitter&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.picturecloud.com/index.php"&gt;PictureCloud.com&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.thismanslife.co.uk/main.asp?contentid=phiculator"&gt;Phiculator, the Golden Ratio calculator&lt;/a&gt;&lt;/li&gt;&lt;li class="red"&gt;&lt;a href="http://mikecherim.com/experiments/php_font_sizer.php?pfs=100%#pfs"&gt;PHP: Font Sizer&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.mcanerin.com/EN/search-engine/robots-txt.asp"&gt;Robots.txt Generator&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://somerandomdude.net/srd-projects/clearbits"&gt;Sanscons Icon Set&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.anybrowser.com/ScreenSizeTest.html"&gt;Screen size simulator&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.w3.org/2003/12/semantic-extractor.html"&gt;Semantics extractor&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://siggymaker.gfxedit.com/userbars/"&gt;Signature Generator&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.addme.com/ror-sitemap-generator.htm"&gt;Sitemap Generator&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.automapit.com/"&gt;Site Maps Generator&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://slayeroffice.com/"&gt;slayeroffice tools&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://bitworking.org/projects/sparklines/#generator"&gt;Sparkline Generator Web Application&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.inknoise.com/experimental/rolloverer.php"&gt;The Amazing Rolloverer&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.bram.us/_theboxoffice/"&gt;The Box Office 0.4&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.websiteoptimization.com/services/analyze/"&gt;Web Page Analyzer&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.delorie.com/web/wpbcv.html"&gt;Web Page Backward Compatibility Viewer&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.aharef.info/static/htmlgraph/"&gt;Websites as graphs&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;    &lt;/div&gt;   &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-478062313725312304?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/478062313725312304/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=478062313725312304' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/478062313725312304'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/478062313725312304'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/02/miscellaneous-tools.html' title='Miscellaneous tools'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-4822923044728389826</id><published>2008-02-24T10:27:00.000-08:00</published><updated>2008-02-24T10:45:24.668-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='photoshop tutorials'/><title type='text'>Top Quality  Photoshopped Images</title><content type='html'>Sometimes they can be funny, sometimes thought provoking, other times they just mess with your mind. They’ll always take your breath away though and make you wonder at the skills of the people that created them. The following images are our favorite Photoshopped images. If you’ve seen better we’d love to hear from you.&lt;br /&gt;&lt;p&gt;&lt;img style="width: 500px; height: 341px;" src="http://farm3.static.flickr.com/2280/2248787712_70d7044ffa.jpg?v=0" align="absmiddle" hspace="5" vspace="5" /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;img style="width: 500px; height: 349px;" src="http://farm3.static.flickr.com/2183/2248787768_880a391cd4.jpg?v=0" align="absmiddle" hspace="5" vspace="5" /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;img style="width: 500px; height: 395px;" src="http://farm3.static.flickr.com/2312/2248788960_8735d59bd1.jpg?v=0" align="absmiddle" hspace="5" vspace="5" /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;img style="width: 335px; height: 500px;" src="http://farm3.static.flickr.com/2145/2247994245_0a701b26c6.jpg?v=0" align="absmiddle" hspace="5" vspace="5" /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;img style="width: 331px; height: 500px;" src="http://farm3.static.flickr.com/2188/2247994273_1c2c15b1d8.jpg?v=0" align="absmiddle" hspace="5" vspace="5" /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;img style="width: 351px; height: 500px;" src="http://farm3.static.flickr.com/2398/2247994329_98ff64dbdc.jpg?v=0" align="absmiddle" hspace="5" vspace="5" /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;img style="width: 500px; height: 333px;" src="http://farm3.static.flickr.com/2294/2248789682_f9c1b83539.jpg?v=0" align="absmiddle" hspace="5" vspace="5" /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;img style="width: 375px; height: 500px;" src="http://farm3.static.flickr.com/2074/2247995009_7e988644c5.jpg?v=0" align="absmiddle" hspace="5" vspace="5" /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;img style="width: 500px; height: 375px;" src="http://farm3.static.flickr.com/2004/2248789828_ff6e142d1c.jpg?v=0" align="absmiddle" hspace="5" vspace="5" /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;img style="width: 500px; height: 375px;" src="http://farm3.static.flickr.com/2155/2247995147_2615e326cf.jpg?v=0" align="absmiddle" hspace="5" vspace="5" /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;img style="width: 500px; height: 400px;" src="http://farm3.static.flickr.com/2302/2248789962_5248c685af.jpg?v=0" align="absmiddle" hspace="5" vspace="5" /&gt;&lt;/p&gt;&lt;p&gt;&lt;img style="width: 500px; height: 333px;" src="http://farm3.static.flickr.com/2308/2247995279_c9c60f3d9e.jpg?v=0" align="absmiddle" hspace="5" vspace="5" /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;img src="http://farm3.static.flickr.com/2266/2248790126_22ee703621.jpg?v=0" align="absmiddle" hspace="5" vspace="5" /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;img style="width: 450px; height: 350px;" src="http://farm3.static.flickr.com/2063/2248788336_4ccffe9ec9.jpg?v=0" align="absmiddle" hspace="5" vspace="5" /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;img style="width: 367px; height: 500px;" src="http://farm3.static.flickr.com/2255/2248788044_946fd45f34.jpg?v=0" align="absmiddle" hspace="5" vspace="5" /&gt;&lt;/p&gt;&lt;p&gt;&lt;img style="width: 500px; height: 335px;" src="http://farm3.static.flickr.com/2239/2248787952_651706e45c.jpg?v=0" align="absmiddle" hspace="5" vspace="5" /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-4822923044728389826?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/4822923044728389826/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=4822923044728389826' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/4822923044728389826'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/4822923044728389826'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/02/top-quality-photoshopped-images.html' title='Top Quality  Photoshopped Images'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-7170323385456391499</id><published>2008-02-24T10:23:00.000-08:00</published><updated>2008-02-24T10:25:20.308-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Rapidshare'/><title type='text'>How To Use Rapidshare</title><content type='html'>&lt;span style="font-size:85%;"&gt;A quick and painless step by step that explains how Rapidshare works and how to quickly download files from Rapidshare links.&lt;br /&gt;&lt;/span&gt;&lt;ol&gt;&lt;span style="font-size:85%;"&gt;&lt;li&gt;Begin by simply click the link or by copying the link into your web browser.&lt;/li&gt;&lt;li&gt;Scroll down to the bottom of the page.&lt;/li&gt;&lt;li&gt;Press the FREE button to start the download.&lt;/li&gt;&lt;li&gt;Upon click the FREE button, a second, similar page will load.&lt;/li&gt;&lt;li&gt;Scroll down to the bottom of the second page.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Find the download counter; you must wait until the counter finishes before the download will begin.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;After waiting for the counter to finish or by using the trick, a third page will appear.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Scroll down to the bottom of the third page.&lt;/li&gt;&lt;li&gt;The file name will appear with a code to begin the download. Copy the code exactly how it is provided and click the link to begin the download. This will prompt the user to save the file.&lt;/li&gt;&lt;/span&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-7170323385456391499?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/7170323385456391499/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=7170323385456391499' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/7170323385456391499'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/7170323385456391499'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/02/how-to-use-rapidshare.html' title='How To Use Rapidshare'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-8892048911247404170</id><published>2008-01-28T12:25:00.000-08:00</published><updated>2008-01-28T12:26:51.442-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='visual basic'/><title type='text'>Real Time Pixel Manipulation in VB5</title><content type='html'>&lt;span style="font-family:Arial;"&gt;&lt;b&gt; Real Time Pixel Manipulation in VB5&lt;/b&gt;  &lt;hr /&gt; &lt;b&gt;Introduction&lt;/b&gt; &lt;p&gt; The article "Speed up your apps with pointer" by Matthew Curland and Francesco Balena in the October VBPJ has big implications for image processing in VB. &lt;/p&gt;&lt;p&gt;I had always used C for anything dealing with pointers and pixels, it's just not something you do in VB. Not only was VB slower than C, but the terrible VB pixel twins Point and Pset made image processing unbearable. &lt;/p&gt;&lt;p&gt; But no longer - VB5 is now comparable to the speed of C in many areas, and thanks to Safe Arrays we can access the memory directly. &lt;/p&gt;&lt;p&gt; &lt;b&gt;What its good for&lt;/b&gt; &lt;/p&gt;&lt;p&gt;What can you do with all this new found power? Well this technique is useful anytime you want to update an image from incoming data, or from a mathematical transformation of an existing image. &lt;/p&gt;&lt;p&gt; Some example of how you can use it include &lt;/p&gt;&lt;ul&gt;&lt;li&gt; Real time Graphs :  displaying data like sound, frequency, voltage or processor usage &lt;/li&gt;&lt;li&gt; Image Processing : brightness, contrast, edge detect, invert, shadows &lt;/li&gt;&lt;li&gt; Effects :  melt, fade, ripple, bump map &lt;/li&gt;&lt;li&gt; Real time 3D : Texture mapped polygons (Wolfenstien/Doom), Heightfield maps &lt;/li&gt;&lt;/ul&gt; I have included many samples of these over the last few months, including some C examples to further exploit this technique. &lt;p&gt; I will cover the first two types of pixel manipulation in this article in some detail. &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;hr /&gt; &lt;p&gt; &lt;b&gt;Real Time Graphs&lt;/b&gt; &lt;/p&gt;&lt;p&gt; This technique is ideal for drawing graphs of 2D data. You simply plot your points to scale along the vertical and horizontal axis. &lt;/p&gt;&lt;p&gt; To illustrate this with an example we will build a signal generator. For those of you familiar with electronics, a signal generator and an oscilloscope can provide hours of fun. (That's sarcasm for those of you who are unfamiliar with Kiwi humour) &lt;/p&gt;&lt;p&gt;Simply graph time along the x axis and the result of the sinusoidal (SIN) function on the Y axis. By adding offsets and scaling factors we can modify the shape and frequency of the wave. &lt;/p&gt;&lt;p&gt; &lt;img src="http://www.advantage.co.nz/ur/imagepro_real1.gif" height="207" width="458" /&gt; &lt;/p&gt;&lt;p&gt;This particular diagram shows a sinusoidal wave, but the framework applies to any function, including data you may sample from a real input (like steam pressure or stock market trading). &lt;/p&gt;&lt;p&gt;The amplitude is simply used to scale the function so it is easy to examine. The DC-offset so that the function is nicely centred in the graph window. The frequency is the rate of sampling, how often you update or sample your data. &lt;/p&gt;&lt;p&gt; You can take the Safe Array framework provided and simply insert your custom function.   &lt;/p&gt;&lt;p&gt; &lt;b&gt;How do we draw the graph?&lt;/b&gt; &lt;/p&gt;&lt;p&gt;In this case we first set every pixel to black to wipe the last frame. Then we step horizontally through the image. The vertical position of each pixel is then calculated using the DC offset, the amplitude, and the frequency from our "scroll bars". The wave will be updated and displayed in real time. &lt;/p&gt;&lt;p&gt;This routine uses 8 Bit graphics. This means each pixel is represented by one byte, or 256 possible colors. This is also called a palletized image, this is because from all possible 24 bit colors a palette of only 256 are made available. The advantage of 8 bit graphics is speed, because you have to copy only byte per pixel. &lt;/p&gt;&lt;pre&gt;For c = 0 To UBound(pict, 1)&lt;br /&gt;   'make this column black&lt;br /&gt;   For r = 0 To UBound(pict, 2)&lt;br /&gt;       pict(c, r) = 0&lt;br /&gt;   Next&lt;br /&gt;&lt;br /&gt;   'now find the row of the sin wave&lt;br /&gt;   &lt;b&gt;'Stick your function in here!!&lt;/b&gt;&lt;br /&gt;   sin_row% = Int(Sin(GetTickCount() / 1000 + c / freq!) * amp%) + dc%&lt;br /&gt;&lt;br /&gt;   'make sure the wave is not too big&lt;br /&gt;   If sin_row% &lt;0&gt; 140 Then sin_row% = 140&lt;br /&gt;&lt;br /&gt;   'now draw the wave using three pixels to make it appear smoother&lt;br /&gt;   pict(c, sin_row%) = 14 'dark green&lt;br /&gt;   pict(c, sin_row% + 1) = 23 'light green&lt;br /&gt;   pict(c, sin_row% + 2) = 14 'dark green&lt;br /&gt;Next&lt;br /&gt;&lt;/pre&gt; &lt;img src="http://www.advantage.co.nz/ur/imagepro_real2.gif" height="181" width="447" /&gt; &lt;p&gt; The finished 'VB signal generator' &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;hr /&gt; &lt;p&gt; &lt;b&gt;Image Processing&lt;/b&gt; &lt;/p&gt;&lt;p&gt;In contrast most image processing is best performed on 24 bit images. Although they are 3 times bigger than 8 bit images, each pixel can represent any color - rather than being restricted by a palette. &lt;/p&gt;&lt;p&gt;The first byte holds Red (0-255), the second Green (0-255), and the third Blue (0-255). 0 represents an absence of the color - while a value of 255 is fully saturated. Therefore Black is R=0 G=0 B=0 while White is R=255 G=255 B=255. This leads me to my first example of image processing, brightness. &lt;/p&gt;&lt;p&gt; &lt;b&gt;Brightness&lt;/b&gt; &lt;/p&gt;&lt;p&gt;Brightness is really the simplest possible example of image processing, scale each byte up for a lighter image, or down for a darker image. &lt;/p&gt;&lt;pre&gt; NewPixel = OldPixel * Brightness &lt;br /&gt;&lt;/pre&gt;&lt;p&gt; Brightness is a logarithmic scale. This means that from 0 up to 1 the image will get darker. From 1 onwards the image will get lighter. &lt;/p&gt;&lt;p&gt;Because we have to perform this scaling operation 3 times for every pixel (for each the red, blue and green bytes), it is important it is very fast. The problem with the technique described above is that 3 times every pixel we need to convert a byte to a floating point, do a floating point multiplication, fix up overflow (values &gt; 255) and then convert a floating point back to a byte. &lt;/p&gt;&lt;pre&gt; t! = pict2(c, r) * brightness!&lt;br /&gt; If t! &gt; 255 Then t! = 255&lt;br /&gt; pict(c, r) = t!&lt;br /&gt;&lt;/pre&gt;&lt;p&gt; However, because each byte has only 255 possible values, we can pre-calculate a 255 byte lookup table. &lt;/p&gt;&lt;p&gt; For example, this creates a lookup table; &lt;/p&gt;&lt;pre&gt; For a% = 0 to 255&lt;br /&gt;  Temp! = a% * brightness!&lt;br /&gt;  If temp! &gt; 255 then temp! = 255&lt;br /&gt;  table_bright(a%) = temp!&lt;br /&gt; next&lt;br /&gt;&lt;/pre&gt;&lt;p&gt; Now the core routine is simplified to 1 line; &lt;/p&gt;&lt;pre&gt; Pict(c,r) = table_bright(pict2(c,r))&lt;br /&gt;&lt;/pre&gt;&lt;p&gt; &lt;img src="http://www.advantage.co.nz/ur/imagepro_bright.jpg" height="89" width="469" /&gt; &lt;/p&gt;&lt;p&gt;This optimization much faster. My rule of thumb for image processing is to get it looking ok in the VB IDE, and then it should look great when it's compiled! &lt;/p&gt;&lt;p&gt; &lt;b&gt;Blur&lt;/b&gt; &lt;/p&gt;&lt;p&gt;Blurring an image can come in handy when you want to resize it. The normal Windows StretchBlt routine uses point sampling to resize an image. This means when you make an image smaller it just picks a pixel (point) from the source image to represent a group of pixels in the destination image. &lt;/p&gt;&lt;p&gt; &lt;img src="http://www.advantage.co.nz/ur/imagepro_blur1.gif" height="186" width="283" /&gt; &lt;/p&gt;&lt;p&gt;This is a slightly contrived example, but it shows how the regular point sampling can include a shape like 'A' while missing a shape like 'B' alltogether. The Triangles are mis-represented, as 'C' becomes 2 horizontal dots, while 'D' becomes 3 vertical dots. &lt;/p&gt;&lt;p&gt;The problem with this is that the image gets all sorts of weird sampling errors, particularly noticeable when the image has fine regular shapes (like text). Blurring can provide a solution to this problem, before you point sample, blur the source image. This results in the point being an average of the surrounding samples (known as resampling). &lt;/p&gt;&lt;p&gt; &lt;img src="http://www.advantage.co.nz/ur/imagepro_blur2.gif" height="161" width="455" /&gt; &lt;/p&gt;&lt;p&gt;The blur algorithm I am using is very simple. Just move through the pixels, averaging the current pixel, the pixel above it, below it, left of it and to it's right. &lt;/p&gt;&lt;pre&gt;  For c = 3 To UBound(pict, 1) - 3&lt;br /&gt;           For r = 1 To UBound(pict, 2) - 1&lt;br /&gt;               pict(c, r) = (CInt(pict2(c, r)) + _&lt;br /&gt;   CInt(pict2(c - 3, r)) +_&lt;br /&gt;   CInt(pict2(c + 3, r)) +_&lt;br /&gt;   CInt(pict2(c, r - 1)) +_&lt;br /&gt;   CInt(pict2(c, r + 1))) \ 5&lt;br /&gt;           Next&lt;br /&gt; Next&lt;br /&gt;&lt;/pre&gt;&lt;p&gt; Remember the Column is offset by 3 because it takes 3 bytes to make a pixel, we blur the R, G and B components separately. &lt;/p&gt;&lt;p&gt;There are a variety of other image processing samples provided including contrast, ripple and the ability to adjust RGB brightness individually. Have a look at the sample program. &lt;/p&gt;&lt;p&gt; &lt;b&gt;Optimization Tips&lt;/b&gt; &lt;/p&gt;&lt;ul&gt;&lt;li&gt; For real time image processing consider using 8 bit images for higher speed.   &lt;/li&gt;&lt;li&gt; Optimize your inner loop by pre-calculating values and using lookup tables.  &lt;/li&gt;&lt;li&gt; Consider using C for more demanding image processing. I have provided tutorials that make it very easy to create a C DLL you can call from VB. &lt;/li&gt;&lt;li&gt; Experiment  &lt;/li&gt;&lt;/ul&gt; &lt;p&gt; &lt;a href="http://www.advantage.co.nz/ur/imagepro2.zip"&gt;Source and exe's ~40k&lt;/a&gt; &lt;/p&gt;&lt;p&gt; Cheers&lt;br /&gt;  David Brebner &lt;/p&gt;&lt;p&gt; &lt;a href="mailto:david@ur.co.nz"&gt;david@ur.co.nz&lt;/a&gt; &lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-8892048911247404170?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/8892048911247404170/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=8892048911247404170' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/8892048911247404170'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/8892048911247404170'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/01/real-time-pixel-manipulation-in-vb5.html' title='Real Time Pixel Manipulation in VB5'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-7057788460524340499</id><published>2008-01-28T12:22:00.000-08:00</published><updated>2008-01-28T12:24:03.989-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='visual basic'/><title type='text'>DirectDraw for Visual Basic®</title><content type='html'>&lt;p&gt;&lt;b&gt;&lt;span style="font-family:Verdana;font-size:180%;"&gt;DirectDraw for Visual Basic&lt;/span&gt;&lt;span style="font-family:Verdana;font-size:100%;"&gt;&lt;sup&gt;®&lt;/sup&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;u&gt;&lt;b&gt;Introduction&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt; This text is about the DirectDraw system for VB. DirectDraw is comprised of 10 classes. Each of these classes abstracts an important aspect for video / graphics programming. This text does not cover all of the classes, but is limited to the following: &lt;/p&gt;&lt;ul&gt;&lt;li&gt;DirectDraw7 &lt;/li&gt;&lt;li&gt;DirectDrawClipper &lt;/li&gt;&lt;li&gt;DirectDrawEnumModes &lt;/li&gt;&lt;li&gt;DirectDrawPalette &lt;/li&gt;&lt;li&gt;DirectDrawSurface7 &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;These five classes form the foundation for using DirectDraw as a tool for games and animation. The rest of the classes will be covered in later &lt;b&gt; DirectX-files™&lt;/b&gt;.&lt;/p&gt; &lt;p&gt; We will start this file with a small overview of each of the classes that will be covered in this text. An in-depth discussion of each class will be given as the &lt;b&gt; DirectX-file™&lt;/b&gt; series progresses. &lt;/p&gt;  &lt;p&gt;&lt;u&gt;DirectDraw7&lt;/u&gt;  &lt;/p&gt;&lt;p&gt;This is the main DirectDraw object. This object is used to create a few of the other objects, but also to provide generic system info on the video hardware capabilities and the DirectDraw driver version installed on the system. The DirectDraw7 object is used in the setup phase of a program to set certain system settings and properties  and to get information about the available resources and possible configurations.   &lt;/p&gt;&lt;p&gt;&lt;u&gt;DirectDrawClipper&lt;/u&gt;  &lt;/p&gt;&lt;p&gt;This object is used to automate clipping functionality. Giving the control of clipping to the DirectDrawClipper can mean the difference between a fast program and a &lt;i&gt; really&lt;/i&gt; fast program. A clipper is basically a list of RECTS (rectangular structures) that determine the areas where the bit block transfer (The &lt;i&gt;Blitter&lt;/i&gt;) can move pixels to (&lt;i&gt;Blit&lt;/i&gt; to).   &lt;/p&gt;&lt;p&gt;&lt;u&gt;DirectDrawEnumModes&lt;/u&gt;  &lt;/p&gt;&lt;p&gt;This object is used to store the possible display mode settings of the system. It is a very simple object and will be introduced in the first sample application.   &lt;/p&gt;&lt;p&gt;&lt;u&gt;DirectDrawPalette&lt;/u&gt;  &lt;/p&gt;&lt;p&gt;The object encapsulates the palette used on the DirectDraw surfaces. It functionality and purpose is the same as the normal Win32 palette. Palettes in DirectDraw are still widely used and we will examine some pretty funky palette animation tricks.   &lt;/p&gt;&lt;p&gt;&lt;u&gt;DirectDrawSurface7&lt;/u&gt;  &lt;/p&gt;&lt;p&gt;This is the most used and most important in the collection of objects that DirectDraw is. It holds function and methods for blitting, accessing, storing and using video memory either with assisted hardware or in pure software. The surface is such an essential object in DirectDraw that you must be careful that you completely understand it and how it is used. Through this object we can get direct access to the memory of the video card, which is something completely unique in the world of Win32 so please read the sections on the surface carefully.   &lt;/p&gt;&lt;p&gt;&lt;u&gt;&lt;span style="font-family:Verdana;font-size:130%;"&gt;Sub case 1: Setting up DirectDraw&lt;/span&gt;&lt;/u&gt;  &lt;/p&gt;&lt;p&gt;&lt;u&gt;Purpose&lt;/u&gt;  &lt;/p&gt;&lt;p&gt;The purpose of this sub case is to demonstrate using the DirectDraw7 object. We will examine how to use this object to get information on the possible settings for the display mode supported by your hardware and also see how we can set these. Likewise will present the 'standard' way of creating the top DirectDraw objects.  &lt;/p&gt;&lt;p&gt;  &lt;/p&gt;&lt;div align="center"&gt;   &lt;center&gt;   &lt;table bgcolor="#c0c0c0" border="0" cellpadding="4" cellspacing="4" width="85%"&gt;     &lt;tbody&gt;&lt;tr&gt;       &lt;td width="100%"&gt;Pay special attention to the details surrounding the setting of the display mode and cooperation level.&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;   &lt;/center&gt; &lt;/div&gt; &lt;p&gt;    &lt;/p&gt;&lt;p&gt;&lt;u&gt;Getting into it&lt;/u&gt;  &lt;/p&gt;&lt;p&gt;The project presented is the &lt;a href="http://www.vbexplorer.com/VBExplorer/gamearticles/ddraw_files/dxfile1_1.zip"&gt; DXFile1_1&lt;/a&gt; sample project. As stated above, this project has a twofold purpose – first we will obtain the possible display resolution configurations of the primary display card, and then try out these settings by changing the display mode.&lt;/p&gt;&lt;p&gt;The first step before doing anything else with DirectDraw is to declare and initialize the main DirectDraw and DirectX objects. These main objects are essential for any DirectDraw application. It is these we will use to create and initialize the rest of the DirectDraw objects. Since the DirectX7 object and the DirectDraw7 objects are being used in this context we must keep them active throughout the lifetime of the application, and only release them when we terminate the application. In this example we have declared the objects and given them global scope by placing them in the General Declarations section of the main form. The declarations are shown in Listing 1:&lt;/p&gt;&lt;p&gt;  &lt;/p&gt;&lt;div align="center"&gt;   &lt;center&gt;   &lt;table bgcolor="#c0c0c0" border="0" width="85%"&gt;     &lt;tbody&gt;&lt;tr&gt;       &lt;td width="100%"&gt;&lt;code&gt;Option Explicit&lt;br /&gt;       &lt;br /&gt;        Dim objDx As DirectX7&lt;br /&gt;        Dim objDraw7 As DirectDraw7&lt;br /&gt;        Dim objEnumModes As DirectDrawEnumModes&lt;/code&gt;&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;   &lt;/center&gt; &lt;/div&gt; &lt;p align="center"&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;verdana&amp;quot;;"&gt;&lt;b&gt;Listing 1 shows the declarations for the DXFile1_1 sample project&lt;/b&gt;&lt;/span&gt; &lt;/p&gt;&lt;p&gt;The DirectX7 object is the main DirectX object. It is from this object that we will create the DirectDraw object (this object is also used to create the other foundation objects of DirectX, such as DirectSound, Direct3D etc.). The DirectX7 object also contains some useful generic methods, which can be considered global methods for the DirectX libraries. These include, among others, functionality for setting an event callback function, getting the &lt;i&gt; RECT&lt;/i&gt; of the main DirectDraw window, getting system color information (usable by both Direct3D and DirectDraw). In this sample we will only be concerned with the method for creating a DirectDraw7 object.&lt;/p&gt;&lt;p&gt;  &lt;/p&gt;&lt;div align="center"&gt;   &lt;center&gt;   &lt;table bgcolor="#c0c0c0" border="0" cellpadding="4" cellspacing="4" width="85%"&gt;     &lt;tbody&gt;&lt;tr&gt;       &lt;td width="100%"&gt;&lt;code&gt;The DirectDraw7 object is in essence a representation of a video card installed on the system. Since both Windows98 and Windows2000 supports multiple video cards you can have multiple DirectDraw7 objects. This file will not cover multiple video card support.&lt;/code&gt;&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;   &lt;/center&gt; &lt;/div&gt; &lt;p&gt;Using the DirectDraw7 object you can instantiate the other related object that make up the DirectDraw object. You can also use it to get information on the available features of the video card / driver and the state of the video card and video memory. All objects created from the DirectDraw7 objects are destroyed and unusable if the DirectDraw7 object is destroyed. Therefore it is &lt;i&gt;of utmost importance &lt;/i&gt; that you control  both the scope and the lifetime of this object. As we progress into the &lt;b&gt; DirectX-file™&lt;/b&gt;  series we will study the methods and features of this object in considerably more detail. For now, just remember that it is this object that is used to create other DirectDraw related objects. When it gets released, so will all the other objects we created using it.    &lt;/p&gt;&lt;p&gt;As you can see from &lt;i&gt;Listing 1&lt;/i&gt; we have declared a third object with Public scope. This object is a &lt;i&gt;DirectDrawEnumModes&lt;/i&gt; object. This object will, when we create and initialize it, contain all the possible display settings of the video card. It is a simple object with only two methods, &lt;i&gt; GetCount&lt;/i&gt; and &lt;i&gt; GetItem&lt;/i&gt;. We will be covering these in just a short while.   &lt;/p&gt;&lt;p&gt;&lt;u&gt;Starting the Engine&lt;/u&gt;  &lt;/p&gt;&lt;p&gt;The main object creation and initialization action takes place in the load event of our form. The first thing we have to do is to create a new DirectX object. This is done in much the same way as you create any new object in Visual Basic – using the &lt;i&gt;New&lt;/i&gt; operator. If this creation fails you will get a run-time error indicating the failure. There is always the possibility that the user of your application has not installed the version of DirectX that your program requires. It is therefore essential that you trap any errors and warn the user if your program requires a later version than what has been installed. We will trap any errors in the declared ErrHandler label.  &lt;/p&gt;&lt;p&gt;After creating a valid DirectX7 object we can use it to create the DirectDraw7 object via the &lt;i&gt; DirectDrawCreate&lt;/i&gt;  function.   &lt;/p&gt;&lt;p&gt;In the sample application we simply create the DirectDraw7 object by passing an empty string. After having created the DirectDraw7 object we use the &lt;i&gt; GetDisplayModesEnum&lt;/i&gt; function for getting the available display modes into the DirectDrawEnumModes object. This object will then contain all the possible display modes that we can use in our application. You should always check the display hardware to see if it supports a given resolution. Otherwise, if you try to set a resolution that the hardware does not support you will get a run-time error.   &lt;/p&gt;&lt;p&gt;The &lt;i&gt; DirectDrawEnumModes&lt;/i&gt; has two methods – &lt;i&gt; GetCount&lt;/i&gt; and &lt;i&gt; GetItem&lt;/i&gt;. The GetCount method returns the number of available display settings as a simple long. We'll use this function to get the upper bounds of the iterative that fills the list box. As you might have guessed we use the GetItem method to retrieve the settings available. This method takes two parameters, the first being the index to the item that should be received. This index must be in the range of 1 – GetCount(), if it is not a run-time error is generated. The second parameter is a &lt;i&gt; DDSURFACEDESC2&lt;/i&gt; structure. This structure is a descriptor for a given surface and is used it many contexts. In this application we use the &lt;i&gt; lWidth&lt;/i&gt;,&lt;i&gt; lHeight&lt;/i&gt; and the &lt;i&gt;  ddpfPixelFormat.lRGBBitCount&lt;/i&gt; members to retrieve the Height, Width and Color depth of the primary surface. In the initialization phase of the sample application we put these members in a list box for display.    &lt;/p&gt;&lt;p&gt; The code for initializing the application is shown in &lt;i&gt;Listing 2&lt;/i&gt;.&lt;br /&gt;&lt;/p&gt;&lt;div align="center"&gt;   &lt;center&gt;   &lt;table bgcolor="#c0c0c0" border="0" width="85%"&gt;     &lt;tbody&gt;&lt;tr&gt;       &lt;td width="100%"&gt;&lt;code&gt;Private Sub Form_Load()&lt;br /&gt;       &lt;br /&gt;        On Error GoTo ErrHandler:&lt;br /&gt;       &lt;br /&gt;        Dim ddsd As DDSURFACEDESC2&lt;br /&gt;        Dim I As Long, lgCount As Long&lt;br /&gt;       &lt;br /&gt;        Set objDx = New DirectX7&lt;br /&gt;        ''Create DirectDraw object&lt;br /&gt;        Set objDraw7 = objDx.DirectDrawCreate("")&lt;br /&gt;       &lt;br /&gt;        ''Get the modes in the enum modes object&lt;br /&gt;        Set objEnumModes = objDraw7.GetDisplayModesEnum(DDEDM_DEFAULT, ddsd)&lt;br /&gt;       &lt;br /&gt;        ''Put the data in the listbox&lt;br /&gt;        lgCount = objEnumModes.GetCount()&lt;br /&gt;       &lt;br /&gt;        For I = 1 To lgCount&lt;br /&gt;       &lt;br /&gt;    objEnumModes.GetItem I, ddsd&lt;br /&gt;       &lt;br /&gt;    lstDisplayModes.AddItem CStr(ddsd.lWidth) &amp;amp; "x" &amp;amp; CStr(ddsd.lHeight) &amp;amp; "x" _&lt;br /&gt;        &amp;amp; CStr(ddsd.ddpfPixelFormat.lRGBBitCount)&lt;br /&gt;        Next I&lt;br /&gt;       &lt;br /&gt;        ErrHandler:&lt;br /&gt;       &lt;br /&gt;    Select Case Err.Number&lt;br /&gt;       &lt;br /&gt;        Case 0 ''No Errors&lt;br /&gt;       &lt;br /&gt;        Case Else&lt;br /&gt;        Err.Raise Err.Number, Err.Source, Err.Description, Err.HelpContext,  Err.HelpContext&lt;br /&gt;       &lt;br /&gt;            Call CleanUp&lt;br /&gt;       &lt;br /&gt;    End Select&lt;br /&gt;       &lt;br /&gt;        End Sub&lt;/code&gt;&lt;br /&gt;       &lt;br /&gt;      &lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;   &lt;/center&gt; &lt;/div&gt;  &lt;p align="center"&gt; &lt;span style="font-size: 10pt; font-family: &amp;quot;verdana&amp;quot;;"&gt;&lt;b&gt;Listing 2 shows the initialization for the DXFile1_1 sample project&lt;/b&gt;&lt;/span&gt;   &lt;/p&gt;&lt;p&gt; One more thing that is worth mentioning is the Error handling in the initialization phase of the application. It cannot be stressed enough how important this is. You must catch any run-time errors that are thrown. If you do not, you run the risk of your application bombing. First and foremost, your application will stop executing before it really starts – and you are not likely to sell many games that way. It may also be possible that the error can be 'fixed'. By trapping and addressing the error, we can keep our program running. A future &lt;b&gt; DirectX-file™&lt;/b&gt; will deal exclusively with error handling techniques that you can employ. Just remember you must do it, even though it seems like redundant and boring code, otherwise you will surely pay the price.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;After initialization, the application is ready to run. You should be seeing a small window with a list box and two command buttons, something like Figure 1: &lt;/p&gt;  &lt;div align="center"&gt;   &lt;center&gt;   &lt;table bgcolor="#c0c0c0" border="0" width="85%"&gt;     &lt;tbody&gt;&lt;tr&gt;       &lt;td align="center" width="100%"&gt;&lt;img src="http://www.vbexplorer.com/VBExplorer/gamearticles/DDRAW_files/image004.jpg" align="middle" border="0" height="213" width="226" /&gt;&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;   &lt;/center&gt; &lt;/div&gt;  &lt;p&gt;Try to select an item in the list box and click the ‘Set Selected Display mode’ button. Suddenly your display mode will change and the small window will be resized to fill the entire desktop. You have just done two things. First, you have changed the Display setting, and second, you have acquired the entire display under your control. If you move the window around a bit you can see other windows behind it (if you have any open), but you still have control of everything on the primary display. Don’t mistake your form for the primary display – they are two very distinct entities (as we will see later).&lt;br /&gt;&lt;br /&gt;The code that changes and acquires the control over the display is in the &lt;i&gt; SetNewDisplayMode&lt;/i&gt; function shown in &lt;i&gt;Listing 3&lt;/i&gt;:&lt;br /&gt;&lt;/p&gt;&lt;div align="center"&gt;   &lt;center&gt;   &lt;table bgcolor="#c0c0c0" border="0" width="85%"&gt;     &lt;tbody&gt;&lt;tr&gt;       &lt;td width="100%"&gt;&lt;code&gt;Private Function SetNewDisplayMode()&lt;br /&gt;        On Error GoTo ErrHandler&lt;br /&gt;       &lt;br /&gt;        Dim ddsd As DDSURFACEDESC2&lt;br /&gt;        Dim I As Long&lt;br /&gt;       &lt;br /&gt;    ''Get the selected item&lt;br /&gt;    I = lstDisplayModes.ListIndex&lt;br /&gt;    If I = -1 Then&lt;br /&gt;        MsgBox "Please select item in Listbox", vbOKOnly, "Error"&lt;br /&gt;        Exit Function&lt;br /&gt;    End If&lt;br /&gt;       &lt;br /&gt;    objEnumModes.GetItem (I + 1), ddsd&lt;br /&gt;       &lt;br /&gt;    ''Set cooperative level&lt;br /&gt;    objDraw7.SetCooperativeLevel Me.hWnd, DDSCL_FULLSCREEN Or DDSCL_ALLOWMODEX Or  _ DDSCL_EXCLUSIVE&lt;br /&gt;       &lt;br /&gt;    ''Set the display mode&lt;br /&gt;    objDraw7.SetDisplayMode ddsd.lWidth, ddsd.lHeight, ddsd.ddpfPixelFormat.lRGBBitCount, 0,  _ DDSDM_DEFAULT&lt;br /&gt;       &lt;br /&gt;    ''Draw the form&lt;br /&gt;    Me.Refresh&lt;br /&gt;       &lt;br /&gt;        ErrHandler:&lt;br /&gt;       &lt;br /&gt;    Select Case Err.Number&lt;br /&gt;       &lt;br /&gt;        Case 0 ''No Errors&lt;br /&gt;       &lt;br /&gt;        Case Else&lt;br /&gt;       &lt;br /&gt;            Err.Raise Err.Number, Err.Source, Err.Description, Err.HelpContext, Err.HelpContext&lt;br /&gt;            Call CleanUp&lt;br /&gt;       &lt;br /&gt;    End Select&lt;br /&gt;       &lt;br /&gt;        End Function&lt;/code&gt;&lt;br /&gt;      &lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;   &lt;/center&gt; &lt;/div&gt;  &lt;p align="center"&gt;  &lt;span style="font-size: 10pt; font-family: &amp;quot;verdana&amp;quot;;"&gt;&lt;b&gt;Listing 3 shows the SetNewDisplayMode function in the DXFile1_1 sample project&lt;/b&gt;&lt;/span&gt;  &lt;/p&gt;&lt;p&gt; The function first tries to identify the selected item from the List box. If no item has been selected, the user will be notified and the function will terminate; otherwise, the information for the selected item is stored in a DDSURFACEDESC2 structure. Before we can change the display setting of the primary display to match the selected information, we must announce how we want to cooperate with the DirectDraw system. This is done via the &lt;i&gt; SetDisplayMode&lt;/i&gt; method of the DirectDraw7 object. The SetDisplayMode method is one of DirectDraw's initializing functions. This method tells the DirectDraw system how the application wants to interact with the rest of the system. At the basic level you have two choices on how your application can interact with the rest of the windows system: it can either take full and exclusive control of the display, or it can work as a normal window with no special rights. In this sample, we have taken full control of the display system and video card. This is the easiest approach since we do not have to worry about other running applications and their interaction with the system. Later, in this DirectX-file™ series, we will examine how to make DirectDraw applications that interact normally with Windows.&lt;br /&gt;&lt;br /&gt;Lastly, we call a refresh on the form to make it display properly. Play around with the system for a while and enjoy the ‘fun’.&lt;br /&gt;&lt;br /&gt;&lt;u&gt;Afterthoughts&lt;/u&gt;  &lt;/p&gt;&lt;p&gt;This sample is very simple and does not involve any special techniques or methods for accomplishing what we need. But it does serve as an example on how much of the interaction with the DirectDraw system is accomplished.   &lt;/p&gt;&lt;p&gt;In the next sub case, we will examine some of DirectDraw's basic graphical abilities.  &lt;/p&gt;&lt;p&gt;&lt;a href="http://www.vbexplorer.com/VBExplorer/gamearticles/ddraw.asp" style="color: brown;"&gt;[DirectDraw 1-1]&lt;/a&gt; &lt;a href="http://www.vbexplorer.com/VBExplorer/gamearticles/ddraw2.asp" style="color: brown;"&gt;[DirectDraw 1-2]&lt;/a&gt;&lt;/p&gt;  &lt;hr /&gt; &lt;p&gt;&lt;a href="http://www.vbexplorer.com/VBExplorer/gamearticles/ddraw_files/dxfile1_1.zip"&gt;&lt;img src="http://www.vbexplorer.com/VBExplorer/graphics/disk.gif" border="0" height="16" width="16" /&gt;Download Sample 1-1&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-7057788460524340499?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/7057788460524340499/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=7057788460524340499' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/7057788460524340499'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/7057788460524340499'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/01/directdraw-for-visual-basic.html' title='DirectDraw for Visual Basic®'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-1241179503341275896</id><published>2008-01-28T12:20:00.000-08:00</published><updated>2008-01-28T12:22:24.722-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='visual basic'/><title type='text'>The BitBlt API</title><content type='html'>&lt;p&gt;&lt;i&gt;&lt;font color="#800080" size="+3"&gt;The BitBlt API&lt;/font&gt;&lt;/i&gt;&lt;font face="Arial" size="-1"&gt;&lt;br /&gt; &lt;/font&gt;&lt;b&gt;&lt;font color="#800080" face="Arial" size="-1"&gt;Author :&lt;/font&gt;&lt;/b&gt;&lt;font face="Arial" size="-1"&gt; Michael Lambino&lt;br /&gt; &lt;/font&gt;&lt;b&gt;&lt;font color="#800080" face="Arial" size="-1"&gt;Created :&lt;/font&gt;&lt;/b&gt;&lt;font face="Arial" size="-1"&gt; 11 May, 1998&lt;br /&gt; &lt;/font&gt;&lt;b&gt;&lt;font color="#800080" face="Arial" size="-1"&gt;Modified :&lt;/font&gt;&lt;/b&gt;&lt;font face="Arial" size="-1"&gt; 17 October, 1998&lt;/font&gt;&lt;b&gt;&lt;font color="#800080" face="Arial" size="-1"&gt;&lt;br /&gt; Skill Level :&lt;/font&gt;&lt;/b&gt;&lt;font face="Arial" size="-1"&gt; Beginner - Casual&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;This tutorial is a revised version of the original BitBlt API primer/tutorial I originally wrote in May, 1998. Most of the content remains the same, it's just that I've (hopefully) made it a little easier to read. You can also download the associated &lt;a href="http://www.vbexplorer.com/VBExplorer/librarystuff/bitbltprimer.zip" style="color: rgb(128, 0, 128); text-decoration: none;"&gt;demo project here&lt;/a&gt;.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;It appears that want of information for this popular API never seems to cease. The BitBlt API call was the first API I learned how to implement, as I suspect may be the case with many who may come across this tutorial. It is for this reason why the tutorial is geared mainly towards newbies but hopefully there's something in it for everybody.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;If you read and re-read parts of this tutorial and find that parts are a little over your head, skip the paragraph and try out the code. Come back to it in your own time (days, weeks, months) and things will get clearer. Like most things dealing with programming, practice makes perfect. There are improvements that can be applied to the method of bltting that I show here, let me make that perfectly clear :o), so treat this material as a starting point and then write some code, and then write some more.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;One thing not to forget though is to Enjoy :o) -- Catch you all later!&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt; &lt;hr size="1"&gt; &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;i&gt;&lt;font color="#800080" size="+2"&gt;So, what is this BitBlt I've been hearing so much about?&lt;/font&gt;&lt;/i&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;BitBlt is an acronym for &lt;/font&gt;&lt;b&gt;&lt;font face="Arial" size="-1"&gt;Bit&lt;/font&gt;&lt;/b&gt;&lt;font face="Arial" size="-1"&gt; &lt;/font&gt;&lt;b&gt;&lt;font face="Arial" size="-1"&gt;Bl&lt;/font&gt;&lt;/b&gt;&lt;font face="Arial" size="-1"&gt;ock &lt;/font&gt;&lt;b&gt;&lt;font face="Arial" size="-1"&gt;T&lt;/font&gt;&lt;/b&gt;&lt;font face="Arial" size="-1"&gt;ransfer. It is an API function exposed by the GDI32.dll that performs a transfer of a rectangular area of an image to another rectangular area of equal size. This includes copying, combining or merging images and displaying the result.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;An important point to keep in mind is like most API calls, Visual Basic knows not when you invoke the function. If you use the BitBlt function to perform a bltting operation to an object with it's &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;AutoRedraw&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; property set to &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;True&lt;/font&gt;&lt;font face="Arial" size="-1"&gt;, you must call the object's &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;Refresh&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; method to update the screen with the image in memory... But more about this later.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt; &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;i&gt;&lt;font color="#800080" size="+2"&gt;Enough talk, show me the code!&lt;/font&gt;&lt;/i&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;The following listing (&lt;/font&gt;&lt;b&gt;&lt;font color="#800080" face="Arial" size="-1"&gt;Listing 1.1&lt;/font&gt;&lt;/b&gt;&lt;font face="Arial" size="-1"&gt;) is the source code for a reusable .bas module that provides enumerated Raster Operation constants and the declaration for the BitBlt API function. A member of the enumerated raster operation type is used in the last parameter of a BitBlt function call.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;The Bitblt API is a function exposed by the GDI32.dll, which is made available for use within your Visual Basic projects with the below (or similar) declaration. It is declared below to be used in a .bas module, in a global scope, making it accessable to all forms and modules you may be using in your project. You use the function as you would any other &lt;/font&gt;&lt;i&gt;&lt;font face="Arial" size="-1"&gt;custom&lt;/font&gt;&lt;/i&gt;&lt;font face="Arial" size="-1"&gt; function you write in Visual Basic.&lt;/font&gt;&lt;/p&gt;  &lt;center&gt;&lt;b&gt;&lt;font color="#800080" face="Arial" size="-1"&gt;Listing 1.1&lt;/font&gt;&lt;/b&gt;&lt;font color="#800080" face="Arial" size="-1"&gt; BitBlt.bas &lt;/font&gt;&lt;font face="Arial" size="-1"&gt;- Generic BitBlt API Declaration and Constants for use in a .bas module.&lt;/font&gt;&lt;table bgcolor="#c0c0c0" border="0" width="90%"&gt;    &lt;tbody&gt;&lt;tr&gt;       &lt;td&gt;          &lt;pre&gt;&lt;table border="0"&gt;    &lt;tbody&gt;&lt;tr&gt;       &lt;td colspan="3" valign="top"&gt;          &lt;p&gt;&lt;code&gt;&lt;font color="#008000" face="Arial"&gt;' * * * * * * *          * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *          * * * * * * * * * * * * * * * * * * * * *&lt;/font&gt;&lt;/code&gt;       &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td valign="top" width="105"&gt;          &lt;p&gt;&lt;code&gt;&lt;font color="#008000" face="Arial"&gt;' Project&lt;br /&gt;                   ' Filename&lt;br /&gt;                   ' Description&lt;br /&gt;                   ' Created&lt;br /&gt;                   ' Modified&lt;/font&gt;&lt;/code&gt;       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top" width="15"&gt;          &lt;p&gt;&lt;font color="#008000" face="Arial" size="-1"&gt;:&lt;br /&gt;                   :&lt;br /&gt;                   :&lt;br /&gt;                   :&lt;br /&gt;                   :&lt;/font&gt;       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top"&gt;          &lt;p&gt;&lt;code&gt;&lt;font color="#008000" face="Arial"&gt;BitBltPrimer.vbp&lt;br /&gt;                   BitBlt.bas&lt;br /&gt;                   BitBlt API primer tutorial project&lt;br /&gt;                   11.15 PM GMT + 10.00, February 23, 1998&lt;br /&gt;                   12:26 AM GMT + 10.00, October 17, 1998&lt;/font&gt;&lt;/code&gt;       &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td colspan="3" valign="top"&gt;          &lt;p&gt;&lt;code&gt;&lt;font color="#008000" face="Arial"&gt;' * * * * * * *          * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *          * * * * * * * * * * * * * * * * * * * * *&lt;/font&gt;&lt;/code&gt;       &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td valign="top" width="105"&gt;          &lt;p&gt;&lt;code&gt;&lt;font color="#008000" face="Arial"&gt;' Author&lt;br /&gt;                   ' E-mail&lt;br /&gt;                   ' Comments&lt;br /&gt;                   ' License&lt;br /&gt;                   '&lt;br /&gt;                   '&lt;/font&gt;&lt;/code&gt;       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top" width="15"&gt;          &lt;p&gt;&lt;font color="#008000" face="Arial" size="-1"&gt;:&lt;br /&gt;                   :&lt;br /&gt;                   :&lt;br /&gt;                   :&lt;/font&gt;       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top"&gt;          &lt;p&gt;&lt;code&gt;&lt;font color="#008000" face="Arial"&gt;Michael          Lambino&lt;br /&gt;                   ProSoft@the18th.com&lt;br /&gt;                   Copyright  ©, 23 February, 1998 - Michael Lambino&lt;br /&gt;                   Freeware - Freely distributable unmodified.  No costs may be          charged whatsoever for the distribution of this tutorial, in          any form of media, without expressed permission from the          author.&lt;/font&gt;&lt;/code&gt;       &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td colspan="3" valign="top"&gt;          &lt;p&gt;&lt;code&gt;&lt;font color="#008000" face="Arial"&gt;' * * * * * * *          * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *          * * * * * * * * * * * * * * * * * * * * *&lt;/font&gt;&lt;/code&gt;       &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;&lt;code&gt;&lt;font color="#008000" face="Arial"&gt;&lt;br /&gt;' Require all variables be declared.&lt;/font&gt;&lt;font face="Arial"&gt; &lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;&lt;br /&gt;   Option Explicit&lt;/font&gt;&lt;font color="#008000" face="Arial"&gt;&lt;br /&gt;&lt;br /&gt;' Enumerated raster operation constants&lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;&lt;br /&gt;   Public Enum&lt;/font&gt;&lt;font face="Arial"&gt; RasterOps&lt;/font&gt;&lt;font color="#008000" face="Arial"&gt;&lt;br /&gt;       ' Copies the source bitmap to destination bitmap&lt;/font&gt;&lt;font face="Arial"&gt;&lt;br /&gt;        SRCCOPY = &amp;amp;HCC0020&lt;/font&gt;&lt;font color="#008000" face="Arial"&gt;&lt;br /&gt;       '&lt;br /&gt;       ' Combines pixels of the destination with source bitmap using the Boolean AND operator.&lt;/font&gt;&lt;font face="Arial"&gt;&lt;br /&gt;        SRCAND = &amp;amp;H8800C6&lt;/font&gt;&lt;font color="#008000" face="Arial"&gt;&lt;br /&gt;       '                               &lt;br /&gt;       ' Combines pixels of the destination with source bitmap using the Boolean XOR operator.&lt;/font&gt;&lt;font face="Arial"&gt;&lt;br /&gt;        SRCINVERT = &amp;amp;H660046   &lt;/font&gt;&lt;font color="#008000" face="Arial"&gt;&lt;br /&gt;       '&lt;br /&gt;       ' Combines pixels of the destination with source bitmap using the Boolean OR operator.&lt;/font&gt;&lt;font face="Arial"&gt;&lt;br /&gt;        SRCPAINT = &amp;amp;HEE0086   &lt;br /&gt;       &lt;/font&gt;&lt;font color="#008000" face="Arial"&gt;'&lt;br /&gt;       ' Inverts the destination bitmap and then combines the results with the source bitmap&lt;br /&gt;       ' using the Boolean AND operator.&lt;/font&gt;&lt;font face="Arial"&gt;&lt;br /&gt;        SRCERASE = &amp;amp;H4400328   &lt;/font&gt;&lt;font color="#008000" face="Arial"&gt;&lt;br /&gt;       '&lt;br /&gt;       ' Turns all output white.&lt;/font&gt;&lt;font face="Arial"&gt;&lt;br /&gt;        WHITENESS = &amp;amp;HFF0062&lt;/font&gt;&lt;font color="#008000" face="Arial"&gt;&lt;br /&gt;       '&lt;br /&gt;       ' Turn output black.&lt;/font&gt;&lt;font face="Arial"&gt;&lt;br /&gt;        BLACKNESS = &amp;amp;H42 &lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;&lt;br /&gt;   End Enum&lt;br /&gt; &lt;/font&gt;&lt;font color="#008000" face="Arial"&gt;&lt;br /&gt;' BitBlt API Public Declaration&lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;&lt;br /&gt;    Declare Function&lt;/font&gt;&lt;font face="Arial"&gt; BitBlt &lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;Lib&lt;/font&gt;&lt;font face="Arial"&gt; "gdi32" ( _&lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;&lt;br /&gt;       ByVal &lt;/font&gt;&lt;font face="Arial"&gt;hDestDC &lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;As Long&lt;/font&gt;&lt;font face="Arial"&gt;, _&lt;br /&gt;   &lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;    ByVal&lt;/font&gt;&lt;font face="Arial"&gt; x &lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;As Long&lt;/font&gt;&lt;font face="Arial"&gt;, _&lt;br /&gt;   &lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;    ByVal&lt;/font&gt;&lt;font face="Arial"&gt; y &lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;As Long&lt;/font&gt;&lt;font face="Arial"&gt;, _&lt;br /&gt;   &lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;    ByVal&lt;/font&gt;&lt;font face="Arial"&gt; nWidth &lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;As Long&lt;/font&gt;&lt;font face="Arial"&gt;, _&lt;br /&gt;   &lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;    ByVal&lt;/font&gt;&lt;font face="Arial"&gt; nHeight &lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;As Long&lt;/font&gt;&lt;font face="Arial"&gt;, _&lt;br /&gt;       &lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;ByVal&lt;/font&gt;&lt;font face="Arial"&gt; hSrcDC &lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;As Long&lt;/font&gt;&lt;font face="Arial"&gt;, _&lt;br /&gt;       &lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;ByVal&lt;/font&gt;&lt;font face="Arial"&gt; xSrc &lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;As Long&lt;/font&gt;&lt;font face="Arial"&gt;, _&lt;br /&gt;       &lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;ByVal&lt;/font&gt;&lt;font face="Arial"&gt; ySrc &lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;As Long&lt;/font&gt;&lt;font face="Arial"&gt;, _&lt;br /&gt;       &lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;ByVal&lt;/font&gt;&lt;font face="Arial"&gt; dwRop &lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;As &lt;/font&gt;&lt;font face="Arial"&gt;RasterOps _&lt;br /&gt;       ) &lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;As Long&lt;/font&gt;&lt;font face="Arial"&gt;&lt;br /&gt; &lt;/font&gt;&lt;/code&gt;&lt;/pre&gt;       &lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;&lt;/center&gt;  &lt;p&gt;&lt;i&gt;&lt;font color="#800080" size="+2"&gt;.. so, what does it all mean?&lt;/font&gt;&lt;/i&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;For now, skip the enumerated constants (that's the code between &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;Public Enum&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; RasterOps and &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;End Enum&lt;/font&gt;&lt;font face="Arial" size="-1"&gt;), and we'll focus on the actual &lt;/font&gt;&lt;font color="#008000" face="Arial" size="-1"&gt;BitBlt Declaration&lt;/font&gt;&lt;font face="Arial" size="-1"&gt;, which, for the purpose of this tutorial we'll call the BitBlt function. Lets take a look at the parameters of the function and delve into them a little deeper than the more sane members of our communities ever would - Take a look at &lt;/font&gt;&lt;b&gt;&lt;font color="#800080" face="Arial" size="-1"&gt;Listing 1.2&lt;/font&gt;&lt;/b&gt;&lt;font face="Arial" size="-1"&gt; &lt;/font&gt;&lt;/p&gt;  &lt;center&gt;&lt;b&gt;&lt;font color="#800080" face="Arial" size="-1"&gt;Listing 1.2&lt;/font&gt;&lt;/b&gt;&lt;font color="#800080" face="Arial" size="-1"&gt; BitBlt.bas&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; - A snippet of the BitBlt API declaration&lt;/font&gt;&lt;table bgcolor="#c0c0c0" border="0" width="90%"&gt;    &lt;tbody&gt;&lt;tr&gt;       &lt;td&gt;          &lt;blockquote&gt;&lt;p&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;&lt;br /&gt;                   ByVal&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; hDestDC          &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;As          Long&lt;/font&gt;&lt;font face="Arial" size="-1"&gt;, _&lt;br /&gt;                   &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;..&lt;br /&gt;                   ByVal&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; hSrcDC          &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;As          Long&lt;/font&gt;&lt;font face="Arial" size="-1"&gt;, _&lt;/font&gt;          &lt;/p&gt;&lt;/blockquote&gt;       &lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;&lt;/center&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;The values you pass here are the Destination Object's hDC (hence hDestDC) and the Source Object's hDC (hSrcDC). In saying that BitBlt transfers an image from one area of memory to another, the operating system needs to know where to find the image to transfer and where to send them too. Both the Source image and Destination object need to have a &lt;/font&gt;&lt;i&gt;&lt;font face="Arial" size="-1"&gt;handle&lt;/font&gt;&lt;/i&gt;&lt;font face="Arial" size="-1"&gt; for &lt;/font&gt;&lt;i&gt;&lt;font face="Arial" size="-1"&gt;Windows&lt;/font&gt;&lt;/i&gt;&lt;font face="Arial" size="-1"&gt; to find where the source pixels are and where the pixels should be painted too at any given time. This is where the hDC comes into play. &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;In the accompanying project, we use a &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;PictureBox&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; Object to contain the source image and use another &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;PictureBox&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; to contain the resulting image which is transferred, both of which support the &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;hDC&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; property. The &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;hDC&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; property of an object returns the handle in which your OS can find a device context ... &lt;/font&gt;&lt;i&gt;&lt;font face="Arial" size="-1"&gt;huh?&lt;/font&gt;&lt;/i&gt;&lt;font face="Arial" size="-1"&gt; I hear you say ... In times of &lt;/font&gt;&lt;i&gt;&lt;font face="Arial" size="-1"&gt;huh?&lt;/font&gt;&lt;/i&gt;&lt;font face="Arial" size="-1"&gt; we first turn to traditional resources of information (start with the VB Help file) -- it states that:&lt;/font&gt;&lt;/p&gt;  &lt;center&gt;&lt;b&gt;&lt;font color="#800080" face="Arial" size="-1"&gt;Borrowed from MS VB5 Help File&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; &lt;/font&gt;&lt;/b&gt;&lt;table bgcolor="#800080" border="0" width="90%"&gt;    &lt;tbody&gt;&lt;tr&gt;       &lt;td&gt;          &lt;p&gt;&lt;i&gt;&lt;font color="#ffffff" face="Arial" size="-1"&gt;this          property is a Windows operating environment device context          handle. The Windows operating environment manages the system          display by assigning a device context for ..... each form          and PictureBox control in your application. You can use the          hDC property to refer to the handle for an object's device          context. This provides a value to pass to Windows API          calls&lt;/font&gt;&lt;/i&gt;&lt;font color="#ffffff" face="Arial" size="-1"&gt;.&lt;/font&gt;       &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;&lt;/center&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;This API function needs to know where in the system memory the source pixels which you want transferred are located (as well as the destination you want them transferred too). You cannot simply say &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;BitBlt PictureBox2&lt;/font&gt;&lt;font color="#7c7a4e" face="Arial" size="-1"&gt; (Destination) from &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;PictureBox1&lt;/font&gt;&lt;font color="#7c7a4e" face="Arial" size="-1"&gt; (Source)&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; and expect windows to understand or find what you've just asked it to. Instead we pass the handle to the Device Context, by calling &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;BitBlt PictureBox2.hDC&lt;/font&gt;&lt;font color="#7c7a4e" face="Arial" size="-1"&gt; from &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;PictureBox2.hDC&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; .. nothing really hard! ;o) in fact, windows does all the hard work behind the scenes for you .. it actually creates&lt;/font&gt;&lt;font color="#7c7a4e" face="Arial" size="-1"&gt; &lt;/font&gt;&lt;b&gt;&lt;font color="#af0000" face="Arial" size="-1"&gt;a link between your application, a device driver, and an output device;&lt;/font&gt;&lt;/b&gt;&lt;font color="#7c7a4e" face="Arial" size="-1"&gt; &lt;/font&gt;&lt;font face="Arial" size="-1"&gt;such as the screen or a printer.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;Now one more thing about hDC before we move on to the next parameters ... We've established that the hDC property provides a method of finding the location of an object in memory ... well another relevant question which you should ask yourself is -- &lt;/font&gt;&lt;i&gt;&lt;font color="#575700" face="Arial" size="-1"&gt;Does the value that the hDC property return remain the same, and if so, for how long? &lt;/font&gt;&lt;/i&gt;&lt;font face="Arial" size="-1"&gt;-- well I'm glad you asked. In short, the answer is NO - the hDC &lt;/font&gt;&lt;i&gt;&lt;font face="Arial" size="-1"&gt;may not&lt;/font&gt;&lt;/i&gt;&lt;font face="Arial" size="-1"&gt; remain the same during the lifetime of a running application. As the VB Help File suggests (lookup: &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;hDC&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; Property), do not hardcode the value returned by the hDC property in any API calls ... simply refer to the property whenever you need it. Experiment with this though as caching the hDC property can sometimes improve performance.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;Whilst we're talking about memory and fun stuff like that, I might take a short timeout to look into the &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;AutoRedraw&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; property of an object. I said above that &lt;/font&gt;&lt;i&gt;&lt;font color="#808040" face="Arial" size="-1"&gt;BitBlt transfers image data from a rectangular source image to a destination picture-container&lt;/font&gt;&lt;/i&gt;&lt;font face="Arial" size="-1"&gt;. When the &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;AutoRedraw&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; property of an object is set to &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;True&lt;/font&gt;&lt;font face="Arial" size="-1"&gt;, then the system stores an image, contained by the object, in memory (persistant bitmap). Whilst this property is set to &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;True&lt;/font&gt;&lt;font face="Arial" size="-1"&gt;, any changes done to the image will only be done to the image held in memory, NOT the image you see on the screen. When the &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;AutoRedraw&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; property of a destination object is set to true you must tell the OS to &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;Refresh&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; the on-screen image and update it with the image being held in memory. You do this by calling the Refresh method of the destination object (&lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;PictureBox2.Refresh&lt;/font&gt;&lt;font face="Arial" size="-1"&gt;).&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;Ok, I can hear someone saying, &lt;/font&gt;&lt;i&gt;&lt;font color="#575700" face="Arial" size="-1"&gt;why bother - what's the advantage of that?&lt;/font&gt;&lt;/i&gt;&lt;font color="#7c7a4e" face="Arial" size="-1"&gt; &lt;/font&gt;&lt;font face="Arial" size="-1"&gt;Well an answer could be that theoretically, if you do all your changes to an image "off-screen" and then simply display the image when changes are completed, this will cause less "flicker" as opposed to displaying an image as changes are taking place. You can theorize, it is faster not to update the screen as you do the changes, as your application needs to pass thru a display driver which in turn instructs your monitor to update the changes, as opposed to doing all the work behind the scenes (in memory) and updating the screen once. This will definately be faster! Now, an important thing to remember is that you must use this technique wisely as memory is not infinate ... I'm sure I don't have to go into this :o) ...&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;Now, that's the end of one of the hardest concepts of this API call and a little background into the &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;AutoRedraw&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; property. As a reward here's a quick lookup table of all the parameters of the function. Don't bother copying and pasting the table as it comes in the BitBlt.bas module with the accompanying project download.&lt;/font&gt;&lt;/p&gt;  &lt;center&gt;&lt;b&gt;&lt;font color="#800080" face="Arial" size="-1"&gt;Listing 1.3&lt;/font&gt;&lt;/b&gt;&lt;font color="#800080" face="Arial" size="-1"&gt; BitBlt.bas &lt;/font&gt;&lt;font face="Arial" size="-1"&gt;- Quick lookup table for the parameters of the BitBlt API Declaration&lt;/font&gt;&lt;font color="#800080" face="Arial" size="-1"&gt; &lt;/font&gt;&lt;table bgcolor="#c0c0f7" border="0" width="90%"&gt;    &lt;tbody&gt;&lt;tr&gt;       &lt;th colspan="4"&gt;          &lt;p align="left"&gt;&lt;code&gt;&lt;font color="#008000" face="Arial"&gt;' * *          * * * * * * * * * * * * * * * * * * * * * * * * * * * *&lt;br /&gt;                   ' Parameter descriptions&lt;br /&gt;                   ' * * * * * * * * * * * * * * * * * * * * * * * * * * * * *          *&lt;/font&gt;&lt;/code&gt;       &lt;/p&gt;&lt;/th&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td valign="top" width="30"&gt;          &lt;p&gt;&lt;code&gt;&lt;font color="#008000" face="Arial"&gt;'&lt;/font&gt;&lt;/code&gt;       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top" width="149"&gt;          &lt;p&gt;&lt;code&gt;&lt;font color="#0000af" face="Arial"&gt;ByVal&lt;/font&gt;&lt;font color="#008000" face="Arial"&gt; &lt;/font&gt;&lt;font face="Arial"&gt;hDestDC&lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt; As Long&lt;/font&gt;&lt;/code&gt;       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top" width="10"&gt;          &lt;p&gt;:       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top"&gt;          &lt;pre&gt;&lt;code&gt;&lt;font color="#008000" face="Arial"&gt;hDC of object (Destination PictureBox hDC) in which resulting&lt;br /&gt;Blt&lt;/font&gt;&lt;/code&gt; &lt;code&gt;&lt;font color="#008000" face="Arial"&gt;operation will performed.&lt;/font&gt;&lt;/code&gt;&lt;/pre&gt;       &lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td valign="top" width="30"&gt;          &lt;p&gt;&lt;code&gt;&lt;font color="#008000" face="Arial"&gt;'&lt;/font&gt;&lt;/code&gt;       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top" width="149"&gt;          &lt;p&gt;&lt;code&gt;&lt;font color="#0000af" face="Arial"&gt;ByVal&lt;/font&gt;&lt;font color="#008000" face="Arial"&gt; &lt;/font&gt;&lt;font face="Arial"&gt;x&lt;/font&gt;&lt;font color="#008000" face="Arial"&gt; &lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;As Long&lt;/font&gt;&lt;/code&gt;       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top" width="10"&gt;          &lt;p&gt;:       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top"&gt;          &lt;pre&gt;&lt;code&gt;&lt;font color="#008000" face="Arial"&gt;Leftmost coordinate (upper-left) of the destination rectangle.&lt;/font&gt;&lt;/code&gt;&lt;/pre&gt;       &lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td valign="top" width="30"&gt;          &lt;p&gt;&lt;code&gt;&lt;font color="#008000" face="Arial"&gt;'&lt;/font&gt;&lt;/code&gt;       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top" width="149"&gt;          &lt;p&gt;&lt;code&gt;&lt;font color="#0000af" face="Arial"&gt;ByVal&lt;/font&gt;&lt;font color="#008000" face="Arial"&gt; &lt;/font&gt;&lt;font face="Arial"&gt;y&lt;/font&gt;&lt;font color="#008000" face="Arial"&gt; &lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;As Long&lt;/font&gt;&lt;/code&gt;       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top" width="10"&gt;          &lt;p&gt;:       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top"&gt;          &lt;pre&gt;&lt;code&gt;&lt;font color="#008000" face="Arial"&gt;Topmost coordinate (upper-left) of the destination rectangle.&lt;/font&gt;&lt;/code&gt;&lt;/pre&gt;       &lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td valign="top" width="30"&gt;          &lt;p&gt;&lt;code&gt;&lt;font color="#008000" face="Arial"&gt;'&lt;/font&gt;&lt;/code&gt;       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top" width="149"&gt;          &lt;p&gt;&lt;code&gt;&lt;font color="#0000af" face="Arial"&gt;ByVal&lt;/font&gt;&lt;font color="#008000" face="Arial"&gt; &lt;/font&gt;&lt;font face="Arial"&gt;nWidth&lt;/font&gt;&lt;font color="#008000" face="Arial"&gt; &lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;As Long&lt;/font&gt;&lt;/code&gt;       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top" width="10"&gt;          &lt;p&gt;:       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top"&gt;          &lt;pre&gt;&lt;code&gt;&lt;font color="#008000" face="Arial"&gt;width of the rectangle of the destination image to be bltted.&lt;/font&gt;&lt;/code&gt; &lt;/pre&gt;       &lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td valign="top" width="30"&gt;          &lt;p&gt;&lt;code&gt;&lt;font color="#008000" face="Arial"&gt;'&lt;/font&gt;&lt;/code&gt;       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top" width="149"&gt;          &lt;p&gt;&lt;code&gt;&lt;font color="#0000af" face="Arial"&gt;ByVal&lt;/font&gt;&lt;font color="#008000" face="Arial"&gt; &lt;/font&gt;&lt;font face="Arial"&gt;nHeight&lt;/font&gt;&lt;font color="#008000" face="Arial"&gt; &lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;As Long&lt;/font&gt;&lt;/code&gt;       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top" width="10"&gt;          &lt;p&gt;:       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top"&gt;          &lt;pre&gt;&lt;code&gt;&lt;font color="#008000" face="Arial"&gt;height of the rectangle of the destination image to be bltted.&lt;/font&gt;&lt;/code&gt;  &lt;/pre&gt;       &lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td valign="top" width="30"&gt;          &lt;p&gt;&lt;code&gt;&lt;font color="#008000" face="Arial"&gt;'&lt;/font&gt;&lt;/code&gt;       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top" width="149"&gt;          &lt;p&gt;&lt;code&gt;&lt;font color="#0000af" face="Arial"&gt;ByVal&lt;/font&gt;&lt;font color="#008000" face="Arial"&gt; &lt;/font&gt;&lt;font face="Arial"&gt;hSrcDC&lt;/font&gt;&lt;font color="#008000" face="Arial"&gt; &lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;As Long&lt;/font&gt;&lt;/code&gt;       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top" width="10"&gt;          &lt;p&gt;:       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top"&gt;          &lt;pre&gt;&lt;code&gt;&lt;font color="#008000" face="Arial"&gt;hDC of object (Source PictureBox hDC) in which resulting Blt&lt;br /&gt;operation will be&lt;/font&gt;&lt;/code&gt; &lt;code&gt;&lt;font color="#008000" face="Arial"&gt;performed from.&lt;/font&gt;&lt;/code&gt;&lt;/pre&gt;       &lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td valign="top" width="30"&gt;          &lt;p&gt;&lt;code&gt;&lt;font color="#008000" face="Arial"&gt;'&lt;/font&gt;&lt;/code&gt;       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top" width="149"&gt;          &lt;p&gt;&lt;code&gt;&lt;font color="#0000af" face="Arial"&gt;ByVal&lt;/font&gt;&lt;font color="#008000" face="Arial"&gt; &lt;/font&gt;&lt;font face="Arial"&gt;xSrc&lt;/font&gt;&lt;font color="#008000" face="Arial"&gt; &lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;As Long&lt;/font&gt;&lt;/code&gt;       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top" width="10"&gt;          &lt;p&gt;:       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top"&gt;          &lt;pre&gt;&lt;code&gt;&lt;font color="#008000" face="Arial"&gt;Leftmost coordinate (upper-left) of the source rectangle.&lt;/font&gt;&lt;/code&gt;&lt;/pre&gt;       &lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td valign="top" width="30"&gt;          &lt;p&gt;&lt;code&gt;&lt;font color="#008000" face="Arial"&gt;'&lt;/font&gt;&lt;/code&gt;       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top" width="149"&gt;          &lt;p&gt;&lt;code&gt;&lt;font color="#0000af" face="Arial"&gt;ByVal&lt;/font&gt;&lt;font color="#008000" face="Arial"&gt; &lt;/font&gt;&lt;font face="Arial"&gt;ySrc&lt;/font&gt;&lt;font color="#008000" face="Arial"&gt; &lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;As Long&lt;/font&gt;&lt;/code&gt;       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top" width="10"&gt;          &lt;p&gt;:       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top"&gt;          &lt;pre&gt;&lt;code&gt;&lt;font color="#008000" face="Arial"&gt;Topmost coordinate (upper-left) of the source rectangle.&lt;/font&gt;&lt;/code&gt;&lt;/pre&gt;       &lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td valign="top" width="30"&gt;          &lt;p&gt;&lt;code&gt;&lt;font color="#008000" face="Arial"&gt;'&lt;/font&gt;&lt;/code&gt;       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top" width="149"&gt;          &lt;p&gt;&lt;code&gt;&lt;font color="#0000af" face="Arial"&gt;ByVal&lt;/font&gt;&lt;font color="#008000" face="Arial"&gt; &lt;/font&gt;&lt;font face="Arial"&gt;dwRop&lt;/font&gt;&lt;font color="#008000" face="Arial"&gt; &lt;/font&gt;&lt;font color="#0000af" face="Arial"&gt;As Long&lt;/font&gt;&lt;/code&gt;       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top" width="10"&gt;          &lt;p&gt;:       &lt;/p&gt;&lt;/td&gt;&lt;td valign="top"&gt;          &lt;pre&gt;&lt;code&gt;&lt;font color="#008000" face="Arial"&gt;specifies the raster operation to be performed as above.&lt;/font&gt;&lt;/code&gt;&lt;/pre&gt;       &lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;&lt;/center&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;Let's push on to the following parameters -- &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;x&lt;/font&gt;&lt;font face="Arial" size="-1"&gt;, and&lt;/font&gt;&lt;font color="#7c7a4e" face="Arial" size="-1"&gt; &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;y&lt;/font&gt;&lt;font face="Arial" size="-1"&gt;: &lt;/font&gt;&lt;b&gt;&lt;font color="#800080" face="Arial" size="-1"&gt;Listing 1.4&lt;/font&gt;&lt;/b&gt;&lt;font color="#800080" face="Arial" size="-1"&gt; BitBlt.bas&lt;/font&gt;&lt;/p&gt;  &lt;center&gt;&lt;b&gt;&lt;font color="#800080" face="Arial" size="-1"&gt;Listing 1.4&lt;/font&gt;&lt;/b&gt;&lt;font color="#800080" face="Arial" size="-1"&gt; BitBlt.bas &lt;/font&gt;&lt;font face="Arial" size="-1"&gt;- A snippet of the BitBlt API declaration &lt;/font&gt;&lt;table bgcolor="#c0c0c0" border="0" width="90%"&gt;    &lt;tbody&gt;&lt;tr&gt;       &lt;td&gt;          &lt;blockquote&gt;&lt;p&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;&lt;br /&gt;                   ByVal&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; x &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;As Long&lt;/font&gt;&lt;font face="Arial" size="-1"&gt;, _&lt;br /&gt;                   &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;..&lt;br /&gt;                   ByVal&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; y &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;As Long&lt;/font&gt;&lt;font face="Arial" size="-1"&gt;, _&lt;/font&gt;&lt;/p&gt;&lt;/blockquote&gt;       &lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;&lt;/center&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;The BitBlt API as stated numerous times above, transfers a rectangular portion of a source image onto a destination ... the X and Y parameters allow you to specify the exact whereabouts, on the destination, the rectangular source image should be transferred to. Just like positioning an object within a container (eg, a picturebox within a form), &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;x&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; and &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;y&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; are very similar to the object's &lt;/font&gt;&lt;i&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;.left&lt;/font&gt;&lt;/i&gt;&lt;font color="#7c7a4e" face="Arial" size="-1"&gt; &lt;/font&gt;&lt;font face="Arial" size="-1"&gt;and&lt;/font&gt;&lt;font color="#7c7a4e" face="Arial" size="-1"&gt; &lt;/font&gt;&lt;i&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;.top&lt;/font&gt;&lt;/i&gt;&lt;font face="Arial" size="-1"&gt; properties -- easy ;o) .. but wait for it!&lt;/font&gt;&lt;/p&gt;  &lt;ul&gt;&lt;li&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;x&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; sets the distance between the internal    left edge of the destination object and the leftmost coordinate at    which the source image will be transferred, and&lt;/font&gt;        &lt;/li&gt;&lt;li&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;y&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; sets the distance between the internal top    edge of an destination object and the topmost coordinate at which    the source image will be transferred.&lt;/font&gt; &lt;/li&gt;&lt;/ul&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;There's really only one thing to bear in mind when passing values to the &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;x&lt;/font&gt;&lt;font face="Arial" size="-1"&gt;, and &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;y&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; parameters of the function call. The unit of measurement used in setting &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;x&lt;/font&gt;&lt;font face="Arial" size="-1"&gt;, and &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;y&lt;/font&gt;&lt;font face="Arial" size="-1"&gt;, is &lt;/font&gt;&lt;b&gt;&lt;font color="#af0000" face="Arial" size="-1"&gt;PIXELS&lt;/font&gt;&lt;/b&gt;&lt;font face="Arial" size="-1"&gt;. This is different to the top and left properties of an object as they can use twips or any other user-defined unit of measurement.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;X and Y allows you great control in the positioning of the transferred image. You can use the X and Y values to create tiled background effects or illusions of animation - but BitBlt doesn't stop there. It also allows you to specify whereabouts it should start transferring pixels from the source image. Take a look at :&lt;/font&gt;&lt;/p&gt;  &lt;center&gt;&lt;b&gt;&lt;font color="#800080" face="Arial" size="-1"&gt;Listing 1.5&lt;/font&gt;&lt;/b&gt;&lt;font color="#800080" face="Arial" size="-1"&gt; BitBlt.bas &lt;/font&gt;&lt;font face="Arial" size="-1"&gt;- A snippet of the BitBlt API declaration &lt;/font&gt;&lt;table bgcolor="#c0c0c0" border="0" width="90%"&gt;    &lt;tbody&gt;&lt;tr&gt;       &lt;td&gt;          &lt;blockquote&gt;&lt;p&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;&lt;br /&gt;                   ByVal&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; xSrc &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;As Long&lt;/font&gt;&lt;font face="Arial" size="-1"&gt;, _&lt;br /&gt;                   &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;..&lt;br /&gt;                   ByVal&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; ySrc &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;As Long&lt;/font&gt;&lt;font face="Arial" size="-1"&gt;, _&lt;/font&gt;&lt;/p&gt;&lt;/blockquote&gt;       &lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;&lt;/center&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;The BitBlt API allows you to specify whereabouts from a source image to start transferring pixels. This allows you to keep a number of different images (Sprites or tiles) in one image file (usually a grid of many images) and specify which sprite to transfer. As you can imagine, by keeping many frames or a sequence of images (used in animation) in one image file; this will allow for faster animation (as the system doesn't have to go through the process of accessing them from the harddrive) usually producing smoother animation. But with all good things come the bad - always keep in mind that the single (large) image may be held in memory.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;Values for the &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;xSrc&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; and &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;ySrc&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; parameters are passed in the same way as &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;x&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; and &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;y&lt;/font&gt;&lt;font face="Arial" size="-1"&gt;, as stated above.&lt;/font&gt;&lt;/p&gt;  &lt;ul&gt;&lt;li&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;xSrc&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; sets the distance between the internal    left edge of the source container and the leftmost coordinate you    want to start tranferring the source image, and&lt;/font&gt;        &lt;/li&gt;&lt;li&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;ySrc&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; sets the distance between the internal top    edge of the source container and the topmost coordinate you want    to start transferring the source image.&lt;/font&gt; &lt;/li&gt;&lt;/ul&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;Also remember that xSrc and ySrc are measured in &lt;/font&gt;&lt;b&gt;&lt;font color="#af0000" face="Arial" size="-1"&gt;PIXELS&lt;/font&gt;&lt;/b&gt;&lt;font face="Arial" size="-1"&gt;!!&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;Now, the next two parameters of the function that we should look at is &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;nWidth&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; and &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;nHeight&lt;/font&gt;&lt;font face="Arial" size="-1"&gt;. Take a look at the following :&lt;/font&gt;&lt;/p&gt;  &lt;center&gt;&lt;b&gt;&lt;font color="#800080" face="Arial" size="-1"&gt;Listing 1.6&lt;/font&gt;&lt;/b&gt;&lt;font color="#800080" face="Arial" size="-1"&gt; BitBlt.bas &lt;/font&gt;&lt;font face="Arial" size="-1"&gt;- A snippet of the BitBlt API declaration &lt;/font&gt;&lt;table bgcolor="#c0c0c0" border="0" width="90%"&gt;    &lt;tbody&gt;&lt;tr&gt;       &lt;td&gt;          &lt;blockquote&gt;&lt;p&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;&lt;br /&gt;                   ByVal&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; nWidth          &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;As          Long&lt;/font&gt;&lt;font face="Arial" size="-1"&gt;, _&lt;br /&gt;                   &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;..&lt;br /&gt;                   ByVal&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; nHeight          &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;As          Long&lt;/font&gt;&lt;font face="Arial" size="-1"&gt;, _&lt;/font&gt;          &lt;/p&gt;&lt;/blockquote&gt;       &lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;&lt;/center&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;As said many times earlier, BitBlt transfers a &lt;/font&gt;&lt;b&gt;&lt;font face="Arial" size="-1"&gt;rectangular&lt;/font&gt;&lt;/b&gt;&lt;font face="Arial" size="-1"&gt; source image to a destination. The height and width of the rectangle is set with these two parameters. The values that you pass to these parameters should be measured in &lt;/font&gt;&lt;b&gt;&lt;font color="#af0000" face="Arial" size="-1"&gt;pixels&lt;/font&gt;&lt;/b&gt;&lt;font face="Arial" size="-1"&gt;, again ;o) ... As you may now have figured out, pixels is the unit of measurement used with BitBlt, and generally speaking the unit of measurement used in API functions. To play it safe, set your source and destination object's &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;ScaleMode&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; properties to &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;3 - Pixels&lt;/font&gt;&lt;font face="Arial" size="-1"&gt;, but often this may end up confusing (or not possible) and may not be desired. A common question is &lt;/font&gt;&lt;i&gt;&lt;font color="#575700" face="Arial" size="-1"&gt;how do I convert a value measured in twips to it's value measured in pixels?&lt;/font&gt;&lt;/i&gt;&lt;font face="Arial" size="-1"&gt; ... Maybe we should once again, take a &lt;/font&gt;&lt;i&gt;&lt;font face="Arial" size="-1"&gt;timeout&lt;/font&gt;&lt;/i&gt;&lt;font face="Arial" size="-1"&gt; and look at the &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;Screen&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; object and it's properties!&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;In the last paragraph, I stated that it may not be possible to change the ScaleMode property of an object -- I was refering to the &lt;/font&gt;&lt;i&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;Screen&lt;/font&gt;&lt;/i&gt;&lt;font face="Arial" size="-1"&gt; object. Consider this - say you wanted to copy a portion of the desktop image and apply some cool affects to it using BitBlt -- for example, you wanted to grab the portion of the desktop's image (specifically; the area around a form in a project you are running) and paint it to your current form to make it appear transparent (see &lt;/font&gt;&lt;font face="Arial" size="-1"&gt;&lt;a href="http://www.geocities.com/SiliconValley/Park/6981/vbworkshop.htm%22%20%20Target=%22_Top"&gt;Source Code&lt;/a&gt;&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; examples) or better yet apply some animation so it looks like it explodes!! }:o) -- you cannot use the form's .top and .left properties alone (to findout it's dynamic position) as their values are returned measured in twips! .... You must convert their values to pixels to attain the desired result.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;The &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;Screen&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; object has properties that can be used to convert values measured in twips to their equivalent pixel value. The two properties in question are Screen.TwipsPerPixelX and Screen.TwipsPerPixelY. These properties return the number of Twips that can fit into one pixel horizontally and vertically, respectively, taking into account the current resolution. To convert a value measured in twips into pixels - divide the twips value by the value returned by Screen.TwipsPerPixel_ or to convert a value measured in pixels to twips simply multiply that value by TwipsPerPixel_ . Here's an example of converting a form's &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;Left&lt;/font&gt;&lt;font face="Arial" size="-1"&gt;most coordinate from twips to pixel using integer division:&lt;/font&gt;&lt;/p&gt;  &lt;center&gt;&lt;table bgcolor="#800080" border="0" width="90%"&gt;    &lt;tbody&gt;&lt;tr&gt;       &lt;td&gt;          &lt;blockquote&gt;&lt;p&gt;&lt;b&gt;&lt;font color="#ffffff" face="Arial" size="-1"&gt;Dim&lt;/font&gt;&lt;/b&gt;&lt;font color="#ffffff" face="Arial" size="-1"&gt; lngLeft&lt;/font&gt;&lt;b&gt;&lt;font color="#ffffff" face="Arial" size="-1"&gt; As Long&lt;/font&gt;&lt;/b&gt;&lt;/p&gt;                    &lt;p&gt;&lt;font color="#ffffff" face="Arial" size="-1"&gt;LngLeft =          Form1.Left \ Screen.TwipsPerPixelsX&lt;/font&gt;&lt;/p&gt;&lt;/blockquote&gt;       &lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;&lt;/center&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;Ok! -- You should be able to know how to define a rectangular portion of a source image and know whereabout's on a destination object you want it transferred (whether you're using Twips or Pixels as the ScaleMode). Further, you should be able to understand how to let the Operating System know where to find both the source and destination objects!&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;Throughout this tutorial so far I've said that BitBlt transfers pixels from a source image to a destination. BitBlt allows you to transfer those pixels to your destination in a number of different ways. You have control over this by choosing which Raster Operation should be applied when transfer (or merging the source image with existing images in the destination) and this is done by passing a value into the last parameter in the function. Take a &lt;/font&gt;&lt;font face="Arial" size="-1"&gt;&lt;a href="http://www.vbexplorer.com/VBExplorer/library/bitbltprimer.asp#rop"&gt;look at&lt;/a&gt;&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; the following parameter :&lt;/font&gt;&lt;/p&gt;  &lt;center&gt;&lt;b&gt;&lt;font color="#800080" face="Arial" size="-1"&gt;Listing 1.7&lt;/font&gt;&lt;/b&gt;&lt;font color="#800080" face="Arial" size="-1"&gt; BitBlt.bas &lt;/font&gt;&lt;font face="Arial" size="-1"&gt;- A snippet of the BitBlt API declaration &lt;/font&gt;&lt;table bgcolor="#c0c0c0" border="0" width="90%"&gt;    &lt;tbody&gt;&lt;tr&gt;       &lt;td&gt;          &lt;blockquote&gt;&lt;p&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;&lt;br /&gt;                   ByVal&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; dwRop &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;As &lt;/font&gt;&lt;font face="Arial" size="-1"&gt;RasterOps _&lt;br /&gt;                   &lt;/font&gt;&lt;/p&gt;&lt;/blockquote&gt;       &lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;&lt;/center&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;The first thing to take for granted here is that the information that is stored in a pixel (the colour of it) is stored as a numerical value (let's not get too technical to start off here). The BitBlt operation under Windows is not limited to a simple &lt;/font&gt;&lt;i&gt;&lt;font face="Arial" size="-1"&gt;copying&lt;/font&gt;&lt;/i&gt;&lt;font face="Arial" size="-1"&gt; of an image to a destination, it also allows you to perform mathematical and logical operations on a source image and it's destination.  The effects you can create (transparency, inverted colours) can be calculated if you understand the Raster Operations that are supported by BitBlt.  But in understanding the raster operations it is a good idea to understand what OR, AND, NOT and XOR operations do to binary data.  Before going any further into RasterOps, maybe a short lesson / recap in Boolean Algebra!??&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;i&gt;&lt;font color="#800080" size="+2"&gt;Boolean what!?!&lt;/font&gt;&lt;/i&gt;&lt;/p&gt;  &lt;p&gt;&lt;i&gt;&lt;font face="Arial" size="-1"&gt;Boolean Algebra ;o)&lt;/font&gt;&lt;/i&gt;&lt;font face="Arial" size="-1"&gt; - Some background in it's uses may be in order first of all! -- It's pretty much common knowledge that computers, in it's most basic form, used to / still run on information transfered in Binary Language ... When you think of this mechanically we talk of switches ... The most basic switch has two states, On and Off, this in Binary language this is 1 and 0. Some machines which use this logic to perform tasks, can perform a wide number of operations - some of which may be as simple as: if a user hits either the Escape key (a Switch) or the F10 key (another Switch) perform the Quitting sequence ... In VB this is written like this :&lt;/font&gt;&lt;/p&gt;  &lt;center&gt;&lt;table bgcolor="#c0c0c0" border="0" width="90%"&gt;    &lt;tbody&gt;&lt;tr&gt;       &lt;td width="20"&gt;          &lt;p&gt;       &lt;/p&gt;&lt;br /&gt;&lt;/td&gt;&lt;td colspan="2" width="283"&gt;          &lt;p&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;Dim&lt;/font&gt;&lt;font face="Arial" size="-1"&gt;          bEscapeKey &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;As Boolean&lt;br /&gt;                   Dim&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; bF10Key &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;As Boolean&lt;br /&gt;                   &lt;/font&gt;       &lt;/p&gt;&lt;/td&gt;&lt;td&gt;          &lt;p&gt;&lt;font color="#008000" face="Arial" size="-1"&gt;'Esc Key          Flag&lt;br /&gt;                   'F10 Key Flag&lt;/font&gt;       &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td width="20"&gt;          &lt;p&gt;       &lt;/p&gt;&lt;br /&gt;&lt;/td&gt;&lt;td colspan="2" width="283"&gt;          &lt;p&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;If&lt;/font&gt;&lt;font face="Arial" size="-1"&gt;          bEscapeKey &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;= True OR&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; bF10Key = &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;True then&lt;/font&gt;       &lt;/p&gt;&lt;/td&gt;&lt;td&gt;          &lt;p&gt;       &lt;/p&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td width="20"&gt;          &lt;p&gt;       &lt;/p&gt;&lt;br /&gt;&lt;/td&gt;&lt;td width="20"&gt;          &lt;p&gt;       &lt;/p&gt;&lt;br /&gt;&lt;/td&gt;&lt;td width="263"&gt;          &lt;p&gt;&lt;font color="#008000" face="Arial" size="-1"&gt;'Either Esc          key or F10 key was depressed&lt;br /&gt;                   &lt;/font&gt;&lt;font face="Arial" size="-1"&gt;Unload Object&lt;/font&gt;       &lt;/p&gt;&lt;/td&gt;&lt;td&gt;          &lt;p&gt;       &lt;/p&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td width="20"&gt;          &lt;p&gt;       &lt;/p&gt;&lt;br /&gt;&lt;/td&gt;&lt;td colspan="2" width="283"&gt;          &lt;p&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;End          If&lt;/font&gt;       &lt;/p&gt;&lt;/td&gt;&lt;td&gt;          &lt;p&gt;       &lt;/p&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;&lt;/center&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;Linking it back to boolean algebra this translates as the following :&lt;/font&gt;&lt;/p&gt;  &lt;center&gt;&lt;table bgcolor="#c0c0c0" border="0" width="90%"&gt;    &lt;tbody&gt;&lt;tr&gt;       &lt;td&gt;          &lt;blockquote&gt;&lt;p&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;&lt;br /&gt;                   &lt;/font&gt;&lt;font face="Arial" size="-1"&gt;bEscapeKey &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;+&lt;/font&gt;&lt;font face="Arial" size="-1"&gt; bF10Key = &lt;/font&gt;&lt;font color="#af0000" face="Arial" size="-1"&gt;Result (either 0 or 1)&lt;/font&gt;          &lt;/p&gt;&lt;/blockquote&gt;       &lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;&lt;/center&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;The above boolean expression has the following possibilities (expressed using binary values) :&lt;/font&gt;&lt;/p&gt;  &lt;center&gt;&lt;table bgcolor="#c0c0c0" border="0" width="90%"&gt;    &lt;tbody&gt;&lt;tr&gt;       &lt;td valign="top"&gt;          &lt;center&gt;&lt;font color="#400000" face="Arial" size="-1"&gt;bEscapeKey&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;+&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font color="#400000" face="Arial" size="-1"&gt;bF10Key&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;=&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font color="#400000" face="Arial" size="-1"&gt;Result&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td&gt;          &lt;p&gt;       &lt;/p&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;+&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;=&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;p&gt;&lt;i&gt;&lt;font face="Arial" size="-1"&gt;(Do not run sequence as          No key was depressed)&lt;/font&gt;&lt;/i&gt;       &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;1&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;+&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;=&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;1&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;p&gt;&lt;i&gt;&lt;font face="Arial" size="-1"&gt;(Run Quit sequence as ESC          Key was depressed)&lt;/font&gt;&lt;/i&gt;       &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;+&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;1&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;=&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;1&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;p&gt;&lt;i&gt;&lt;font face="Arial" size="-1"&gt;(Run Quit sequence as F10          Key was depressed)&lt;/font&gt;&lt;/i&gt;       &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;1&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;+&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;1&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;=&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;1&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;p&gt;&lt;i&gt;&lt;font face="Arial" size="-1"&gt;(Run Quit sequence as          Both Keys were depressed)&lt;/font&gt;&lt;/i&gt;       &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td colspan="6" valign="top"&gt;          &lt;p&gt;&lt;font face="Arial" size="-1"&gt;.... as you can see the plus          symbol is a little misleading and that's why OR is often          used in it's place&lt;/font&gt;       &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;&lt;/center&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;That was just an example of the &lt;/font&gt;&lt;b&gt;&lt;font color="#af0000" face="Arial"&gt;OR operator&lt;/font&gt;&lt;/b&gt;&lt;font face="Arial" size="-1"&gt; -- it speaks for itself really ... if Switch1 OR Switch2 is &lt;/font&gt;&lt;i&gt;&lt;font face="Arial" size="-1"&gt;True&lt;/font&gt;&lt;/i&gt;&lt;font face="Arial" size="-1"&gt; then the Result will be &lt;/font&gt;&lt;i&gt;&lt;font face="Arial" size="-1"&gt;True&lt;/font&gt;&lt;/i&gt;&lt;font face="Arial" size="-1"&gt;. &lt;/font&gt; &lt;/p&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;Another commonly used operation in boolean algebra is the &lt;/font&gt;&lt;b&gt;&lt;font color="#af0000" face="Arial"&gt;AND operation&lt;/font&gt;&lt;/b&gt;&lt;font face="Arial" size="-1"&gt;. This operation also speaks for itself. Take the following scenario for instance ... if the CTRL Key AND the ALT Key AND the DELETE Key is pressed at the same time Quit! -- In Visual Basic this is written like this :&lt;/font&gt;&lt;/p&gt;  &lt;center&gt;&lt;table bgcolor="#c0c0c0" border="0" width="90%"&gt;    &lt;tbody&gt;&lt;tr&gt;       &lt;td&gt;          &lt;blockquote&gt;&lt;pre&gt;&lt;font color="#0000af" face="courier"&gt;&lt;br /&gt;dim&lt;/font&gt;&lt;font face="courier"&gt; bCtrlKey &lt;/font&gt;&lt;font color="#0000af" face="courier"&gt;As Boolean &lt;/font&gt;&lt;font color="#008000" face="courier"&gt;    'CTRL Key Flag&lt;/font&gt;&lt;font color="#0000af" face="courier"&gt;&lt;br /&gt;dim&lt;/font&gt;&lt;font face="courier"&gt; bAltKey &lt;/font&gt;&lt;font color="#0000af" face="courier"&gt;As Boolean &lt;/font&gt;&lt;font color="#008000" face="courier"&gt;     'ALT Key Flag&lt;/font&gt;&lt;font color="#0000af" face="courier"&gt;&lt;br /&gt;dim&lt;/font&gt;&lt;font face="courier"&gt; bDelKey &lt;/font&gt;&lt;font color="#0000af" face="courier"&gt;As Boolean &lt;/font&gt;&lt;font color="#008000" face="courier"&gt;     'DELETE Key Flag&lt;br /&gt; &lt;/font&gt;&lt;font color="#0000af" face="courier"&gt;&lt;br /&gt;     if&lt;/font&gt;&lt;font face="courier"&gt; bCtrlKey &lt;/font&gt;&lt;font color="#0000af" face="courier"&gt;= True AND&lt;/font&gt;&lt;font face="courier"&gt; _&lt;br /&gt;        bAltKey = &lt;/font&gt;&lt;font color="#0000af" face="courier"&gt;True  AND _&lt;/font&gt;&lt;font face="courier"&gt;&lt;br /&gt;        bDelKey =&lt;/font&gt;&lt;font color="#0000af" face="courier"&gt; True then&lt;br /&gt;      &lt;/font&gt;&lt;font color="#008000" face="courier"&gt;    'CTRL &amp;amp; ALT &amp;amp; DEL keys were depressed&lt;/font&gt;&lt;font face="courier"&gt;&lt;br /&gt;          unload object&lt;/font&gt;&lt;font color="#0000af" face="courier"&gt;&lt;br /&gt;     end if&lt;/font&gt;&lt;/pre&gt;&lt;/blockquote&gt;       &lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;&lt;/center&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;Linking it back to boolean algebra this translates as the following :&lt;/font&gt;&lt;/p&gt;  &lt;center&gt;&lt;table bgcolor="#c0c0c0" border="0" width="90%"&gt;    &lt;tbody&gt;&lt;tr&gt;       &lt;td&gt;          &lt;blockquote&gt;&lt;p&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;&lt;br /&gt;                   &lt;/font&gt;&lt;font face="courier" size="-1"&gt;bCtrlKey          &lt;/font&gt;&lt;b&gt;&lt;font color="#400000"&gt;.&lt;/font&gt;&lt;/b&gt;&lt;font face="courier" size="-1"&gt; bAltKey &lt;/font&gt;&lt;b&gt;&lt;font color="#400000"&gt;.&lt;/font&gt;&lt;/b&gt;&lt;font face="courier" size="-1"&gt;          bDelKey = &lt;/font&gt;&lt;font color="#af0000" face="courier" size="-1"&gt;Result&lt;/font&gt;&lt;font color="#af0000" face="Arial" size="-1"&gt; (either 0 or 1)&lt;/font&gt;&lt;/p&gt;&lt;/blockquote&gt;       &lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;&lt;/center&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;The above boolean expression has the following possibilities (expressed using binary values) :&lt;/font&gt;&lt;/p&gt;  &lt;center&gt;&lt;table bgcolor="#c0c0c0" border="0" width="90%"&gt;    &lt;tbody&gt;&lt;tr&gt;       &lt;td valign="top"&gt;          &lt;center&gt;&lt;font color="#400000" face="Arial" size="-1"&gt;bCtrlKey&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;b&gt;&lt;font color="#400000"&gt;.&lt;/font&gt;&lt;/b&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font color="#400000" face="Arial" size="-1"&gt;bAltKey&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;b&gt;&lt;font color="#400000"&gt;.&lt;/font&gt;&lt;/b&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font color="#400000" face="Arial" size="-1"&gt;bDelKey&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td&gt;          &lt;center&gt;&lt;font color="#400000" face="Arial" size="-1"&gt;=&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font color="#400000" face="Arial" size="-1"&gt;Result&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td&gt;          &lt;p&gt;       &lt;/p&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;b&gt;&lt;font color="#400000"&gt;.&lt;/font&gt;&lt;/b&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;b&gt;&lt;font color="#400000"&gt;.&lt;/font&gt;&lt;/b&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;=&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;p&gt;&lt;i&gt;&lt;font face="Arial" size="-1"&gt;(Do not run sequence as          No key was depressed)&lt;/font&gt;&lt;/i&gt;       &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;1&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;b&gt;&lt;font color="#400000"&gt;.&lt;/font&gt;&lt;/b&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;b&gt;&lt;font color="#400000"&gt;.&lt;/font&gt;&lt;/b&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;=&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td rowspan="3"&gt;          &lt;p&gt;&lt;i&gt;&lt;font face="Arial" size="-1"&gt;(Do not run Quit sequence          as only one key was depressed)&lt;/font&gt;&lt;/i&gt;       &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;b&gt;&lt;font color="#400000"&gt;.&lt;/font&gt;&lt;/b&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;1&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;b&gt;&lt;font color="#400000"&gt;.&lt;/font&gt;&lt;/b&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;=&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;b&gt;&lt;font color="#400000"&gt;.&lt;/font&gt;&lt;/b&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;b&gt;&lt;font color="#400000"&gt;.&lt;/font&gt;&lt;/b&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;1&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;=&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;1&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;b&gt;&lt;font color="#400000"&gt;.&lt;/font&gt;&lt;/b&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;1&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;b&gt;&lt;font color="#400000"&gt;.&lt;/font&gt;&lt;/b&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;=&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td rowspan="3"&gt;          &lt;p&gt;&lt;i&gt;&lt;font face="Arial" size="-1"&gt;(Do not run Quit sequence          as only two Keys were depressed)&lt;/font&gt;&lt;/i&gt;       &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;1&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;b&gt;&lt;font color="#400000"&gt;.&lt;/font&gt;&lt;/b&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;b&gt;&lt;font color="#400000"&gt;.&lt;/font&gt;&lt;/b&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;1&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;=&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;b&gt;&lt;font color="#400000"&gt;.&lt;/font&gt;&lt;/b&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;1&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;b&gt;&lt;font color="#400000"&gt;.&lt;/font&gt;&lt;/b&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;1&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;=&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;1&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;b&gt;&lt;font color="#400000"&gt;.&lt;/font&gt;&lt;/b&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;1&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;b&gt;&lt;font color="#400000"&gt;.&lt;/font&gt;&lt;/b&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;1&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;=&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;1&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;p&gt;&lt;i&gt;&lt;font face="Arial" size="-1"&gt;(Run Quit sequence as all          three Keys were depressed)&lt;/font&gt;&lt;/i&gt;       &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td colspan="8" valign="top"&gt;          &lt;p&gt;&lt;font color="#575700" face="Arial" size="-1"&gt;.... as you          can see the multiplication symbol (&lt;/font&gt;&lt;b&gt;&lt;font color="#400000"&gt;.&lt;/font&gt;&lt;/b&gt;&lt;font color="#575700" face="Arial" size="-1"&gt;) is a little misleading and that's why AND          is often used in it's place&lt;/font&gt;       &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;&lt;/center&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;To keep it simple -- the AND operation only returns true if all it's variables are true, ie, &lt;/font&gt;&lt;i&gt;&lt;font face="Arial" size="-1"&gt;Switch1 AND Switch2 AND .. SwitchN = True&lt;/font&gt;&lt;/i&gt;&lt;font face="Arial" size="-1"&gt;.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;The &lt;/font&gt;&lt;b&gt;&lt;font color="#af0000" face="Arial"&gt;NOT operation&lt;/font&gt;&lt;/b&gt;&lt;font face="Arial" size="-1"&gt; is alot simpler ... it basically inverts the value of a bit. Take this example for instance : As the result of another operation you want to invert the status of an indicator light from on to off, or off to on - inverting the current status of the light.  In VB you may write something like this:&lt;/font&gt;&lt;/p&gt;  &lt;center&gt;&lt;font face="Arial" size="-1"&gt;&lt;table bgcolor="#c0c0c0" border="0" width="90%"&gt;    &lt;tbody&gt;&lt;tr&gt;       &lt;td valign="top" width="241"&gt;          &lt;blockquote&gt;&lt;p&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;Dim&lt;/font&gt;&lt;font face="Arial" size="-1"&gt;          bLight &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;As Boolean&lt;/font&gt;&lt;/p&gt;&lt;/blockquote&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;p&gt;&lt;font color="#008000" face="Arial" size="-1"&gt;' Status          light flag.&lt;/font&gt;       &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td width="241"&gt;          &lt;blockquote&gt;&lt;p&gt;&lt;font face="Arial" size="-1"&gt;bLight =          &lt;/font&gt;&lt;font color="#0000af" face="Arial" size="-1"&gt;Not&lt;/font&gt;&lt;font face="Arial" size="-1"&gt;(bLight)&lt;/font&gt;&lt;/p&gt;&lt;/blockquote&gt;       &lt;/td&gt;&lt;td&gt;          &lt;p&gt;       &lt;/p&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;&lt;/font&gt;&lt;/center&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;Linking it back to boolean algebra this translates as the following. Read it from right to left as in the above equations, ie, the result is a consequence of the logic&lt;/font&gt;&lt;i&gt;&lt;font face="Arial" size="-1"&gt; to the left&lt;/font&gt;&lt;/i&gt;&lt;font face="Arial" size="-1"&gt; of the equal sign:&lt;/font&gt;&lt;/p&gt;  &lt;center&gt;&lt;font face="Arial" size="-1"&gt;&lt;table bgcolor="#c0c0c0" border="0" width="90%"&gt;    &lt;tbody&gt;&lt;tr&gt;       &lt;td&gt;          &lt;blockquote&gt;&lt;p&gt;&lt;font face="Arial" size="-1"&gt;_____&lt;br /&gt;                   bLight = bLight&lt;/font&gt;&lt;/p&gt;&lt;/blockquote&gt;       &lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;&lt;/font&gt;&lt;/center&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;The above boolean expression has the following possibilities (expressed using binary values) :&lt;/font&gt;&lt;/p&gt;  &lt;center&gt;&lt;font face="Arial" size="-1"&gt;&lt;table bgcolor="#c0c0c0" border="0" width="90%"&gt;    &lt;tbody&gt;&lt;tr&gt;       &lt;td valign="bottom"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;_____&lt;br /&gt;                   bLight&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="bottom"&gt;          &lt;center&gt;=&lt;/center&gt;       &lt;/td&gt;&lt;td valign="bottom"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;Result&lt;/font&gt;          &lt;/center&gt;       &lt;/td&gt;&lt;td&gt;          &lt;p&gt;       &lt;/p&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td&gt;          &lt;center&gt;&lt;font color="#575700" face="Arial" size="-1"&gt;1&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td&gt;          &lt;center&gt;&lt;font color="#575700" face="Arial" size="-1"&gt;=&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td&gt;          &lt;center&gt;&lt;font color="#575700" face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td&gt;          &lt;p&gt;&lt;i&gt;&lt;font face="Arial" size="-1"&gt;(Variable results as          being inverted - in binary)&lt;/font&gt;&lt;/i&gt;       &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td&gt;          &lt;center&gt;&lt;font color="#575700" face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td&gt;          &lt;center&gt;&lt;font color="#575700" face="Arial" size="-1"&gt;=&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td&gt;          &lt;center&gt;&lt;font color="#575700" face="Arial" size="-1"&gt;1&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td&gt;          &lt;p&gt;&lt;i&gt;&lt;font face="Arial" size="-1"&gt;(Variable results as          being inverted - in binary)&lt;/font&gt;&lt;/i&gt;       &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td colspan="4"&gt;          &lt;p&gt;&lt;font color="#575700" face="Arial" size="-1"&gt;.... as you          can see the overline symbol is weird! and that's why NOT is          often used in it's place&lt;/font&gt;       &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;&lt;/font&gt;&lt;/center&gt;  &lt;pre&gt;&lt;font face="Arial" size="-1"&gt; &lt;/font&gt;&lt;/pre&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;The last of the Boolean Operations that you will probably need to understand will be the &lt;/font&gt;&lt;b&gt;&lt;font color="#af0000" face="Arial"&gt;XOR operation&lt;/font&gt;&lt;/b&gt;&lt;font face="Arial" size="-1"&gt; (Exclusive OR operation) -- This one will be alittle tricky as it is a combination of NOT, AND, and OR operations all wrapped up into one!! The way it works is pretty much best left unexplained, it sooo much easier to remember the results than explain how the results are achieved.  But! if you're curious send me an e-mail and I'll explain it as best I can, warning though, I'll explain it using circuit diagrams! ;o) .... The only important thing to remember will be that it requires two variables to give a result .. For now I'll just provide the lookup table:&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;The following boolean expression has the following possibilities (expressed using binary values) :&lt;/font&gt; &lt;/p&gt;  &lt;center&gt;&lt;table bgcolor="#c0c0c0" border="0" width="90%"&gt;    &lt;tbody&gt;&lt;tr&gt;       &lt;td valign="top"&gt;          &lt;center&gt;&lt;font color="#400000" face="Arial" size="-1"&gt;Switch1&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font color="#400000" face="symbol" size="-1"&gt;Å&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font color="#400000" face="Arial" size="-1"&gt;Switch2&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;=&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font color="#400000" face="Arial" size="-1"&gt;Result&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td&gt;          &lt;p&gt;       &lt;/p&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font color="#400000" face="symbol" size="-1"&gt;Å&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;=&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;p&gt;&lt;i&gt;&lt;font face="Arial" size="-1"&gt;(Result is          false)&lt;/font&gt;&lt;/i&gt;       &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;1&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font color="#400000" face="symbol" size="-1"&gt;Å&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;=&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;1&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;p&gt;&lt;i&gt;&lt;font face="Arial" size="-1"&gt;(Result is          true)&lt;/font&gt;&lt;/i&gt;       &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font color="#400000" face="symbol" size="-1"&gt;Å&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;1&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;=&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;1&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;p&gt;&lt;i&gt;&lt;font face="Arial" size="-1"&gt;(Result is          true)&lt;/font&gt;&lt;/i&gt;       &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;1&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font color="#400000" face="symbol" size="-1"&gt;Å&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;1&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;=&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;center&gt;&lt;font face="Arial" size="-1"&gt;0&lt;/font&gt;&lt;/center&gt;       &lt;/td&gt;&lt;td valign="top"&gt;          &lt;p&gt;&lt;i&gt;&lt;font face="Arial" size="-1"&gt;(Result is          false)&lt;/font&gt;&lt;/i&gt;       &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;    &lt;tr&gt;       &lt;td colspan="6" valign="top"&gt;          &lt;p&gt;&lt;font color="#575700" face="Arial" size="-1"&gt;.... as you          can see the EX-OR symbol is a little misleading and that's          why XOR is often used in it's place&lt;/font&gt;       &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;&lt;/center&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;Basically this operation only returns true if only one of the switches are on ... Remember this and that's all it is to it! Now, if you've gotten through the Boolean Algebra unscaved then let's go back to the Raster Operations of the BitBlt API. &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;i&gt;&lt;font color="#800080" size="+2"&gt;RasterOps!!&lt;/font&gt;&lt;/i&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;BitBlt allows you to transfer (merge, combine) source pixels to a destination .. more accurately, it performs this task by transferring the image data from one location to another.  The Raster Operation parameter allows you to manipulate how the data is transferred.  Lets take a look at the common raster operations and see what the results yield (incorporating what we've seen with Boolean Algebra expressions) ...&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;code&gt;&lt;font color="#008000" face="Arial" size="-1"&gt;     ' &lt;/font&gt;&lt;font face="Arial" size="-1"&gt;SRCCOPY&lt;/font&gt;&lt;font color="#008000" face="Arial" size="-1"&gt; ........ Copies the source bmp to the destination .bmp&lt;br /&gt;      ' &lt;/font&gt;&lt;font face="Arial" size="-1"&gt;SRCAND&lt;/font&gt;&lt;font color="#008000" face="Arial" size="-1"&gt; ......... Combines source bmp and dest. bmp using AND operator&lt;br /&gt;      ' &lt;/font&gt;&lt;font face="Arial" size="-1"&gt;SRCINVERT&lt;/font&gt;&lt;font color="#008000" face="Arial" size="-1"&gt; ...... Combines source bmp and dest. bmp using XOR operator&lt;br /&gt;      ' &lt;/font&gt;&lt;font face="Arial" size="-1"&gt;SRCPAINT&lt;/font&gt;&lt;font color="#008000" face="Arial" size="-1"&gt; ....... Combines source bmp and dest. bmp using OR operator&lt;/font&gt;&lt;/code&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;SRCCopy is simple.  It doesn't use boolean operations on the image data.  It transfers a copy of the image data to the destination.  It's the others we really want to look at.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;Now, consider this example: that the value of the colour WHITE is 1,1,1 (RGB: 11111111, 11111111, 11111111) and the value of colour BLACK is 0,0,0 (RGB: 00000000, 00000000, 00000000).&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;If a source pixel's colour is WHITE (1) and the destination pixel already has a value of 0 - BLACK performing the following Raster Operations will give you the following results :&lt;/font&gt;&lt;/p&gt;  &lt;ul&gt;&lt;li&gt;&lt;font face="Arial" size="-1"&gt;SRCCOPY: Destination Pixel will be WHITE.&lt;/font&gt;    &lt;/li&gt;&lt;li&gt;&lt;font face="Arial" size="-1"&gt;SRCAND: Destination Pixel will be BLACK.&lt;/font&gt;       &lt;/li&gt;&lt;li&gt;&lt;font face="Arial" size="-1"&gt;SRCINVERT: Destination Pixel will be WHITE.&lt;/font&gt;       &lt;/li&gt;&lt;li&gt;&lt;font face="Arial" size="-1"&gt;SRCPAINT: Destination Pixel will be WHITE.&lt;/font&gt;       &lt;/li&gt;&lt;li&gt;&lt;font face="Arial" size="-1"&gt;and so on, and so on, check out the tables above!&lt;/font&gt; &lt;/li&gt;&lt;/ul&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;Interesting eh? ;o) .... Now, what good is all this?  Checkout some of my other tuts, including Transparency using Bitblt :o), they're too long to get into for this primer.  On your own, try creating something like a progress bar out of two PictureBoxes. Start with something simple like, inverting the existing colour in the destination PictureBox, or something groovy like that!&lt;/font&gt;&lt;/p&gt;  &lt;!-- &lt;p&gt;&lt;font size="+2" color="#800080"&gt;&lt;i&gt;About PaintPicture&lt;/i&gt;&lt;/font&gt;&lt;br /&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="-1" face="Arial"&gt; Some things I won't go into will obviously will be speed. BitBlt has lots of it compared to Object.PaintPicture -- I haven't got any benchmarks at hand but take my word for it. The way that Object.PaintPicture refreshes the destination everytime it's called doesn't allow for &lt;/font&gt;&lt;i&gt;&lt;font size="-1" face="Arial"&gt;speedy&lt;/font&gt;&lt;/i&gt;&lt;font size="-1" face="Arial"&gt; graphics work. &lt;/font&gt;&lt;/p&gt; --&gt;  &lt;p&gt;&lt;font color="#800080" size="+2"&gt;&lt;i&gt;Let's sum it up!&lt;/i&gt;&lt;/font&gt;&lt;br /&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt;To use BitBlt API to copy from a picSource to picDestination: &lt;/font&gt;&lt;/p&gt;&lt;ul&gt;&lt;font face="Arial" size="-1"&gt;&lt;li&gt;You can set both PictureBoxes AutoRedraw properties set to True, and &lt;/li&gt;&lt;li&gt;the portion of picSource you want to Blt should be equal to or smaller than picDestination &lt;/li&gt;&lt;/font&gt;&lt;/ul&gt;  &lt;font face="Arial" size="-1"&gt;Remember that if you set both PictureBoxe's Scalemode properties to Twips you should convert the appropriate values.  Here's an example:&lt;/font&gt;  &lt;pre&gt;&lt;font color="#0000af" face="courier new"&gt;Call&lt;/font&gt;&lt;font face="courier"&gt; BitBlt(picDestination.hdc, _&lt;br /&gt;               0, _&lt;br /&gt;               0, _&lt;br /&gt;               picSource.ScaleWidth \ Screen.TwipsPerPixelX, _&lt;br /&gt;               picSource.ScaleHeight \ Screen.TwipsPerPixelY, _&lt;br /&gt;               picSource.hDC, _&lt;br /&gt;               0, _&lt;br /&gt;               0, _&lt;br /&gt;               SRCCOPY)&lt;/font&gt;&lt;/pre&gt;  &lt;p&gt;&lt;font face="Arial" size="-1"&gt; Now by calling the API function like this we're ignoring the return value of the function. The function will return zero if it fails.  That should finish it up! &lt;br /&gt;&lt;br /&gt;Simple as that! -- But now you know what it all means :o) If you want more information in the Tutorial, feel free to send comments or suggestions to me!&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font color="#800080" size="+2"&gt;&lt;i&gt;Michael Lambino&lt;/i&gt;&lt;/font&gt;&lt;br /&gt;ProSoft@the18th.com&lt;br /&gt;&lt;br /&gt;Copyright ©, 23 February, 1998 - Michael Lambino&lt;br /&gt;Freeware - Freely distributable unmodified. No costs may be charged whatsoever for the distribution of this tutorial,  in any form of media, without expressed permission from the author.  &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-1241179503341275896?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/1241179503341275896/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=1241179503341275896' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/1241179503341275896'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/1241179503341275896'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/01/bitblt-api.html' title='The BitBlt API'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-4278424458183419435</id><published>2008-01-28T12:19:00.001-08:00</published><updated>2008-01-28T12:19:51.438-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='visual basic'/><title type='text'>VB PacMan Tutorial</title><content type='html'>&lt;h3&gt;pacman.bas&lt;/h3&gt; &lt;span style="font-family:courier new;font-size:100%;"&gt;&lt;pre&gt;Declare Function BitBlt Lib "gdi32" (ByVal hDestDC As Long, ByVal X As Long, ByVal Y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal dwRop As Long) As Long&lt;br /&gt;Public Const SRCAND = &amp;amp;H8800C6  ' (DWORD) dest = source AND dest&lt;br /&gt;Public Const SRCCOPY = &amp;amp;HCC0020 ' (DWORD) dest = source&lt;br /&gt;Public Const SRCINVERT = &amp;amp;H660046       ' (DWORD) dest = source XOR dest&lt;br /&gt;&lt;br /&gt;Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As String, ByVal uFlags As Long) As Long&lt;br /&gt;&lt;br /&gt;Public Const dir_right = 0&lt;br /&gt;Public Const dir_down = 1&lt;br /&gt;Public Const dir_left = 2&lt;br /&gt;Public Const dir_up = 3&lt;br /&gt;&lt;br /&gt;Public Const mode_pacman_normal = 0&lt;br /&gt;Public Const mode_pacman_powerup = 1&lt;br /&gt;Public Const mode_ghost_wander = 2&lt;br /&gt;Public Const mode_ghost_attack = 3&lt;br /&gt;Public Const mode_ghost_escape = 4&lt;br /&gt;&lt;br /&gt;Public m_sound As Integer&lt;br /&gt;&lt;/pre&gt;&lt;/span&gt; &lt;p&gt; &lt;/p&gt;&lt;h3&gt;board.class&lt;/h3&gt; &lt;span style="font-family:courier new;font-size:100%;"&gt;&lt;pre&gt;'local variable(s) to hold property value(s)&lt;br /&gt;Private board_array(20, 20) As Integer&lt;br /&gt;Private num_pills As Integer&lt;br /&gt;&lt;br /&gt;Public Sub load_board(filename As String, pacman As Sprite, ghosts As Collection)&lt;br /&gt;'load the level off disk into the board_array&lt;br /&gt;Erase board_array&lt;br /&gt;For a% = 1 To ghosts.Count&lt;br /&gt;   ghosts.Remove (1)&lt;br /&gt;Next&lt;br /&gt;Y% = 1&lt;br /&gt;num_pills = 0&lt;br /&gt;If Dir$(filename) &lt;&gt; "" Then 'if the file exists&lt;br /&gt;   ff% = FreeFile&lt;br /&gt;   Open filename$ For Input As #ff%&lt;br /&gt;       While Not EOF(ff%)&lt;br /&gt;           Line Input #1, linein$&lt;br /&gt;           For X% = 1 To Len(linein$)&lt;br /&gt;               board_array(X%, Y%) = Asc(Mid$(linein$, X%, 1)) - 65 'subtract the letters&lt;br /&gt;               Select Case board_array(X%, Y%)&lt;br /&gt;                   Case 16, 17 'Q &amp;amp; R are pills&lt;br /&gt;                       num_pills = num_pills + 1&lt;br /&gt;                   Case 24 'Y = pacman&lt;br /&gt;                       pacman.X = X%&lt;br /&gt;                       pacman.Y = Y%&lt;br /&gt;                       pacman.pills_ate = 0&lt;br /&gt;                       pacman.mode = 0 'pacman=mode 0&lt;br /&gt;                       board_array(X%, Y%) = 0&lt;br /&gt;                   Case 25 'Z = ghost&lt;br /&gt;                       Dim ghost As Sprite&lt;br /&gt;                       Set ghost = New Sprite&lt;br /&gt;                       ghost.mode = mode_ghost_wander&lt;br /&gt;                       ghost.X = X%&lt;br /&gt;                       ghost.Y = Y%&lt;br /&gt;                       ghosts.Add ghost&lt;br /&gt;                       Set ghost = Nothing&lt;br /&gt;                       board_array(X%, Y%) = 0&lt;br /&gt;               End Select&lt;br /&gt;           Next&lt;br /&gt;           Y% = Y% + 1 'move to next line down&lt;br /&gt;       Wend&lt;br /&gt;   Close&lt;br /&gt;End If&lt;br /&gt;End Sub&lt;br /&gt;&lt;br /&gt;Public Sub drawcell(X As Integer, Y As Integer, dest_hdc As Long, sprite_hDC As Long)&lt;br /&gt;   u! = BitBlt(dest_hdc, (X% - 1) * 32, (Y% - 1) * 32, 32, 32, sprite_hDC, (board_array(X%, Y%) Mod 4) * 32, (board_array(X%, Y%) \ 4) * 32, SRCCOPY)&lt;br /&gt;End Sub&lt;br /&gt;&lt;br /&gt;Public Sub paint(dest_hdc As Long, source_hdc As Long) 'Picture)&lt;br /&gt;   'redraw the board on the specified image&lt;br /&gt;   For X% = 1 To 20&lt;br /&gt;       For Y% = 1 To 20&lt;br /&gt;           u! = BitBlt(destination, (X% - 1) * 32, (Y% - 1) * 32, 32, 32, Source, (board_array(X%, Y%) Mod 4) * 32, (board_array(X%, Y%) \ 4) * 32, SRCCOPY)&lt;br /&gt;       Next&lt;br /&gt;   Next&lt;br /&gt;End Sub&lt;br /&gt;&lt;br /&gt;Public Property Let value(ByVal X As Integer, ByVal Y As Integer, ByVal vData As Integer)&lt;br /&gt;'Syntax: board.value(x,y) = 5&lt;br /&gt;   board_array(X, Y) = vData&lt;br /&gt;End Property&lt;br /&gt;&lt;br /&gt;Public Property Get value(ByVal X As Integer, ByVal Y As Integer) As Integer&lt;br /&gt;'Syntax: Debug.Print board.value(x,y)&lt;br /&gt;   value = board_array(X, Y)&lt;br /&gt;End Property&lt;br /&gt;&lt;br /&gt;Public Property Get pills() As Integer&lt;br /&gt;   pills = num_pills&lt;br /&gt;End Property&lt;br /&gt;&lt;/pre&gt;&lt;/span&gt; &lt;p&gt; &lt;/p&gt;&lt;h3&gt;sprite.class&lt;/h3&gt;  &lt;pre&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;Private sp_mode As Integer&lt;br /&gt;Private sp_score As Integer&lt;br /&gt;Private sp_lives As Integer&lt;br /&gt;Private sp_pills_ate As Integer&lt;br /&gt;Private sp_anim As Integer&lt;br /&gt;Private sp_animx As Integer, sp_animy As Integer&lt;br /&gt;Private sp_x As Integer, sp_y As Integer&lt;br /&gt;Private sp_oldx As Integer, sp_oldy As Integer&lt;br /&gt;Private sp_direction As Integer&lt;br /&gt;Private sp_frame As Integer&lt;br /&gt;Private sp_powerup As Integer&lt;br /&gt;Private step_size As Integer&lt;br /&gt;&lt;br /&gt;Public Property Get pills_ate() As Integer&lt;br /&gt;   pills_ate = sp_pills_ate&lt;br /&gt;End Property&lt;br /&gt;&lt;br /&gt;Public Property Let pills_ate(ByVal vData As Integer)&lt;br /&gt;   sp_pills_ate = vData&lt;br /&gt;End Property&lt;br /&gt;&lt;br /&gt;Public Property Get pixelx() As Integer&lt;br /&gt;   pixelx = sp_oldx&lt;br /&gt;End Property&lt;br /&gt;&lt;br /&gt;Public Property Get pixely() As Integer&lt;br /&gt;   pixely = sp_oldy&lt;br /&gt;End Property&lt;br /&gt;&lt;br /&gt;Public Property Let score(ByVal vData As Integer)&lt;br /&gt;   sp_score = vData&lt;br /&gt;End Property&lt;br /&gt;&lt;br /&gt;Public Property Get score() As Integer&lt;br /&gt;   score = sp_score&lt;br /&gt;End Property&lt;br /&gt;&lt;br /&gt;Public Property Let lives(ByVal vData As Integer)&lt;br /&gt;   sp_lives = vData&lt;br /&gt;End Property&lt;br /&gt;&lt;br /&gt;Public Property Get lives() As Integer&lt;br /&gt;   lives = sp_lives&lt;br /&gt;End Property&lt;br /&gt;&lt;br /&gt;Public Property Let Y(ByVal vData As Integer)&lt;br /&gt;   sp_y = vData&lt;br /&gt;End Property&lt;br /&gt;&lt;br /&gt;Public Property Get Y() As Integer&lt;br /&gt;   Y = sp_y&lt;br /&gt;End Property&lt;br /&gt;&lt;br /&gt;Public Property Let X(ByVal vData As Integer)&lt;br /&gt;   sp_x = vData&lt;br /&gt;End Property&lt;br /&gt;&lt;br /&gt;Public Property Get X() As Integer&lt;br /&gt;   X = sp_x&lt;br /&gt;End Property&lt;br /&gt;&lt;br /&gt;Public Property Let mode(ByVal vData As Integer)&lt;br /&gt;   sp_mode = vData&lt;br /&gt;   sp_anim = 0&lt;br /&gt;   If sp_mode &lt;= mode_pacman_powerup Then 'pacman&lt;br /&gt;       step_size = 8&lt;br /&gt;   Else 'ghosts&lt;br /&gt;       step_size = 5&lt;br /&gt;   End If&lt;br /&gt;End Property&lt;br /&gt;&lt;br /&gt;Public Property Get mode() As Integer&lt;br /&gt;   mode = sp_mode&lt;br /&gt;End Property&lt;br /&gt;&lt;br /&gt;Public Sub movesprite(key As Integer, pacman_x As Integer, pacman_y As Integer, pacman_mode As Integer, brdtmp As Board, board_hDC As Long, sprite_hDC As Long)&lt;br /&gt;   Dim tmp_x As Integer, tmp_y As Integer, tmp_direction As Integer&lt;br /&gt;   If sp_anim &gt; 0 Then&lt;br /&gt;       'doing the smooth transition&lt;br /&gt;       If sp_anim * step_size &gt;= 30 Then&lt;br /&gt;           sp_anim = 0&lt;br /&gt;           Select Case sp_direction&lt;br /&gt;               Case dir_right: sp_x = sp_x + 1&lt;br /&gt;               Case dir_down:  sp_y = sp_y + 1&lt;br /&gt;               Case dir_left:  sp_x = sp_x - 1&lt;br /&gt;               Case dir_up:    sp_y = sp_y - 1&lt;br /&gt;           End Select&lt;br /&gt;       Else&lt;br /&gt;           sp_anim = sp_anim + 1&lt;br /&gt;       End If&lt;br /&gt;   Else&lt;br /&gt;       'reached a point on the map,&lt;br /&gt;       'ready to choose a new direction if appropriate&lt;br /&gt;       flag% = True&lt;br /&gt;       If sp_mode &lt;= mode_pacman_powerup Then 'pacman&lt;br /&gt;           Select Case key&lt;br /&gt;               Case vbKeyLeft&lt;br /&gt;                   tmp_x = sp_x - 1&lt;br /&gt;                   tmp_y = sp_y&lt;br /&gt;                   tmp_direction = 2&lt;br /&gt;               Case vbKeyRight&lt;br /&gt;                   tmp_x = sp_x + 1&lt;br /&gt;                   tmp_y = sp_y&lt;br /&gt;                   tmp_direction = 0&lt;br /&gt;               Case vbKeyUp&lt;br /&gt;                   tmp_x = sp_x&lt;br /&gt;                   tmp_y = sp_y - 1&lt;br /&gt;                   tmp_direction = 3&lt;br /&gt;               Case vbKeyDown&lt;br /&gt;                   tmp_x = sp_x&lt;br /&gt;                   tmp_y = sp_y + 1&lt;br /&gt;                   tmp_direction = 1&lt;br /&gt;               Case Else&lt;br /&gt;                   flag% = False&lt;br /&gt;           End Select&lt;br /&gt;           If flag% Then&lt;br /&gt;               Select Case brdtmp.value(tmp_x, tmp_y)&lt;br /&gt;                   Case 0, 18, 19 'floor&lt;br /&gt;                       sp_anim = 1&lt;br /&gt;                       sp_direction = tmp_direction&lt;br /&gt;                   Case 16 'pill&lt;br /&gt;                       sp_score = sp_score + 10&lt;br /&gt;                       sp_anim = 1&lt;br /&gt;                       sp_direction = tmp_direction&lt;br /&gt;                       brdtmp.value(tmp_x, tmp_y) = 18&lt;br /&gt;                       brdtmp.drawcell tmp_x, tmp_y, board_hDC, sprite_hDC&lt;br /&gt;                       sp_pills_ate = sp_pills_ate + 1&lt;br /&gt;                       If m_sound Then u! = sndPlaySound(App.Path &amp;amp; "\pacman1.wav", 1)&lt;br /&gt;                   Case 17 'powerup&lt;br /&gt;                       sp_score = sp_score + 40&lt;br /&gt;                       sp_mode = mode_pacman_powerup&lt;br /&gt;                       sp_anim = 1&lt;br /&gt;                       sp_direction = tmp_direction&lt;br /&gt;                       brdtmp.value(tmp_x, tmp_y) = 19&lt;br /&gt;                       brdtmp.drawcell tmp_x, tmp_y, board_hDC, sprite_hDC&lt;br /&gt;                       sp_pills_ate = sp_pills_ate + 1&lt;br /&gt;                       If m_sound Then u! = sndPlaySound(App.Path &amp;amp; "\pacman2.wav", 1)&lt;br /&gt;                       sp_powerup = 1&lt;br /&gt;               End Select&lt;br /&gt;           End If&lt;br /&gt;           If sp_powerup &gt; 0 Then&lt;br /&gt;               sp_powerup = sp_powerup + 1&lt;br /&gt;               If sp_powerup &gt; 10 Then&lt;br /&gt;                   sp_powerup = 0&lt;br /&gt;                   sp_mode = mode_pacman_normal&lt;br /&gt;               End If&lt;br /&gt;           End If&lt;br /&gt;       Else 'its a ghost&lt;br /&gt;           If pacman_mode = mode_pacman_powerup Then&lt;br /&gt;               'pacman has powered up, so runaway!&lt;br /&gt;               sp_mode = mode_ghost_escape&lt;br /&gt;               sp_powerup = 1&lt;br /&gt;           End If&lt;br /&gt;           If sp_mode &lt;&gt; mode_ghost_escape Then&lt;br /&gt;               'check for proximity of pacman&lt;br /&gt;               If Abs(sp_x - pacman_x) &lt; 6 And Abs(sp_y - pacman_y) &lt; 6 Then&lt;br /&gt;                   'pacman is close, so attack&lt;br /&gt;                   sp_mode = mode_ghost_attack&lt;br /&gt;               Else&lt;br /&gt;                   'pacman is far enough away to ignore&lt;br /&gt;                   sp_mode = mode_ghost_wander&lt;br /&gt;               End If&lt;br /&gt;           End If&lt;br /&gt;           tmp_x = sp_x&lt;br /&gt;           tmp_y = sp_y&lt;br /&gt;           Select Case sp_direction&lt;br /&gt;               Case dir_right: tmp_x = sp_x + 1&lt;br /&gt;               Case dir_down:  tmp_y = sp_y + 1&lt;br /&gt;               Case dir_left:  tmp_x = sp_x - 1&lt;br /&gt;               Case dir_up:    tmp_y = sp_y - 1&lt;br /&gt;           End Select&lt;br /&gt;           Select Case brdtmp.value(tmp_x, tmp_y)&lt;br /&gt;               Case 0, 16, 17, 18, 19 'floor&lt;br /&gt;                   If Int(Rnd(1) * 10) &lt; 8 Then&lt;br /&gt;                       '80% of the time continue in given direction&lt;br /&gt;                       sp_anim = 1&lt;br /&gt;                       newdirection% = False&lt;br /&gt;                   Else&lt;br /&gt;                       newdirection% = True&lt;br /&gt;                   End If&lt;br /&gt;               Case Else&lt;br /&gt;                   'choose new direction&lt;br /&gt;                   newdirection% = True&lt;br /&gt;           End Select&lt;br /&gt;           If newdirection% Then&lt;br /&gt;               If sp_mode = mode_ghost_wander Then&lt;br /&gt;               sp_direction = Int(Rnd(1) * 4)&lt;br /&gt;               Else 'attack / escape&lt;br /&gt;                   If sp_mode = mode_ghost_attack Then&lt;br /&gt;                       Select Case Int(Rnd(1) * 10)&lt;br /&gt;                           Case 0 To 3: whichdir% = 3 '40%&lt;br /&gt;                           Case 4:      whichdir% = 2 '10%&lt;br /&gt;                           Case 5 To 8: whichdir% = 4 '40%&lt;br /&gt;                           Case Else:   whichdir% = 1 '10%&lt;br /&gt;                       End Select&lt;br /&gt;                   Else 'escape&lt;br /&gt;                       Select Case Int(Rnd(1) * 10)&lt;br /&gt;                           Case 0 To 3: whichdir% = 2 '40%&lt;br /&gt;                           Case 4:      whichdir% = 3 '10%&lt;br /&gt;                           Case 5 To 8: whichdir% = 1 '40%&lt;br /&gt;                           Case Else:   whichdir% = 4 '10%&lt;br /&gt;                       End Select&lt;br /&gt;                   End If&lt;br /&gt;                   Select Case whichdir%&lt;br /&gt;                       Case 1 'away x&lt;br /&gt;                           If pacman_x &lt; sp_x Then sp_direction = dir_right&lt;br /&gt;                           If pacman_x &gt; sp_x Then sp_direction = dir_left&lt;br /&gt;                       Case 2 'away y&lt;br /&gt;                           If pacman_y &lt; sp_y Then sp_direction = dir_up&lt;br /&gt;                           If pacman_y &gt; sp_y Then sp_direction = dir_down&lt;br /&gt;                       Case 3 'towards x&lt;br /&gt;                           If pacman_x &gt; sp_x Then sp_direction = dir_right&lt;br /&gt;                           If pacman_x &lt; sp_x Then sp_direction = dir_left&lt;br /&gt;                       Case 4 'towards y&lt;br /&gt;                           If pacman_y &gt; sp_y Then sp_direction = dir_up&lt;br /&gt;                           If pacman_y &lt; sp_y Then sp_direction = dir_down&lt;br /&gt;                   End Select&lt;br /&gt;               End If&lt;br /&gt;           End If&lt;br /&gt;           If sp_powerup &gt; 0 Then&lt;br /&gt;               sp_powerup = sp_powerup + 1&lt;br /&gt;               Select Case sp_powerup&lt;br /&gt;                   Case 17&lt;br /&gt;                       sp_mode = mode_ghost_wander&lt;br /&gt;                   Case 19&lt;br /&gt;                       sp_mode = mode_ghost_escape&lt;br /&gt;                   Case 20&lt;br /&gt;                       sp_mode = mode_ghost_wander&lt;br /&gt;                   Case 22&lt;br /&gt;                       sp_mode = mode_ghost_escape&lt;br /&gt;                   Case 23&lt;br /&gt;                       sp_mode = mode_ghost_wander&lt;br /&gt;                       sp_powerup = 0&lt;br /&gt;               End Select&lt;br /&gt;           End If&lt;br /&gt;       End If&lt;br /&gt;   End If&lt;br /&gt;End Sub&lt;br /&gt;&lt;br /&gt;Public Sub copysprite(form_hdc As Long, working_hdc As Long)&lt;br /&gt;   u! = BitBlt(form_hdc, sp_oldx - 8, 30 + sp_oldy - 8, 48, 48, working_hdc, sp_oldx - 8, sp_oldy - 8, SRCCOPY)&lt;br /&gt;End Sub&lt;br /&gt;&lt;br /&gt;Public Sub erasesprite(working_hdc As Long, board_hDC As Long)&lt;br /&gt;   u! = BitBlt(working_hdc, sp_oldx, sp_oldy, 32, 32, board_hDC, sp_oldx, sp_oldy, SRCCOPY)&lt;br /&gt;End Sub&lt;br /&gt;&lt;br /&gt;Public Sub drawsprite(working_hdc As Long, sprites_hdc As Long)&lt;br /&gt;   sp_animx = 0&lt;br /&gt;   sp_animy = 0&lt;br /&gt;   Select Case sp_direction&lt;br /&gt;       Case dir_right: sp_animx = sp_anim * step_size&lt;br /&gt;       Case dir_down:  sp_animy = sp_anim * step_size&lt;br /&gt;       Case dir_left:  sp_animx = -sp_anim * step_size&lt;br /&gt;       Case dir_up:    sp_animy = -sp_anim * step_size&lt;br /&gt;   End Select&lt;br /&gt;   sp_oldx = (sp_x - 1) * 32 + sp_animx&lt;br /&gt;   sp_oldy = (sp_y - 1) * 32 + sp_animy&lt;br /&gt;  &lt;br /&gt;   If sp_mode &lt;= mode_pacman_powerup Then&lt;br /&gt;       u! = BitBlt(working_hdc, sp_oldx, sp_oldy, 32, 32, sprites_hdc, 0, 5 * 32, SRCAND)&lt;br /&gt;       u! = BitBlt(working_hdc, sp_oldx, sp_oldy, 32, 32, sprites_hdc, (sp_direction + 4) * 32, sp_frame * 32, SRCINVERT)&lt;br /&gt;       If sp_anim &lt;&gt; 0 Then 'if moving then animate pacman eating&lt;br /&gt;           If sp_frame = 1 Then sp_frame = 0 Else sp_frame = 1&lt;br /&gt;       End If&lt;br /&gt;   Else 'ghost&lt;br /&gt;       If sp_mode = mode_ghost_escape Then&lt;br /&gt;           u! = BitBlt(working_hdc, sp_oldx, sp_oldy, 32, 32, sprites_hdc, (4 + sp_frame) * 32, 5 * 32, SRCAND)&lt;br /&gt;           u! = BitBlt(working_hdc, sp_oldx, sp_oldy, 32, 32, sprites_hdc, (4 + sp_frame) * 32, 4 * 32, SRCINVERT)&lt;br /&gt;       Else&lt;br /&gt;           u! = BitBlt(working_hdc, sp_oldx, sp_oldy, 32, 32, sprites_hdc, (4 + sp_frame) * 32, 3 * 32, SRCAND)&lt;br /&gt;           u! = BitBlt(working_hdc, sp_oldx, sp_oldy, 32, 32, sprites_hdc, (4 + sp_frame) * 32, 2 * 32, SRCINVERT)&lt;br /&gt;       End If&lt;br /&gt;       sp_frame = sp_frame + 1&lt;br /&gt;       If sp_frame &gt; 3 Then sp_frame = 0&lt;br /&gt;   End If&lt;br /&gt;End Sub&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt; &lt;p&gt; &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;h3&gt;usercontrol1&lt;/h3&gt; &lt;pre&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;Private brdpac As Board&lt;br /&gt;'brdpac holds the board class&lt;br /&gt;Private Lastkey As Integer&lt;br /&gt;'hold the last key pressed&lt;br /&gt;Private pacman As Sprite&lt;br /&gt;Private level As Integer&lt;br /&gt;Private ghosts As New Collection&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Private Sub copy_title_to_screen()&lt;br /&gt;   u! = BitBlt(hDC, 0, 0, pictitle.ScaleWidth, pictitle.ScaleHeight, pictitle.hDC, 0, 0, SRCCOPY)&lt;br /&gt;End Sub&lt;br /&gt;&lt;br /&gt;Private Sub copy_working_to_screen()&lt;br /&gt;   u! = BitBlt(hDC, 0, 30, picworking.ScaleWidth, picworking.ScaleHeight, picworking.hDC, 0, 0, SRCCOPY)&lt;br /&gt;End Sub&lt;br /&gt;&lt;br /&gt;Private Sub copy_board_to_working()&lt;br /&gt;   u! = BitBlt(picworking.hDC, 0, 0, picboard.ScaleWidth, picboard.ScaleHeight, picboard.hDC, 0, 0, SRCCOPY)&lt;br /&gt;End Sub&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Private Sub Timer1_Timer()&lt;br /&gt;'erase sprites&lt;br /&gt;pacman.erasesprite picworking.hDC, picboard.hDC&lt;br /&gt;For Each ghost In ghosts&lt;br /&gt;   ghost.erasesprite picworking.hDC, picboard.hDC&lt;br /&gt;Next&lt;br /&gt;&lt;br /&gt;'move/draw sprites&lt;br /&gt;pacman.movesprite Lastkey, pacman.X, pacman.Y, 0, brdpac, picboard.hDC, picsource.hDC&lt;br /&gt;pacman.drawsprite picworking.hDC, picsource.hDC&lt;br /&gt;For Each ghost In ghosts&lt;br /&gt;   ghost.movesprite 0, pacman.X, pacman.Y, pacman.mode, brdpac, picboard.hDC, picsource.hDC&lt;br /&gt;   ghost.drawsprite picworking.hDC, picsource.hDC&lt;br /&gt;Next&lt;br /&gt;&lt;br /&gt;'now copy sprites to the screen&lt;br /&gt;pacman.copysprite hDC, picworking.hDC&lt;br /&gt;For Each ghost In ghosts&lt;br /&gt;   ghost.copysprite hDC, picworking.hDC&lt;br /&gt;Next&lt;br /&gt;&lt;br /&gt;'print the current score&lt;br /&gt;print_score&lt;br /&gt;&lt;br /&gt;'check if the level is complete&lt;br /&gt;If pacman.pills_ate &gt;= brdpac.pills Then&lt;br /&gt;   level = level + 1&lt;br /&gt;   load_level&lt;br /&gt;End If&lt;br /&gt;&lt;br /&gt;'check if pacman or ghost overlap&lt;br /&gt;cur_ghost% = 1&lt;br /&gt;For Each ghost In ghosts&lt;br /&gt;   If Abs(ghost.pixelx - pacman.pixelx) &lt; 32 And Abs(ghost.pixely - pacman.pixely) &lt; 32 Then&lt;br /&gt;       'you just got spooked&lt;br /&gt;       If ghost.mode = mode_ghost_escape Then 'you got the ghost&lt;br /&gt;           If m_sound Then u! = sndPlaySound(App.Path &amp;amp; "\pacman4.wav", 1)&lt;br /&gt;           pacman.score = pacman.score + 400&lt;br /&gt;           ghost.erasesprite picworking.hDC, picboard.hDC&lt;br /&gt;           ghost.copysprite hDC, picworking.hDC&lt;br /&gt;           ghosts.Remove cur_ghost%&lt;br /&gt;           cur_ghost% = cur_ghost% - 1&lt;br /&gt;       Else 'the ghost got you!&lt;br /&gt;           If m_sound Then u! = sndPlaySound(App.Path &amp;amp; "\pacman3.wav", 1)&lt;br /&gt;           pacman.lives = pacman.lives - 1&lt;br /&gt;           load_level&lt;br /&gt;       End If&lt;br /&gt;   End If&lt;br /&gt;   cur_ghost% = cur_ghost% + 1&lt;br /&gt;Next&lt;br /&gt;End Sub&lt;br /&gt;&lt;br /&gt;Private Sub print_score()&lt;br /&gt;   u! = BitBlt(hDC, 202, 7, 134, 16, pictitle.hDC, 202, 7, SRCCOPY)&lt;br /&gt;   CurrentX = 204&lt;br /&gt;   CurrentY = 8&lt;br /&gt;   Print pacman.score&lt;br /&gt;  &lt;br /&gt;   u! = BitBlt(hDC, 436, 7, 96, 16, pictitle.hDC, 436, 7, SRCCOPY)&lt;br /&gt;   CurrentX = 446&lt;br /&gt;   CurrentY = 8&lt;br /&gt;   Print pacman.lives&lt;br /&gt;End Sub&lt;br /&gt;&lt;br /&gt;Private Sub load_level()&lt;br /&gt;   brdpac.load_board App.Path &amp;amp; "\level" &amp;amp; level &amp;amp; ".txt", pacman, ghosts&lt;br /&gt;   'loadup the level off disk&lt;br /&gt;   brdpac.paint picboard.hDC, picsource.hDC&lt;br /&gt;   'draw the board into the buffer&lt;br /&gt;   copy_board_to_working&lt;br /&gt;   copy_working_to_screen&lt;br /&gt;End Sub&lt;br /&gt;&lt;br /&gt;Private Sub UserControl_Initialize()&lt;br /&gt;   Set brdpac = New Board&lt;br /&gt;   'give me a new board&lt;br /&gt;   Set pacman = New Sprite&lt;br /&gt;   'give me a new pacman&lt;br /&gt;   pacman.lives = 3&lt;br /&gt;  &lt;br /&gt;   level = 1&lt;br /&gt;   load_level&lt;br /&gt;     &lt;br /&gt;   Timer1.Enabled = True&lt;br /&gt;End Sub&lt;br /&gt;&lt;br /&gt;Private Sub UserControl_KeyDown(KeyCode As Integer, Shift As Integer)&lt;br /&gt; 'just keep track of the last key, we will deal with direction later&lt;br /&gt;   Lastkey = KeyCode&lt;br /&gt;End Sub&lt;br /&gt;&lt;br /&gt;Private Sub UserControl_Paint()&lt;br /&gt;copy_working_to_screen&lt;br /&gt;   copy_title_to_screen&lt;br /&gt;   print_score&lt;br /&gt;End Sub&lt;br /&gt;&lt;br /&gt;Public Property Get sound() As Integer&lt;br /&gt;   sound = m_sound&lt;br /&gt;End Property&lt;br /&gt;&lt;br /&gt;Public Property Let sound(ByVal New_sound As Integer)&lt;br /&gt;   m_sound = New_sound&lt;br /&gt;   PropertyChanged "sound"&lt;br /&gt;End Property&lt;br /&gt;&lt;br /&gt;'Initialize Properties for User Control&lt;br /&gt;Private Sub UserControl_InitProperties()&lt;br /&gt;   m_sound = m_def_sound&lt;br /&gt;End Sub&lt;br /&gt;&lt;br /&gt;'Load property values from storage&lt;br /&gt;Private Sub UserControl_ReadProperties(PropBag As PropertyBag)&lt;br /&gt;   m_sound = PropBag.ReadProperty("sound", m_def_sound)&lt;br /&gt;End Sub&lt;br /&gt;&lt;br /&gt;'Write property values to storage&lt;br /&gt;Private Sub UserControl_WriteProperties(PropBag As PropertyBag)&lt;br /&gt;   Call PropBag.WriteProperty("sound", m_sound, m_def_sound)&lt;br /&gt;End Sub&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-4278424458183419435?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/4278424458183419435/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=4278424458183419435' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/4278424458183419435'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/4278424458183419435'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/01/vb-pacman-tutorial.html' title='VB PacMan Tutorial'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-3461538699236140182</id><published>2008-01-28T12:16:00.000-08:00</published><updated>2008-01-28T12:17:43.478-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='visual basic'/><title type='text'>Whack A Rat source code</title><content type='html'>&lt;img src="http://www.advantage.co.nz/ur/whack_title.gif" height="53" width="308" /&gt; &lt;hr /&gt; &lt;span style="font-family:Arial;"&gt; &lt;b&gt;Source Code&lt;/b&gt; &lt;/span&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Courier New;font-size:100%;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;pre&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Courier New;font-size:100%;"&gt;Private Declare Function BitBlt Lib "gdi32" (ByVal hDestDC As Long, ByVal X As Long, ByVal Y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal dwRop As Long) As Long&lt;br /&gt;Private Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As String, ByVal uFlags As Long) As Long&lt;br /&gt;&lt;br /&gt;Const SRCCOPY = &amp;amp;HCC0020 ' (DWORD) dest = source&lt;br /&gt;Const SRCINVERT = &amp;amp;H660046       ' (DWORD) dest = source XOR dest&lt;br /&gt;Const SRCAND = &amp;amp;H8800C6  ' (DWORD) dest = source AND dest&lt;br /&gt;&lt;br /&gt;Dim handx%, handy% 'current hand position&lt;br /&gt;&lt;br /&gt;Dim handpos% 'how far through a swing&lt;br /&gt;Const hand_up = 0&lt;br /&gt;Const hand_down = 1&lt;br /&gt;Const hand_hit = 2&lt;br /&gt;&lt;br /&gt;Dim ratx%(2, 2), raty%(2, 2), ratpos%(2, 2)&lt;br /&gt;Dim ratspeed%(2, 2)&lt;br /&gt;&lt;br /&gt;'hold the sprites&lt;br /&gt;Dim spnx%(15), spny%(15), spnw%(15), spnh%(15), spnox%(15), spnoy%(15)&lt;br /&gt;&lt;br /&gt;' game status&lt;br /&gt;Dim difficulty% 'start at 0, (easy), 8=hard&lt;br /&gt;&lt;br /&gt;' current frame (will just increment)&lt;br /&gt;' (hopefully won't play till it overflows ;)&lt;br /&gt;Dim frame As Long&lt;br /&gt;&lt;br /&gt;'score&lt;br /&gt;Dim score% '+/- 32000 should cover it&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Private Sub Command1_Click()&lt;/b&gt;&lt;br /&gt;frame = 0&lt;br /&gt;score% = 0&lt;br /&gt;Level% = Val(InputBox("Choose a difficulty from 0 to 8" &amp;amp; Chr$(13) &amp;amp; "8 being the hardest."))&lt;br /&gt;If Level% &gt; 8 Then difficulty% = 8 Else difficulty% = Level%&lt;br /&gt;Timer1.Enabled = True&lt;br /&gt;MousePointer = 99&lt;br /&gt;&lt;b&gt;End Sub&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Private Sub Form_Load()&lt;/b&gt;&lt;br /&gt;Randomize&lt;br /&gt;u&amp;amp; = BitBlt(Picbuf.hDC, 0, 0, Picbuf.ScaleWidth, Picbuf.ScaleHeight, Picbak.hDC, 0, 0, SRCCOPY)&lt;br /&gt;Timer1.Enabled = False&lt;br /&gt;MousePointer = 0&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;'load up the sprites&lt;br /&gt;Open App.Path &amp;amp; "\whack_img.spr" For Random As #1 Len = 2&lt;br /&gt;For a% = 0 To 14&lt;br /&gt;   Get #1, a% * 6 + 1, spnox%(a% + 1)&lt;br /&gt;   Get #1, a% * 6 + 2, spnoy%(a% + 1)&lt;br /&gt;   Get #1, a% * 6 + 3, spnx%(a% + 1)&lt;br /&gt;   Get #1, a% * 6 + 4, spny%(a% + 1)&lt;br /&gt;   Get #1, a% * 6 + 5, spnw%(a% + 1)&lt;br /&gt;   Get #1, a% * 6 + 6, spnh%(a% + 1)&lt;br /&gt;Next&lt;br /&gt;Close #1&lt;br /&gt;&lt;br /&gt;'position the rats over their holes&lt;br /&gt;stickrat 0, 0, 187, 48, 0&lt;br /&gt;stickrat 1, 0, 127, 79, 0&lt;br /&gt;stickrat 2, 0, 75, 116, 0&lt;br /&gt;stickrat 0, 1, 247, 58, 0&lt;br /&gt;stickrat 1, 1, 189, 90, 0&lt;br /&gt;stickrat 2, 1, 146, 126, 0&lt;br /&gt;stickrat 0, 2, 304, 66, 0&lt;br /&gt;stickrat 1, 2, 262, 98, 0&lt;br /&gt;stickrat 2, 2, 222, 134, 0&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;End Sub&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Sub stickrat(row%, col%, X%, Y%, pos%)&lt;/b&gt;&lt;br /&gt;ratx%(row%, col%) = X%&lt;br /&gt;raty%(row%, col%) = Y%&lt;br /&gt;ratpos%(row%, col%) = pos%&lt;br /&gt;&lt;b&gt;End Sub&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)&lt;/b&gt;&lt;br /&gt;If handpos% = hand_up Then handpos% = hand_down&lt;br /&gt;For col% = 0 To 2&lt;br /&gt;   For row% = 0 To 2&lt;br /&gt;       sp% = ratpos%(row%, col%)&lt;br /&gt;       If sp% &gt; 0 And sp% &lt;= 12 Then 'this rat is trying to popup! If X&gt; ratx%(row%, col%) + spnox%(sp%) And X &lt;ratx%(row%, then="" inside="" left="" and="" right="" of="" the="" sprite="" if="" y=""&gt; raty%(row%, col%) + spnoy%(sp%) And Y &lt;raty%(row%, then="" inside="" top="" bottom="" add="" up="" the="" score="" 3="" wav="" 10="" frames="" to="" fade="" away="" end="" if="" next=""&gt;&lt;b&gt;End Sub&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)&lt;/b&gt;&lt;br /&gt;handpos% = hand_up&lt;br /&gt;&lt;b&gt;End Sub&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)&lt;/b&gt;&lt;br /&gt;handx% = X - 15&lt;br /&gt;handy% = Y - 40&lt;br /&gt;&lt;b&gt;End Sub&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Private Sub Form_Paint()&lt;/b&gt;&lt;br /&gt;u&amp;amp; = BitBlt(hDC, 0, 0, Picbuf.ScaleWidth, Picbuf.ScaleHeight, Picbuf.hDC, 0, 0, SRCCOPY)&lt;br /&gt;&lt;b&gt;End Sub&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Private Sub Timer1_Timer()&lt;/b&gt;&lt;br /&gt;'copy from background&lt;br /&gt;u&amp;amp; = BitBlt(Picbuf.hDC, 0, 0, Picbuf.ScaleWidth, Picbuf.ScaleHeight, Picbak.hDC, 0, 0, SRCCOPY)&lt;br /&gt;&lt;br /&gt;frame = frame + 1&lt;br /&gt;popuprats&lt;br /&gt;&lt;br /&gt;'update score and time&lt;br /&gt;Picbuf.CurrentX = 90&lt;br /&gt;Picbuf.CurrentY = 10&lt;br /&gt;Picbuf.Print "Score : " &amp;amp; score%&lt;br /&gt;Picbuf.CurrentX = 90&lt;br /&gt;Picbuf.Print "Time  : " &amp;amp; (1000 - frame)&lt;br /&gt;If frame = 1000 Then&lt;br /&gt;   'thats the end of this game&lt;br /&gt;   Timer1.Enabled = False&lt;br /&gt;   MousePointer = 0&lt;br /&gt;End If&lt;br /&gt;&lt;br /&gt;'draw some rats&lt;br /&gt;For col% = 0 To 2&lt;br /&gt;   For row% = 0 To 2&lt;br /&gt;       drawarat ratx%(row%, col%), raty%(row%, col%), ratpos%(row%, col%)&lt;br /&gt;       updateRat row%, col%&lt;br /&gt;   Next&lt;br /&gt;Next&lt;br /&gt;&lt;br /&gt;'place the sprite of the hand&lt;br /&gt;drawhand&lt;br /&gt;&lt;br /&gt;'copy to screen&lt;br /&gt;u&amp;amp; = BitBlt(hDC, 0, 0, Picbuf.ScaleWidth, Picbuf.ScaleHeight, Picbuf.hDC, 0, 0, SRCCOPY)&lt;br /&gt;&lt;b&gt;End Sub&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Sub drawhand()&lt;/b&gt;&lt;br /&gt;Select Case handpos%&lt;br /&gt;   Case hand_up&lt;br /&gt;       u&amp;amp; = BitBlt(Picbuf.hDC, handx%, handy%, 97, 54, Picmsk.hDC, 0, 0, SRCAND)&lt;br /&gt;       u&amp;amp; = BitBlt(Picbuf.hDC, handx%, handy%, 97, 54, Picimg.hDC, 0, 0, SRCINVERT)&lt;br /&gt;   Case hand_hit&lt;br /&gt;       u&amp;amp; = BitBlt(Picbuf.hDC, handx%, handy%, 90, 64, Picmsk.hDC, 0, 118, SRCAND)&lt;br /&gt;       u&amp;amp; = BitBlt(Picbuf.hDC, handx%, handy%, 90, 64, Picimg.hDC, 0, 118, SRCINVERT)&lt;br /&gt;   Case hand_down&lt;br /&gt;       u&amp;amp; = BitBlt(Picbuf.hDC, handx%, handy% - 6, 90, 64, Picmsk.hDC, 0, 54, SRCAND)&lt;br /&gt;       u&amp;amp; = BitBlt(Picbuf.hDC, handx%, handy% - 6, 90, 64, Picimg.hDC, 0, 54, SRCINVERT)&lt;br /&gt;End Select&lt;br /&gt;&lt;b&gt;End Sub&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Sub drawarat(X%, Y%, cell%)&lt;/b&gt;&lt;br /&gt;If cell% &gt; 0 Then&lt;br /&gt;   u&amp;amp; = BitBlt(Picbuf.hDC, X% + spnox%(cell%), Y% + spnoy%(cell%), spnw%(cell%), spnh%(cell%), Picmsk.hDC, spnx%(cell%), spny%(cell%), SRCAND)&lt;br /&gt;   u&amp;amp; = BitBlt(Picbuf.hDC, X% + spnox%(cell%), Y% + spnoy%(cell%), spnw%(cell%), spnh%(cell%), Picimg.hDC, spnx%(cell%), spny%(cell%), SRCINVERT)&lt;br /&gt;End If&lt;br /&gt;&lt;b&gt;End Sub&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Sub updateRat(row%, col%)&lt;/b&gt;&lt;br /&gt;   If ratpos%(row%, col%) &lt;= 12 And ratpos%(row%, col%)&gt; 0 Then&lt;br /&gt;       'if the rat has started popping up!&lt;br /&gt;       'check if time has elapsed sufficent for the speed&lt;br /&gt;       If frame Mod ratspeed%(row%, col%) = 0 Then&lt;br /&gt;           'e.g. the bigger the speed, the less frequently it will&lt;br /&gt;           'be an exact division (e.g. the slower the rat pops up)&lt;br /&gt;           ratpos%(row%, col%) = ratpos%(row%, col%) - 1&lt;br /&gt;           'change the frame&lt;br /&gt;           If ratpos%(row%, col%) = 0 Then&lt;br /&gt;               'the rat got away without a hit&lt;br /&gt;               score% = score% - 20&lt;br /&gt;           End If&lt;br /&gt;       End If&lt;br /&gt;   ElseIf ratpos%(row%, col%) &gt; 12 Then&lt;br /&gt;       If frame Mod ratspeed%(row%, col%) = 0 Then&lt;br /&gt;           ratpos%(row%, col%) = ratpos%(row%, col%) + 1&lt;br /&gt;           If ratpos%(row%, col%) &gt;= 15 Then&lt;br /&gt;               'finished animation, get rid of it&lt;br /&gt;               ratpos%(row%, col%) = 0&lt;br /&gt;           End If&lt;br /&gt;       End If&lt;br /&gt;   End If&lt;br /&gt;&lt;b&gt;End Sub&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Sub popuprats()&lt;/b&gt;&lt;br /&gt;   'randomly created rats popping up at random speeds&lt;br /&gt;   'the harder the difficulty (higher the value)&lt;br /&gt;   'the more likely and the faster the rats.&lt;br /&gt;   If Int(Rnd(1) * (30 - difficulty%)) = 1 Then&lt;br /&gt;       rndrow% = Int(Rnd(1) * 2.99)&lt;br /&gt;       rndcol% = Int(Rnd(1) * 2.99)&lt;br /&gt;       If ratpos%(rndrow%, rndcol%) = 0 Then&lt;br /&gt;           ratpos%(rndrow%, rndcol%) = 12&lt;br /&gt;           ratspeed%(rndrow%, rndcol%) = Int(Rnd(1) * (8 - difficulty%)) + 1&lt;br /&gt;       End If&lt;br /&gt;   End If&lt;br /&gt;&lt;b&gt;End Sub&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;/raty%(row%,&gt;&lt;/ratx%(row%,&gt;&lt;/span&gt;&lt;/span&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;/pre&gt; &lt;span style="font-family:Arial;"&gt;Happy Programing&lt;br /&gt;&lt;a href="mailto:david@ur.co.nz"&gt;David Brebner&lt;/a&gt;&lt;br /&gt;  &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-3461538699236140182?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/3461538699236140182/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=3461538699236140182' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/3461538699236140182'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/3461538699236140182'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/01/whack-rat-source-code.html' title='Whack A Rat source code'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-5215717604414701824</id><published>2008-01-28T12:13:00.000-08:00</published><updated>2008-01-28T12:14:56.867-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='visual basic'/><title type='text'>Mouse in a Maze VB Games</title><content type='html'>&lt;h3&gt;&lt;span style="font-family:Arial;"&gt;Mouse in a Maze&lt;/span&gt;&lt;/h3&gt; &lt;span style="font-family:Arial;"&gt;By David Brebner &lt;/span&gt;&lt;p&gt; &lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td valign="top"&gt;&lt;img src="http://www.advantage.co.nz/ur/maze.gif" height="243" width="261" /&gt;&lt;/td&gt;&lt;td width="10"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td valign="top"&gt; This is a very simple program that illustrates two interesting coding tricks. &lt;p&gt; &lt;b&gt;1)&lt;/b&gt; Generating random mazes, which allow you to get from one point to any other. &lt;/p&gt;&lt;p&gt; &lt;b&gt;2)&lt;/b&gt; Using the ClipCursor API call to restrict the mouse movement (in this case to allow you to only move within the valid area of the maze). &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt; &lt;/p&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;&lt;b&gt;Making Mazes&lt;/b&gt; &lt;/span&gt;&lt;/p&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;Generating random mazes might seem like a complicated task, but their are plenty of algorithims available on the web to help you out. This particular one created mazes with interesting properties. Every maze created has no dead-ends, that means you can get from any one point to any other in any given maze. &lt;/span&gt;&lt;/p&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;The technique involves drawing a wall from every point in the maze in a random order and direction, until an exisiting wall is reached. Simple. &lt;/span&gt;&lt;/p&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;&lt;b&gt;Mouse Herding&lt;/b&gt; &lt;/span&gt;&lt;/p&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;It is really very out of fashion to restrict the users mouse movement, however we have good reason for doing it this time. We want to make sure they aren't cheating, and just jumping over the walls straight to the finish. &lt;/span&gt;&lt;/p&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;So that people don't get frustrated, clicking the mouse releases them from the maze. &lt;/span&gt;&lt;/p&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;The main problem with mouse restrictions is they only apply to rectangular areas... So, how did I make an irregular maze type shape, you cry? &lt;/span&gt;&lt;/p&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;&lt;b&gt;Creative use of ClipCursor&lt;/b&gt; &lt;/span&gt;&lt;/p&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;Because ClipCursor accepts only a RECT structure, we need to perform a trick to make the maze game work. That trick is to make a rectangle slightly bigger than each maze square. When the mouse reached the boundaries of the current maze square, we test to see if they are on a wall, or free space. If they are on free space, then we quickly whip up a new rectangle covering this new maze square. The mouse notices nothing because the squares overlap. &lt;/span&gt;&lt;/p&gt;&lt;pre&gt;&lt;span style="font-family:Arial;"&gt;Declare Function ClipCursor Lib "user32" (lpRect As Any) As Long&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt; &lt;span style="font-family:Arial;"&gt;The other API call we use is SetCursorPos to move the mouse into position at the start of the maze, we don't want any cheating in this era of competitive maze racing. &lt;/span&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;Happy Programming&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Arial;"&gt; &lt;b&gt;&lt;i&gt; Mouse in a Maze &lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;  &lt;span style="font-family:Arial;"&gt;Download the sample source code &lt;a href="http://www.advantage.co.nz/ur/maze.zip"&gt;here&lt;/a&gt; ~ 11k,  &lt;/span&gt;&lt;/p&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;&lt;a href="mailto:david@ur.co.nz"&gt;David Brebner&lt;/a&gt; &lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-5215717604414701824?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/5215717604414701824/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=5215717604414701824' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/5215717604414701824'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/5215717604414701824'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/01/mouse-in-maze-vb-games.html' title='Mouse in a Maze VB Games'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-3148795351937709603</id><published>2008-01-28T12:08:00.000-08:00</published><updated>2008-01-28T12:13:26.761-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='visual basic'/><title type='text'>Conclusion</title><content type='html'>&lt;span style="font-family:Arial;"&gt; &lt;b&gt;Conclusion&lt;/b&gt; &lt;/span&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;Now everything is nearly finished. I thought we could add some user feedback so that it is obvious when you are over a hotspot. Changing the cursor to a question mark seemed appropriate. &lt;/span&gt;&lt;/p&gt;&lt;pre&gt;&lt;span style="font-family:Arial;"&gt;Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)&lt;br /&gt;Dim mp%, a&lt;br /&gt;If List1.Visible = 0 And MousePointer &lt;&gt; 11 Then&lt;br /&gt;   'as long as we are not making a choice,&lt;br /&gt;   'or the hourglass isn't up&lt;br /&gt;   mp% = 0&lt;br /&gt;   For a = 1 To numactors&lt;br /&gt;       If actor_cell(a) &gt; 0 Then 'a valid cell&lt;br /&gt;           'check rectangle&lt;br /&gt;           If X &gt; actor_x(a) + spnox(actor_cell(a), a) And X &lt;actor_x(a) then="" if="" y=""&gt; actor_y(a) + spnoy(actor_cell(a), a) And Y &lt;actor_y(a) then="" end="" next="" if="" mousepointer=""&gt;&lt;&gt; mp% Then MousePointer = mp%&lt;br /&gt;End If&lt;br /&gt;End Sub&lt;br /&gt;&lt;/actor_y(a)&gt;&lt;/actor_x(a)&gt;&lt;/span&gt;&lt;/pre&gt;&lt;span style="font-family:Arial;"&gt; Another small thing that adds to the overall effect is the Form_paint event. Rather than drawing all the characters directly to screen, draw them to a buffer first. This is so users can't see the background drawn, then each actor drawn in turn. This not only looks unprofessional, but may give away your puzzles. Here is the replacement code, the only changes are that everything draws to ptmp.hdc (our temporary picturebox), then at the end copies the ptmp to the main form. &lt;/span&gt;&lt;pre&gt;&lt;span style="font-family:Arial;"&gt;Private Sub Form_Paint()&lt;br /&gt;Dim u%, a As Integer&lt;br /&gt;'draw background&lt;br /&gt;u% = BitBlt(ptmp.hDC, 0, 0, Picbuf.ScaleWidth, Picbuf.ScaleHeight, Picbuf.hDC, 0, 0, SRCCOPY)&lt;br /&gt;'draw actors&lt;br /&gt;For a = 1 To numactors&lt;br /&gt;   If actor_cell(a) &gt; 0 Then 'a valid cell&lt;br /&gt;       If actor_mask(a) = 0 Then 'no mask&lt;br /&gt;           u% = BitBlt(ptmp.hDC, actor_x(a) + spnox(actor_cell(a), a), actor_y(a) + spnoy(actor_cell(a), a), spnw(actor_cell(a), a), spnh(actor_cell(a), a), actor_images(a).hDC, spnx(actor_cell(a), a), spny(actor_cell(a), a), SRCCOPY)&lt;br /&gt;       Else 'masked&lt;br /&gt;           u% = BitBlt(ptmp.hDC, actor_x(a) + spnox(actor_mask(a), a), actor_y(a) + spnoy(actor_mask(a), a), spnw(actor_mask(a), a), spnh(actor_mask(a), a), actor_images(a).hDC, spnx(actor_mask(a), a), spny(actor_mask(a), a), SRCAND)&lt;br /&gt;           u% = BitBlt(ptmp.hDC, actor_x(a) + spnox(actor_cell(a), a), actor_y(a) + spnoy(actor_cell(a), a), spnw(actor_cell(a), a), spnh(actor_cell(a), a), actor_images(a).hDC, spnx(actor_cell(a), a), spny(actor_cell(a), a), SRCINVERT)&lt;br /&gt;       End If&lt;br /&gt;   End If&lt;br /&gt;Next&lt;br /&gt;'copy the whole thing to screen&lt;br /&gt;u% = BitBlt(hDC, 0, 0, Picbuf.ScaleWidth, Picbuf.ScaleHeight, ptmp.hDC, 0, 0, SRCCOPY)&lt;br /&gt;&lt;br /&gt;End Sub&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt; &lt;p&gt; &lt;span style="font-family:Arial;"&gt;And finally things are pretty much done. To understand how this works, go through the code as I have described it, I have actually written the tutorial as I developed the blocks of code, so it really should work if you assemble it as I have described it. I find that as long as you consider the structure at the start, a program is most easily developed in bite sized chunks. &lt;/span&gt;&lt;/p&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;If you are interested in taking this further, some things I have not added to this engine that would enhance it might include; &lt;/span&gt;&lt;/p&gt;&lt;ul&gt;&lt;span style="font-family:Arial;"&gt;&lt;li&gt;Static hotspots that do not need a separate spr file &lt;/li&gt;&lt;li&gt;Irregular hotspots (e.g. see if the mouseclick falls inside the actors irregular shape) &lt;/li&gt;&lt;li&gt;Full-screen DirectX &lt;/li&gt;&lt;li&gt;Add Video playback to the action class &lt;/li&gt;&lt;li&gt;Provide actions for locations as well, these could be tied to game based events like timers, onentry and onexit. &lt;/li&gt;&lt;/span&gt;&lt;/ul&gt; &lt;p&gt; &lt;span style="font-family:Arial;"&gt;Hope you enjoy the tutorial, and the sample adventure game. &lt;/span&gt;&lt;/p&gt;&lt;p&gt; &lt;table width="100%"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td valign="top"&gt; &lt;b&gt;Downloads&lt;/b&gt; &lt;ul&gt;&lt;li&gt;Just the &lt;a href="http://www.advantage.co.nz/ur/adv_src.zip"&gt;source code&lt;/a&gt; ~ 20k &lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;The &lt;a href="http://www.advantage.co.nz/ur/adv_full.zip"&gt;full game &amp;amp; source code&lt;/a&gt; ~ 920k &lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.advantage.co.nz/ur/adv_sys.zip"&gt;VB5 system files&lt;/a&gt; if you don't have VB, and want to try it out (service pack3)  ~ 1,360k &lt;/li&gt;&lt;/ul&gt; &lt;/td&gt;&lt;td align="right"&gt; &lt;img src="http://www.advantage.co.nz/ur/adv_shot5.jpg" height="221" width="296" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;  &lt;/p&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;Enjoy&lt;br /&gt;&lt;a href="mailto:david@ur.co.nz"&gt;David Brebner&lt;/a&gt;   &lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-3148795351937709603?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/3148795351937709603/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=3148795351937709603' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/3148795351937709603'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/3148795351937709603'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/01/conclusion.html' title='Conclusion'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-3616352455299470249</id><published>2008-01-28T12:06:00.000-08:00</published><updated>2008-01-28T12:08:22.071-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='visual basic'/><title type='text'>Now the section that draws the animation.</title><content type='html'>&lt;span style="font-family:Arial;"&gt; &lt;b&gt;Now the section that draws the animation.&lt;/b&gt; &lt;/span&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;This is the bottom half of the subroutine started in the previous page. &lt;/span&gt;&lt;/p&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;Don't get to hung up on the long winded bitblt calls, they are really fairly simple, it just gets a bit messy. To see what is going on read the comments. &lt;/span&gt;&lt;/p&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;p.s.  &lt;/span&gt;&lt;/p&gt;&lt;ul&gt;&lt;span style="font-family:Arial;"&gt;&lt;li&gt;ca% stands for current actor (in the animation) &lt;/li&gt;&lt;li&gt;sp% = sprite cell &lt;/li&gt;&lt;li&gt;lsp% = last sprite cell &lt;/li&gt;&lt;li&gt;msk% = mask &lt;/li&gt;&lt;/span&gt;&lt;/ul&gt; &lt;pre&gt;&lt;span style="font-family:Arial;"&gt;       &lt;br /&gt;       '***********************************************&lt;br /&gt;       '      now perform the animation itself&lt;br /&gt;       '***********************************************&lt;br /&gt;       Dim crow%(40)&lt;br /&gt;       Dim tim1&amp;amp;, tim2&amp;amp;, u&amp;amp;&lt;br /&gt;       Dim currentframe%, ff%, ca%, c%&lt;br /&gt;       Dim sp%, lsp%, msk%&lt;br /&gt;      &lt;br /&gt;       ptmp.Cls&lt;br /&gt;       'backup the image into the tmp buffer (ptmp)&lt;br /&gt;       u&amp;amp; = BitBlt(ptmp.hDC, 0, 0, Picbuf.ScaleWidth, Picbuf.ScaleHeight, Picbuf.hDC, 0, 0, SRCCOPY)&lt;br /&gt;              &lt;br /&gt;       currentframe% = 1&lt;br /&gt;       a% = 1&lt;br /&gt;       tim1&amp;amp; = GetTickCount 'start timing&lt;br /&gt;       Do&lt;br /&gt;           'do the bitblt&lt;br /&gt;           For ca% = 1 To num 'number of actors&lt;br /&gt;               ff% = False&lt;br /&gt;                   Do&lt;br /&gt;                   c% = abuf(ca%, crow%(ca%), 0)&lt;br /&gt;                   If c% = currentframe% Then&lt;br /&gt;                       'do the blting&lt;br /&gt;                       sp% = abuf(ca%, crow%(ca%), 3)&lt;br /&gt;                       lsp% = abuf(ca%, crow%(ca%) - 1, 3)&lt;br /&gt;                       msk% = abuf(ca%, crow%(ca%), 4)&lt;br /&gt;                      &lt;br /&gt;                       If sp% &gt; 0 Then&lt;br /&gt;                           If msk% = 0 Then '*********** normal block&lt;br /&gt;                               u&amp;amp; = BitBlt(hDC, abuf(ca%, crow%(ca%), 1) + spnox%(sp%, apic(ca%)), abuf(ca%, crow%(ca%), 2) + spnoy%(sp%, apic(ca%)), spnw%(sp%, apic(ca%)), spnh%(sp%, apic(ca%)), actor_images(apic(ca%)).hDC, spnx%(sp%, apic(ca%)), spny%(sp%, apic(ca%)), SRCCOPY)&lt;br /&gt;                           ElseIf msk% &lt; 0 Then '******* block set to clean up (-1)&lt;br /&gt;                               'draw block to tmp&lt;br /&gt;                               u&amp;amp; = BitBlt(ptmp.hDC, abuf(ca%, crow%(ca%), 1) + spnox%(sp%, apic(ca%)), abuf(ca%, crow%(ca%), 2) + spnoy%(sp%, apic(ca%)), spnw%(sp%, apic(ca%)), spnh%(sp%, apic(ca%)), actor_images(apic(ca%)).hDC, spnx%(sp%, apic(ca%)), spny%(sp%, apic(ca%)), SRCCOPY)&lt;br /&gt;                               'copy old block from tmp to screen&lt;br /&gt;                               If lsp% &gt; -1 Then u&amp;amp; = BitBlt(hDC, abuf(ca%, crow%(ca%) - 1, 1) + spnox%(lsp%, apic(ca%)), abuf(ca%, crow%(ca%) - 1, 2) + spnoy%(lsp%, apic(ca%)), spnw%(lsp%, apic(ca%)), spnh%(lsp%, apic(ca%)), ptmp.hDC, abuf(ca%, crow%(ca%) - 1, 1) + spnox%(lsp%, apic(ca%)), abuf(ca%, crow%(ca%) - 1, 2) + spnoy%(lsp%, apic(ca%)), SRCCOPY)&lt;br /&gt;                               'copy new block from tmp to screen&lt;br /&gt;                               u&amp;amp; = BitBlt(hDC, abuf(ca%, crow%(ca%), 1) + spnox%(sp%, apic(ca%)), abuf(ca%, crow%(ca%), 2) + spnoy%(sp%, apic(ca%)), spnw%(sp%, apic(ca%)), spnh%(sp%, apic(ca%)), ptmp.hDC, abuf(ca%, crow%(ca%), 1) + spnox%(sp%, apic(ca%)), abuf(ca%, crow%(ca%), 2) + spnoy%(sp%, apic(ca%)), SRCCOPY)&lt;br /&gt;                               'clean up tmp again&lt;br /&gt;                               u&amp;amp; = BitBlt(ptmp.hDC, abuf(ca%, crow%(ca%), 1) + spnox%(sp%, apic(ca%)), abuf(ca%, crow%(ca%), 2) + spnoy%(sp%, apic(ca%)), spnw%(sp%, apic(ca%)), spnh%(sp%, apic(ca%)), Picbuf.hDC, abuf(ca%, crow%(ca%), 1) + spnox%(sp%, apic(ca%)), abuf(ca%, crow%(ca%), 2) + spnoy%(sp%, apic(ca%)), SRCCOPY)&lt;br /&gt;                           Else '************************ sprite (cleans up automatically)&lt;br /&gt;                               'draw sprite to tmp&lt;br /&gt;                               u&amp;amp; = BitBlt(ptmp.hDC, abuf(ca%, crow%(ca%), 1) + spnox%(msk%, apic(ca%)), abuf(ca%, crow%(ca%), 2) + spnoy%(msk%, apic(ca%)), spnw%(msk%, apic(ca%)), spnh%(msk%, apic(ca%)), actor_images(apic(ca%)).hDC, spnx%(msk%, apic(ca%)), spny%(msk%, apic(ca%)), SRCAND)&lt;br /&gt;                               u&amp;amp; = BitBlt(ptmp.hDC, abuf(ca%, crow%(ca%), 1) + spnox%(sp%, apic(ca%)), abuf(ca%, crow%(ca%), 2) + spnoy%(sp%, apic(ca%)), spnw%(sp%, apic(ca%)), spnh%(sp%, apic(ca%)), actor_images(apic(ca%)).hDC, spnx%(sp%, apic(ca%)), spny%(sp%, apic(ca%)), SRCINVERT)&lt;br /&gt;                               'copy old block from tmp to screen&lt;br /&gt;                               If lsp% &gt; -1 Then u&amp;amp; = BitBlt(hDC, abuf(ca%, crow%(ca%) - 1, 1) + spnox%(lsp%, apic(ca%)), abuf(ca%, crow%(ca%) - 1, 2) + spnoy%(lsp%, apic(ca%)), spnw%(lsp%, apic(ca%)), spnh%(lsp%, apic(ca%)), ptmp.hDC, abuf(ca%, crow%(ca%) - 1, 1) + spnox%(lsp%, apic(ca%)), abuf(ca%, crow%(ca%) - 1, 2) + spnoy%(lsp%, apic(ca%)), SRCCOPY)&lt;br /&gt;                               'copy new block from tmp to screen&lt;br /&gt;                               u&amp;amp; = BitBlt(hDC, abuf(ca%, crow%(ca%), 1) + spnox%(sp%, apic(ca%)), abuf(ca%, crow%(ca%), 2) + spnoy%(sp%, apic(ca%)), spnw%(sp%, apic(ca%)), spnh%(sp%, apic(ca%)), ptmp.hDC, abuf(ca%, crow%(ca%), 1) + spnox%(sp%, apic(ca%)), abuf(ca%, crow%(ca%), 2) + spnoy%(sp%, apic(ca%)), SRCCOPY)&lt;br /&gt;                               'clean up tmp again&lt;br /&gt;                               u&amp;amp; = BitBlt(ptmp.hDC, abuf(ca%, crow%(ca%), 1) + spnox%(sp%, apic(ca%)), abuf(ca%, crow%(ca%), 2) + spnoy%(sp%, apic(ca%)), spnw%(sp%, apic(ca%)), spnh%(sp%, apic(ca%)), Picbuf.hDC, abuf(ca%, crow%(ca%), 1) + spnox%(sp%, apic(ca%)), abuf(ca%, crow%(ca%), 2) + spnoy%(sp%, apic(ca%)), SRCCOPY)&lt;br /&gt;                           End If&lt;br /&gt;                       ElseIf msk% &lt; 0 Then 'even though no current sprite,clean up anyway&lt;br /&gt;                           If lsp% &gt; 0 Then u&amp;amp; = BitBlt(hDC, abuf(ca%, crow%(ca%) - 1, 1) + spnox%(lsp%, apic(ca%)), abuf(ca%, crow%(ca%) - 1, 2) + spnoy%(lsp%, apic(ca%)), spnw%(lsp%, apic(ca%)), spnh%(lsp%, apic(ca%)), ptmp.hDC, abuf(ca%, crow%(ca%) - 1, 1) + spnox%(lsp%, apic(ca%)), abuf(ca%, crow%(ca%) - 1, 2) + spnoy%(lsp%, apic(ca%)), SRCCOPY)&lt;br /&gt;                       End If&lt;br /&gt;                   End If&lt;br /&gt;                   If c% &lt;= currentframe% Then&lt;br /&gt;                       If crow%(ca%) &lt; 500 Then crow%(ca%) = crow%(ca%) + 1&lt;br /&gt;                   Else&lt;br /&gt;                       ff% = True&lt;br /&gt;                   End If&lt;br /&gt;               Loop Until ff% = True Or crow(ca%) &gt; 499&lt;br /&gt;           Next&lt;br /&gt;           Do&lt;br /&gt;               u&amp;amp; = DoEvents&lt;br /&gt;               tim2&amp;amp; = GetTickCount&lt;br /&gt;           Loop Until tim2&amp;amp; &gt; tim1&amp;amp; + (currentframe% * 45)&lt;br /&gt;           currentframe% = currentframe% + 1&lt;br /&gt;       Loop Until currentframe% &gt;= size%&lt;br /&gt;   End If&lt;br /&gt;End If&lt;br /&gt;End Sub&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt; &lt;span style="font-family:Arial;"&gt;The GetTickCount is initialised at the start of each frame, once the bitblt is complete, it will sit looping at the end until the time exceeds its inital value + the current time.  The advantage of this technique is that if the animation is going to slowly, in slack times (no animation going on), it will usually catch up.  &lt;/span&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;Enjoy&lt;br /&gt;&lt;a href="mailto:david@ur.co.nz"&gt;David Brebner&lt;/a&gt;   &lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-3616352455299470249?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/3616352455299470249/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=3616352455299470249' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/3616352455299470249'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/3616352455299470249'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/01/now-section-that-draws-animation.html' title='Now the section that draws the animation.'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-8813919100861711693</id><published>2008-01-28T12:04:00.001-08:00</published><updated>2008-01-28T12:05:59.606-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='visual basic'/><title type='text'>Animation</title><content type='html'>&lt;span style="font-family:Arial;"&gt; &lt;b&gt;Animation&lt;/b&gt; &lt;/span&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;The final addition to this tutorial is the ability to play back an animation. Now I am going to cheat slightly here - I am going to use an animation editor I have written to create the animation files. Essentially it is a visual tool that lets me position actor_editor SPR files along a timeline and test the animation. &lt;/span&gt;&lt;/p&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;If you want to make your own animations you will need to create them using a text editor (not quite so interactive), or create your own editor. (p.s. I will probably not release my editor because it is tightly tied to several projects I am working on at the moment) &lt;/span&gt;&lt;/p&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;All that aside we need to determine a format, load it on demand, and play our animation in time. One of the tricks we need to consider is moving sprites may need to clean up behind themselves (replace the background image), while some may want to simply paint onto the background. We will tell if they need cleaning up if the animation frame has a non-zero mask value. A negative mask value indicates this frame actually has no mask (its just rectangular) but it does need to be cleaned up after. &lt;/span&gt;&lt;/p&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;To achieve the effect of replacing the background as images move we need to keep an of-screen buffer for our animations to occur. This will keep the animation smooth and free from flicker. &lt;/span&gt;&lt;/p&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;The timing will be done using a simple API call, gettick. This returns a regularly incrementing long integer. This is much more accurate than using a timer control, and allows us to easily drop code into the animation section of the list1.click event. &lt;/span&gt;&lt;/p&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;&lt;b&gt;Animation File Structure&lt;/b&gt; &lt;/span&gt;&lt;/p&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;For convenience I will use a text conversion of my animation editor file format. This allowed me to quickly create the animations for this tutorial. &lt;/span&gt;&lt;/p&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;The format is &lt;/span&gt;&lt;/p&gt;&lt;pre&gt;&lt;span style="font-family:Arial;"&gt;Background image&lt;br /&gt;Number of words to by synched with animation&lt;br /&gt; Frame#, word&lt;br /&gt;Number of actors in this animation&lt;br /&gt; Actor Image&lt;br /&gt; Number of frames of animation&lt;br /&gt; Frame#,x,y,cell,mask&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt; &lt;span style="font-family:Arial;"&gt;The cool thing about this format is that the frame# is stored so if an actor does not move for part of an animation you don't need to record heaps of individual identical frames. This format also allows (although we won't be using it) for synched text to be highlighted as the animation progresses, e.g. highlight the word when the frame# is reached. &lt;/span&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;To make the animation possible, we need to be able to identify quickly which picture is loaded into which actor_image. We can exploit the tag property of a picturebox to store this. Add the following 4 lines to the start of the Load_Graphics_For_Location routine. &lt;/span&gt;&lt;/p&gt;&lt;pre&gt;&lt;span style="font-family:Arial;"&gt;   'first wipe tagged names from picture controls&lt;br /&gt;   For d% = 1 To 40&lt;br /&gt;       actor_images(d%).Tag = ""&lt;br /&gt;   Next&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt; &lt;span style="font-family:Arial;"&gt;Then add these two lines just before you load the sprite file data. &lt;/span&gt;&lt;pre&gt;&lt;span style="font-family:Arial;"&gt;            'so we can later match the actor with the animation&lt;br /&gt;           actor_images(numactors).Tag = actor.SpriteFile&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt; &lt;span style="font-family:Arial;"&gt;Now the main PlayAnimation subroutine.  This is fairly big - so I will describe it in two halves.   &lt;/span&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;First the part that loads the animation from file; &lt;/span&gt;&lt;/p&gt;&lt;pre&gt;&lt;span style="font-family:Arial;"&gt;Sub PlayAnimation(anim As String)&lt;br /&gt;Dim tmp As String, tmpn As Integer&lt;br /&gt;Dim num As Integer, numa As Integer&lt;br /&gt;Dim a%, b%, size%&lt;br /&gt;'to hold the temporary animation data&lt;br /&gt;'an animation buffer to hold 40 actors,&lt;br /&gt;'500 frames and 5 entries per frame.&lt;br /&gt;Dim abuf(40, 500, 4) As Integer&lt;br /&gt;Dim apic(40) As Integer 'pointer back to picture&lt;br /&gt;Dim backslash As Integer&lt;br /&gt;&lt;br /&gt;If anim &lt;&gt; "" Then&lt;br /&gt;   If Dir$(App.Path &amp;amp; "\" &amp;amp; anim &amp;amp; ".anm") &lt;&gt; "" Then&lt;br /&gt;       '***********************************************&lt;br /&gt;       ' the animation file exists so load it all up!!!&lt;br /&gt;       '***********************************************&lt;br /&gt;       'p.s. the animation frames will be stored in temporary arrays&lt;br /&gt;       Open App.Path &amp;amp; "\" &amp;amp; anim &amp;amp; ".anm" For Input As #1&lt;br /&gt;       Input #1, tmp 'backgound image&lt;br /&gt;       'number of word entries (ignore)&lt;br /&gt;       Input #1, num&lt;br /&gt;       'text entries themselves&lt;br /&gt;       For a% = 1 To num&lt;br /&gt;           Input #1, tmpn, tmp '(just ignore)&lt;br /&gt;       Next&lt;br /&gt;      &lt;br /&gt;       'the number of actors&lt;br /&gt;       Input #1, num&lt;br /&gt;       'read in all the actors data&lt;br /&gt;       For a% = 1 To num&lt;br /&gt;           'read the actors name&lt;br /&gt;           Input #1, tmp&lt;br /&gt;           'now find the actor in the image buffer&lt;br /&gt;           For b% = 1 To 40&lt;br /&gt;               'this line checks (non-case sensitive) if the&lt;br /&gt;               'current actor_image matches the current actor from file&lt;br /&gt;               backslash = InStr(1, tmp, actor_images(b%).Tag, vbTextCompare)&lt;br /&gt;               If backslash &gt; 0 And actor_images(b%).Tag &lt;&gt; "" Then&lt;br /&gt;                   If Mid$(tmp, backslash - 1, 1) = "\" And Mid$(tmp, backslash + Len(actor_images(b%).Tag), 1) = "." Then&lt;br /&gt;                       'save a pointer back to this actor_image&lt;br /&gt;                       apic(a%) = b%&lt;br /&gt;                       Exit For&lt;br /&gt;                   End If&lt;br /&gt;               Else&lt;br /&gt;                   apic(a%) = 1&lt;br /&gt;               End If&lt;br /&gt;           Next&lt;br /&gt;           'read the num of actor frames&lt;br /&gt;           Input #1, numa&lt;br /&gt;           'read the frames from disk&lt;br /&gt;           For b% = 1 To numa&lt;br /&gt;               Input #1, abuf(a%, b%, 0), abuf(a%, b%, 1), abuf(a%, b%, 2), abuf(a%, b%, 3), abuf(a%, b%, 4)&lt;br /&gt;               'update the biggest frame#&lt;br /&gt;               If abuf(a%, b%, 0) &gt; size% Then size% = abuf(a%, b%, 0)&lt;br /&gt;           Next&lt;br /&gt;       Next&lt;br /&gt;       'done!!&lt;br /&gt;       Close&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt; &lt;span style="font-family:Arial;"&gt;This essentially allocates a great big integer array called abuf (animation buffer) to hold all the animation data. This is then filled up with the information from the files. The only complex part is that when a sequence of frames for an actor is read, we need to establish in which actor_image control the picture resides. This is the reason for filling the .tag property with the filename when we load the actors in the Load_Graphics_for_Location routine. &lt;/span&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;This code steps though each picture checking if the tag matches with the text in the animation file. (instr checks for a match, and the VBTextCompare constant makes it case insensitive). &lt;/span&gt;&lt;/p&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;Once we have established which picture this animation character maps to, we put it into the apic array. (animation picture)    &lt;/span&gt;&lt;/p&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;Enjoy&lt;br /&gt;&lt;a href="mailto:david@ur.co.nz"&gt;David Brebner&lt;/a&gt;   &lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-8813919100861711693?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/8813919100861711693/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=8813919100861711693' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/8813919100861711693'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/8813919100861711693'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/01/animation.html' title='Animation'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-4834328195611321997</id><published>2008-01-28T11:57:00.000-08:00</published><updated>2008-01-28T12:02:56.873-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='visual basic'/><title type='text'>Lets make our actions do something</title><content type='html'>&lt;span style="font-family:Arial;"&gt; &lt;b&gt;Lets make our actions do something&lt;/b&gt; &lt;/span&gt;&lt;p&gt;  &lt;span style="font-family:Arial;"&gt;Now we have given the user a selection of actions to choose from, we need to do something when they select one. We need to write the action processing routines. This should be child's play compared to the Expression evaluation. &lt;/span&gt;&lt;/p&gt;&lt;pre&gt;&lt;span style="font-family:Arial;"&gt;Private Sub List1_Click()&lt;br /&gt;   Dim u As Long&lt;br /&gt;   List1.Visible = 0&lt;br /&gt;   If List1.ListIndex &gt;= 0 Then&lt;br /&gt;       MousePointer = 11 'hourglass&lt;br /&gt;       'cool, the user has chosen an action&lt;br /&gt;       Dim actor As New Actor_Class&lt;br /&gt;       'the actor number we stored the list tag property&lt;br /&gt;       Set actor = actors(List1.Tag)&lt;br /&gt;       Dim actor_state As New Actor_State_Class&lt;br /&gt;       Set actor_state = actor.States(actor.State)&lt;br /&gt;       Dim actor_action As New Actor_Actions_Class&lt;br /&gt;       'using the action index we stored in the list itemdata array&lt;br /&gt;       Set actor_action = actor_state.Actions(List1.ItemData(List1.ListIndex))&lt;br /&gt;       'We are up and running with the action!&lt;br /&gt;      &lt;br /&gt;       'play sound&lt;br /&gt;       If Len(Trim(actor_action.Sound)) &gt; 0 Then&lt;br /&gt;           If Dir$(App.Path &amp;amp; "\" &amp;amp; actor_action.Sound) &lt;&gt; "" Then&lt;br /&gt;               u = sndPlaySound(App.Path &amp;amp; "\" &amp;amp; actor_action.Sound, 1)&lt;br /&gt;           End If&lt;br /&gt;       End If&lt;br /&gt;&lt;br /&gt;       'display response if there is one.&lt;br /&gt;       If actor_action.Response &lt;&gt; "" Then&lt;br /&gt;           Label1.Caption = actor_action.Response&lt;br /&gt;       End If&lt;br /&gt;&lt;br /&gt;       'play animation here&lt;br /&gt;      &lt;br /&gt;       'when animation complete, change states&lt;br /&gt;       If actor_action.NewStates &lt;&gt; "" Then&lt;br /&gt;           'p.s. actors on this page also need update the arrays&lt;br /&gt;           'states are seperated by spaces, e.g. A200=2 A302=4&lt;br /&gt;           Dim token As String, cond As String&lt;br /&gt;           Dim sp As Integer, op As Integer, equals As Integer&lt;br /&gt;           Dim lnum As Integer, rnum As Integer, a As Integer&lt;br /&gt;                      &lt;br /&gt;           cond = actor_action.NewStates &amp;amp; " "&lt;br /&gt;           sp = 1: op = 1&lt;br /&gt;           Do 'consume tokens until gone.&lt;br /&gt;               sp = InStr(sp + 1, cond, " ")&lt;br /&gt;               If sp &gt; 0 Then&lt;br /&gt;                   token = Trim(Mid$(cond, op, sp - op))&lt;br /&gt;                   lnum = Val(Right$(token, Len(token) - 1))&lt;br /&gt;                   equals = InStr(token, "=")&lt;br /&gt;                   If equals &gt; 0 Then rnum = Val(Right$(token, Len(token) - equals))&lt;br /&gt;                   'now change the actor or locations state&lt;br /&gt;                   If Left$(token, 1) = "A" Then 'actor&lt;br /&gt;                       Set actor = actors(Trim(Str(lnum)))&lt;br /&gt;                       actor.State = rnum&lt;br /&gt;                       'update the actors in the array&lt;br /&gt;                       Set actor_state = actor.States(Trim(Str(rnum)))&lt;br /&gt;                       For a = 1 To numactors&lt;br /&gt;                           If actor_number(a) = actor.Number Then&lt;br /&gt;                               actor_x(a) = actor_state.X&lt;br /&gt;                               actor_y(a) = actor_state.Y&lt;br /&gt;                               actor_cell(a) = actor_state.cell&lt;br /&gt;                               actor_mask(a) = actor_state.mask&lt;br /&gt;                               Exit For&lt;br /&gt;                           End If&lt;br /&gt;                       Next&lt;br /&gt;                   Else 'location&lt;br /&gt;                       Dim location As New Location_Class&lt;br /&gt;                       Set location = locations.Item(Trim(Str(lnum)))&lt;br /&gt;                       location.State = rnum&lt;br /&gt;                       'reload graphics if at this location&lt;br /&gt;                       If lnum = mylocation Then Load_Graphics_for_Location&lt;br /&gt;                   End If&lt;br /&gt;               End If&lt;br /&gt;               op = sp&lt;br /&gt;           Loop Until sp = 0&lt;br /&gt;       End If&lt;br /&gt;      &lt;br /&gt;       'change location&lt;br /&gt;       If actor_action.NewLocation &lt;&gt; "" Then&lt;br /&gt;           mylocation = Val(actor_action.NewLocation)&lt;br /&gt;           Load_Graphics_for_Location&lt;br /&gt;       End If&lt;br /&gt;      &lt;br /&gt;       Form_Paint 'repaint the page&lt;br /&gt;       MousePointer = 0 'normal&lt;br /&gt;   End If&lt;br /&gt;End Sub&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt; &lt;span style="font-family:Arial;"&gt;Now you can really see it coming together. You can now click on actors, the available actions are displayed. When you select an action states change, locations change and sounds play - only animation to go. &lt;/span&gt;&lt;p&gt; &lt;/p&gt;&lt;center&gt; &lt;span style="font-family:Arial;"&gt;&lt;img src="http://www.advantage.co.nz/ur/adv_shot4.jpg" height="172" width="517" /&gt; &lt;/span&gt;&lt;/center&gt;   &lt;p&gt; &lt;span style="font-family:Arial;"&gt;Enjoy&lt;br /&gt;&lt;a href="mailto:david@ur.co.nz"&gt;David Brebner&lt;/a&gt;   &lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4735792341523020531-4834328195611321997?l=basic-free-tutorials.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://basic-free-tutorials.blogspot.com/feeds/4834328195611321997/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4735792341523020531&amp;postID=4834328195611321997' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/4834328195611321997'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4735792341523020531/posts/default/4834328195611321997'/><link rel='alternate' type='text/html' href='http://basic-free-tutorials.blogspot.com/2008/01/lets-make-our-actions-do-something.html' title='Lets make our actions do something'/><author><name>ussman</name><uri>http://www.blogger.com/profile/10857046663444332134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4735792341523020531.post-346643903483838168</id><published>2008-01-28T11:56:00.001-08:00</published><updated>2008-01-28T11:56:41.333-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='visual basic'/><title type='text'>Lets get some actors</title><content type='html'>&lt;span style="font-family:Arial;"&gt; &lt;b&gt;Lets get some actors&lt;/b&gt; &lt;/span&gt;&lt;p&gt;  &lt;span style="font-family:Arial;"&gt;Well actors are all lumped together in the same collection. We need to figure out which are at this location. Although it is not the most efficient way, we will simply step through the actors collection displaying any actor that is at the current location. &lt;/span&gt;&lt;/p&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;Actors are represented on-screen as a cell from an actor file. You can find out all about how to create these files in the article about my actor editor. The spr file is a random access file which describes how to cut up a larger bitmap into individual frames of animation (or sprite cells). &lt;/span&gt;&lt;/p&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;To keep track of all this we need an array of picture objects to hold the images, and an array of sprite information to tell us how to cut the images up. This will also be used when we work with animation later on. &lt;/span&gt;&lt;/p&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;As a quick and dirty alternative to a more clever scheme we will simply store this actor data in arrays. The limitation of this technique is we impose an arbitrary limit (the size of the array), and we waste space (the unused elements) - but hey, this way you get to use both alternatives, dynamic (collections) and static (arrays). &lt;/span&gt;&lt;/p&gt;&lt;p&gt; &lt;span style="font-family:Arial;"&gt;Here are some global variables to hold the actor information; &lt;/span&gt;&lt;/p&gt;&lt;pre&gt;&lt;span style="font-family:Arial;"&gt;'lets be really rough as guts and set an arbitrary limit of 40 actors&lt;br /&gt;'per page purely for convenience (hence we will just make arrays that size)&lt;br /&gt;Dim actor_x(40) As Integer&lt;br /&gt;Dim actor_y(40) As Integer&lt;br /&gt;Dim actor_cell(40) As Integer&lt;br /&gt;Dim actor_mask(40) As Integer&lt;br /&gt;Dim actor_number(40) As Integer&lt;br /&gt;'and an arbitrary maximum of 100 cells per sprite file&lt;br /&gt;Dim spnox%(100, 40)&lt;br /&gt;Dim spnoy%(100, 40)&lt;br /&gt;Dim spnx%(100, 40)&lt;br /&gt;Dim spny%(100, 40)&lt;br /&gt;Dim spnw%(100, 40)&lt;br /&gt;Dim spnh%(100, 40) 'for each of 40 possible actors&lt;br /&gt;Dim numactors As Integer 'tells us how many on this page&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;span style="font-family:Arial;"&gt; Now that we have our arrays, we need to use the information in the actors collection to load data and to populate our arrays. A good time to do this is during the Load_Graphics_for_Location subroutine. &lt;/span&gt;&lt;pre&gt;&lt;span style="font-family:Arial;"&gt;    '************************&lt;br /&gt;   ' Load the actors&lt;br /&gt;   '************************&lt;br /&gt;   'lets be really rough as guts and set an arbitrary limit of 40 actors&lt;br /&gt;   'per page purely for convenience (hence we will just make arrays that size)&lt;br /&gt;   numactors = 0&lt;br /&gt;   Dim actor As New Actor_Class&lt;br /&gt;   Dim actor_state As New Actor_State_Class&lt;br /&gt;   Dim numspr%, d%&lt;br /&gt;  &lt;br /&gt;   For Each actor In actors&lt;br /&gt;       If actor.location = mylocation Then&lt;br /&gt;           'found a match!&lt;br /&gt;           numactors = numactors + 1&lt;br /&gt;           actor_number(numactors) = actor.Number&lt;br /&gt;           'load the picture, gif's or jpg's&lt;br /&gt;           If Dir$(App.Path &amp;amp; "\" &amp;amp; actor.SpriteFile &amp;amp; ".gif") &lt;&gt; "" Then&lt;br /&gt;               actor_images(numactors).Picture = LoadPicture(App.Path &amp;amp; "\" &amp;amp; actor.SpriteFile &amp;amp; ".gif")&lt;br /&gt;           ElseIf Dir$(App.Path &amp;amp; "\" &amp;amp; actor.SpriteFile &amp;amp; ".jpg") &lt;&gt; "" Then&lt;br /&gt;               actor_images(numactors).Picture = LoadPicture(App.Path &amp;amp; "\" &amp;amp; actor.SpriteFile &amp;amp; ".jpg")&lt;br /&gt;           End If&lt;br /&gt;           'load the spr file&lt;br /&gt;           Open App.Path &amp;amp; "\" &amp;amp; actor.SpriteFile &amp;amp; ".spr" For Random As #1 Len = 2&lt;br /&gt;           numspr% = LOF(1) \ 12 - 1&lt;br /&gt;           For d% = 0 To numspr%&lt;br /&gt;               Get #1, d% * 6 + 1, spnox%(d% + 1, numactors)&lt;br /&gt;               Get #1, d% * 6 + 2, spnoy%(d% + 1, numactors)&lt;br /&gt;               Get #1, d% * 6 + 3, spnx%(d% + 1, numactors)&lt;br /&gt;               Get #1, d% * 6 + 4, spny%(d% + 1, numactors)&lt;br /&gt;               Get #1, d% * 6 + 5, spnw%(d% + 1, numactors)&lt;br /&gt;               Get #1, d% * 6 + 6, spnh%(d% + 1, numactors)&lt;br /&gt;           Next&lt;br /&gt;           Close #1&lt;br /&gt;           'work out the current state&lt;br /&gt;           Set actor_state = actor.States(actor.State)&lt;br /&gt;           actor_x(numactors) = actor_state.x&lt;br /&gt;           actor_y(numactors) = actor_state.y&lt;br /&gt;           actor_cell(numactors) = actor_state.cell&lt;br /&gt;           actor_mask(numactors) = actor_state.mask&lt;br /&gt;          &lt;br /&gt;           If numactors = 40 Then Exit For 'whoops too many actors&lt;br /&gt;       End If&lt;br /&gt;   Next&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt; &lt;span style="font-family:Arial;"&gt;Put this code in the bottom of the Load_Graphics_for_Location sub. Have a look at the way I use dir$ to test if a file exists. This is cool because I can see if a gif OR a jpg exist before I try and load them. The other interesting part of this code 
