Well, what I suggested earlier was more or less (or at least was posted meaning):
- DO NOT use Winimage (it is not suited for the task because it deals mainly with Volumes and NOT Disks, and the rebuilding of hidden sectors often is "queer")
- DO NOT use RMPREPUSB (it is not suited for the task at hand because it has way too many options )
- You can use CloneDisk (though it is not needed and provides way too many options) BUT what you SHOULD really use is the dsfo/dsfi or *any* similar, simple DD-like tool capable of doing an exact clone of the disk, the additional advantage of using a command line tool is that its sintax and beaviour are easily describable and repeatable, whilst GUI tools may be more difficult to deal with (when it comes to describe their usage/settings)
You have to grasp this concept of making an exact copy of the whole disk or \\.\Physicaldrive , in this contents "read source" means nothing, you may well be reading just the volume (or writing just the volume).
The result with Winimage may boot, but likely you have an invalid filesystem extending beyond the actual size of the CF card.
The result of Clonedisk (even if it doesn't boot) is likely to be more accurate, but again there are many options in that tool that you don't really want/need and that may have led to the issue.
The result of RMPREPUSB means that you somehow managed to write the wrong bootsector to the volume (Windows NT/2K/XP bootector will look for NTLDR whilst the Vista and later bootsector will look for BOOTMGR).
It is possible that different CF cards, particularly when "switching" from 2 Gb to 4 Gb expose a different geometry to the BIOS (or the BIOS "expects" a different geometry).
Usually (FAT12/16) this is not an issue, but if you use XP or later and either FAT32 or NTFS, there may be this issue about the checking for geometry at boot time, which can be solved by adjusting geometry or patching the bootsector CODE, see:
Now, be nice forget all experiments you made till now.
get the DSFOK toolkit.
Connect the "original" CF Card to your system.
Open Disk Manager and find which Disk # it is, let's say Disk N.
Open a command prompt, navigate to where you unzipped the dsfo/dsfi, let's say C:\DSFOK and run:
dsfo \\.\PhysicalDriveN 0 0 my2GB.img
make DOUBLE sure that the N is the numebr corresponding to the CF card.
The C:\DSFOK\my2GB.img is now an exact, dd-like or "forensic sound" image of the "original".
Then try to deploy it to a new CF card, insert it and make sure that the Disk N is still the same and run:
dsfi \\.\PhysicalDriveN 0 0 my2GB.img
Now the "new" CF card is IDENTICAL, byte by byte, sector by sector to the "original", up to the max size of the "original" of course.
Whether this EXACT "clone" will boot (like the "original" did) or not may now depend on the way the target machine BIOS "sees" the device, and adjustments to the bootsector CODE (as said before) or to the actual CHS DATA in the MBR may be needed.
While you are at it, issue also this command:
dsfo \\.\PhysicalDriveN 0 51200 myfirst100.img
the myfirst100.img is a copy if the first 100 sectors, containing the MBR and (supposing you created the partitioning on XP) also of the bootsector of the first partition which is usually the active/booting one.
Compress the myfirst100.img to an archive like myfirst100.zip and either attach this file to your next post or upload it somewhere and provide a link to it, so that I can have a look at it contents and maybe understand where the issue may lie.