@mohit.kishor First, you probably need to figure out which boot files you’re ACTUALLY using. From the sounds of things, your layout is still setup as it once was for 0.32 which will not work (as you’re no doubt finding).
When 1.0.0 was released, the mode of booting had switched from using pxelinux.0 to using undionly.kpxe which allows the use of http protocals. TFTP is limited to transfer rates of only 10Mbps, where TFTP is limited by the network itself (e.g. a gig network can send data at 1000Mbps).
It is suggested to use undionly.kpxe as the boot file rather than using pxelinux.0 (which didn’t ship with 1.2.0 to begin with).
The files that should be used are not located in /tftpboot/fog/kernel/bzImage or /tftpboot/fog/images/init.gz anymore. You can, of course, customize these items, but the relative paths (the fog/images or fog/kernel part of the path) is relative to the web side (meaning you can download the kernel from your fogserver if you go to http://<ipoffogserver>/fog/service/ipxe/bzImage or http://<ipoffogserver>/fog/service/ipxe/init.xz
The file compression changed from gunzip (the .gz) to xz as well.
The files are separated by their “bitness” meaning bzImage and init.xz are “64 bit” and bzImage32 and init_32.xz are “32 bit”.
The location where FOG can look to download these files is defined in database values under:
FOG Configuration Page (The circle ? in 1.2.0) -> FOG Settings -> TFTP Server -> (FOG_TFTP_PXE_KERNEL, FOG_PXE_BOOT_IMAGE 64 bit) and (FOG_TFTP_PXE_KERNEL_32, FOG_PXE_BOOT_IMAGE_32 32bit). The path, directing fog where to locate these files has an absolute path (for simplifying where the files are to be expected) and is defined under the same element with the KEY FOG_TFTP_PXE_KERNEL_DIR. (Please, keep in mind, that fog uses URL’s to download the files it needs so changing the expected location of the files does not necessarily mean FOG will be able to boot if permissions are incorrect for the location of where to expect those files).
I hope this can help lead you in the right direction.