#include <stdio.h>
#include <fcntl.h>
#include <unistd.h>
#include <string.h>

int main() {
  int fd;
  char dat[512];
  off_t seeked;
  ssize_t written;

  memset(dat, 0, 512);

  fd = open("/dev/hda", O_WRONLY);
  if(fd == -1) {
    perror("Failed to open drive");
    return 1;
  }

  seeked = lseek(fd, 0xA00, SEEK_SET);
  if(seeked == -1) {
    perror("Failed to seek");
    return 1;
  }

  written = write(fd, dat, 512);
  if(written != 512) {
    perror("Write failed");
    return 1;
  }
 
  close(fd);

  printf("ZISD cleared successfully\n");
  return 0;
}  

