1.) Are you running Linux of ANY flavor regularly on any of you machines? Or is your first experince with Linux and/or Puppy just trying to recovery your data? (from what you are saying I get the sense that it is the latter)
2.) "Crashed" means many things to many people,so exactly what error are you seeing when you try to load Vista? This is important. Since you can get puppy running I DON'T think you are suffering a critical hardware failure (CPU/RAM/Mainboard/Vidcard), but if you are, then no operating system (Linux/Windows/MAC OS/FreeBSD etc.) will run properly. Hopefully you only have a corrupted OS, rather than failing hardware. If your HardDrive is failing, you may be able to load puppy but not read the contents of the failing disk.
3.) You say you cannot find you external Harddrive. Is it USB? Are you sure its plugged in? Obvious question but lets cover the basics.
In a windows system, Hard drives are Identified by partition, with a letter. The Partition with the Windows OS is almost Always C:, additional partitions the get addition letter (D:, E:, F;, etc.), even if the are on the same physical hard drive, other drives, floppy and CD/DVD. also get letters. Most windows computer have two or 3 partitions, a c: drive that has most of the space and an additional section that has the restore utility (this is usually hidden from the user), some may even have a 3rd, having the space on the primary drive divided into two equal sections, one for the OS and the other as a D: drive so you can wipe the OS drive (c:) and still have a data drive intact. This is common on Sony's
Linux does things differently, Identifying the first partition on the first physical disk as /sda1, the second partition on the first disk as /sda2, and the second partition on the second disk as /sdb2 and so on; so it will be /sd [letter of physical disk] {Partition Number}/ (there is more on how this works in linux on the internet but that should be enough info for now)
From what you describe,
sr0 should be the CD/DVD drive, not what we are looking for. The other 4 entires appear to be partitions 1,2,3 and 4 on the first hard disk in your computer, suggesting you have 3 primary partitons and and extended partition. This is not usual on most setups unless you are or were dual booting. If you have 4 partitions on your external Hard Drive, this might make sense if you are Only seeing the external drive and the internal drive is not show because it has failed,sda1, sda2, sda3, sda5, sr0
Otherwise , I would expect your external Hard Drive to show up as /sdb1/ or similar
If sda is your internal Hard Drive, the single largest partition is likely your C:\ drive. so of sda1 ..2 ..3 and ..5 what is the largest?
In Windows Vista your personal data is saved in your User Account's "My Documents" directory, or the "My Pictures, My Music" and so on, sub-directories in "My Documents". So if your account was "John" and you were looking for John's "My Pictures" it would be located in C:\Users\John\My documents\My Pictures\ . Or possibly C:\Users\John\John's documents\My Pictures\ In Puppy, C:\ is instead one of sda1, ..2, ..3, ..5, the above example becomes "/sda2/Users/John/My documents/My Pictures/" so you need to look for a "Users" directory in one of those entries.
However, that is Only the Default, since you can save files anywhere you want you may have to hunt around for it.
Hope that helps.