I've not done this myself but this method was fairly common on early CF card based carputers. I seriously recommend doing a lot of testing and backing up before going this route, even if its reasonably well documented. Bad Things Could Happen messing with critical system files, and setting up a frankensteined windows install.
Its going to need stuff from windows embedded, but you can, in theory use the EWF or enhanced write filter from XP embedded on windows XP to make a read only windows XP system
Instructions based off here and wikipedia
Download this and mount (with some ISO mounter) or use winzip to extract the files. You will need to copy ewfmgr.exe to \windows\system32 and ewf.sys to \windows\system32\drivers from the rep directory. Wikipedia also indicates you need to replace ntldr with ewfntldr
You will also need to create some registry entries - taken from here
Key Name:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ewf\Parameters\Protected\Volume0
Name: Enabled
Type: REG_DWORD
Value: 0
Name: Type
Type: REG_DWORD
Value: 0x00000001 (1)
Name: ArcName
Type: REG_SZ
Value: multi(0)disk(0)rdisk(0)partition(1)
Note The entry ArcName is the boot Arc path volume that you want to protect. Change the boot Arc path to protect a different volume on the system.
Key Name:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class{71A27CDD-812A-11D0-BEC7-08002BE2092F}
Name: UpperFilters
Type: REG_MULTI_SZ
Value: EWF
Note This key may already exist with the value of volsnap. If the value of this key is volsnap, add EWF to the value. EWF must be on a new line. For example:
Value: volsnap
EWF
You risk running out of ram - you can use a management utility for it, or type in ewfmgr c: