start it up and it gives me all these errors about how files are read only and froze during boot.
When a filesystem contains errors (say "dirty" flag still set due to improper umounting) and when those are not repaired (man fsck) and Linux is set to do so (man tune2fs) it will protect them by not mounting it read-write.
I had to force it to shut down
Forced shutdowns are never good. If you can, and if "three finger salutes" (sysrq) are enabled (echo 1 > /proc/sys/kernel/sysrq), then you could use the key combo's: alt+printscreen+s (sync), alt+printscreen+u (umount), alt+printscreen+b (boot), (or alternatively "echo s > /proc/sysrq-trigger") to do a more "controlled" reboot.
Bad magin number in super-block
Being verbose and exact when posting error messages (it's magic) always helps.
Is there anything I can do?
If the system isn't that badly damaged, try booting it into runlevel 1 (search LQ for how to do that with your bootloader) and find the other superblocks for the device with mkfs.ext3 -n devicename (so: mkfs.ext3 -n /dev/hda1). Now supply one of the superblocks to fsck with the "-b" option until you find a usable one. If the system is badly damaged you may want to check booting your distribution's rescue disk instead, or use KNOPPIX. When this all is completed determine if you need a(n automated) backup mechanism to restore crucial data just in case.