Diskettenimages erzeugst du z.B. direkt im NASM, indem du mit der "times"-Anweisung das Ding bis zur 512er-Grenze auffüllst, den Sektor also vollmachst.
Anschließend "brennst" du diese auf Diskette, z.B. mit
dd if=image.bin of=/dev/fd0 bs=512 conv=sync
welches nur den ersten Sektor der realen Floppy schreibt.
Ansonsten kannst du auch direkt mit der "times"-Anweisung bis 2880*512 Bytes auffüllen lassen, es entsteht dann ein 1.44 MB-Image.
Booten tut das Image nur bei gültiger Bootsignatur (letzte 2 Bytes vor Sektorende) und als Floppy korrekt erkannt wird es auch nur bei exakt passender Dateigröße.
Ansonsten beschreibe doch mal den Fehler?
Gruß,
Svenska