P2(PUBLIC pascal trap, OSErr, DIZero, INTEGER, dn, StringPtr, vname) { OSErr err; LONGINT time; int name_len; char *name; our_file_info_t oi; name_len = vname[0]; name = alloca(name_len + 1); memcpy(name, vname+1, name_len); name[name_len] = 0; GetDateTime(&time); err = get_vref_dref (dn, &oi.vref, &oi.dref); if (err == noErr) { oi.pos = 0; err = begin_track_buffering_for_write (); if (err == noErr) { OSErr err2; err = format_disk(time, name, FLOPPY_SECTORS_PER_DISK, writefunc, (int) &oi); err2 = end_track_buffering_for_write (&oi); if (err == noErr) err = err2; } } return err; }
int main(int argc,char **argv) { int ctrl; int verify; struct stat st; char *progname, *p; progname = argv[0]; if ((p = strrchr(progname, '/')) != NULL) progname = p+1; setlocale(LC_ALL, ""); bindtextdomain(PACKAGE, LOCALEDIR); textdomain(PACKAGE); if (argc == 2 && (!strcmp(argv[1], "-V") || !strcmp(argv[1], "--version"))) { printf(_("%s from %s\n"), progname, util_linux_version); exit(0); } verify = 1; if (argc > 1 && argv[1][0] == '-') { if (argv[1][1] != 'n') usage(progname); verify = 0; argc--; argv++; } if (argc != 2) usage(progname); if (stat(argv[1],&st) < 0) PERROR(argv[1]); if (!S_ISBLK(st.st_mode)) { fprintf(stderr,_("%s: not a block device\n"),argv[1]); exit(1); /* do not test major - perhaps this was an USB floppy */ } if (access(argv[1],W_OK) < 0) PERROR(argv[1]); ctrl = open(argv[1],O_WRONLY); if (ctrl < 0) PERROR(argv[1]); if (ioctl(ctrl,FDGETPRM,(long) ¶m) < 0) PERROR(_("Could not determine current format type")); printf(_("%s-sided, %d tracks, %d sec/track. Total capacity %d kB.\n"), (param.head == 2) ? _("Double") : _("Single"), param.track, param.sect,param.size >> 1); format_disk(ctrl, argv[1]); close(ctrl); if (verify) verify_disk(argv[1]); return 0; }
static int _mklmfs(char *disk, char *dir) { struct lmfs_address *paddress = &address; int inode; int ret; format_disk(disk, paddress, MAX_FILE); ret = create_files(dir, 0); dump_super_block(address.p_sb); return ret; }
int main(int argc, char *argv[]) { vir_machine_init(); bootstrap(); os_init(); char order[800]; int i; while (1) { echo_mip4(); mips_want_get_string(order, 799); switch(order[0]) { case 'e': sys_exec(order + 2); break; case 'f': format_disk(); write_stdout("successfully formats the disk!\n", F_WHITE, B_BLACK); break; case 'c': sys_create(order + 2); write_stdout("successfully create file\n", F_WHITE, B_BLACK); break; case 'w': // copy the file to disk! { char *name = order + 2; // only one spaces ! sys_create(name); int fid = sys_open(name); int obj_id = open(name, O_RDONLY); while (1) { int buf; if (read(obj_id, &buf, 1) == 0) break; char char_buf = (char)buf; sys_write(fid, &char_buf, 1); } sys_close(fid); write_stdout("successfully write file\n", F_WHITE, B_BLACK); break; } } } return 0; }
main(int argc,char **argv) { int verify; char *name; name = argv[0]; verify = 1; if (argc > 1 && argv[1][0] == '-') { if (argv[1][1] != 'n') usage(name); verify = 0; argc--; argv++; } if (argc != 2) usage(name); if ((ctrl = open(argv[1],3)) < 0) PERROR(argv[1]); if (ioctl(ctrl,FDGETPRM,(int) ¶m) < 0) PERROR("ioctl(FDGETPRM)"); printf("%sle-sided, %d tracks, %d sec/track. Total capacity %d kB.\n", param.head ? "Doub" : "Sing",param.track,param.sect,param.size >> 1); format_disk(argv[1]); if (verify) verify_disk(argv[1]); }
int fdformat_main(int argc,char **argv) { int ctrl; int verify; struct stat st; struct floppy_struct param; if (argc < 2) { bb_show_usage(); } verify != bb_getopt_ulflags(argc, argv, "n"); argv += optind; if (stat(*argv,&st) < 0 || access(*argv,W_OK) < 0) { bb_perror_msg_and_die(*argv); } if (!S_ISBLK(st.st_mode)) { bb_error_msg_and_die("%s: not a block device",*argv); /* do not test major - perhaps this was an USB floppy */ } ctrl = bb_xopen(*argv,O_WRONLY); if (ioctl(ctrl,FDGETPRM,(long) ¶m) < 0) { bb_perror_msg_and_die("Could not determine current format type"); } printf("%s-sided, %d tracks, %d sec/track. Total capacity %d kB.\n", (param.head == 2) ? "Double" : "Single", param.track, param.sect,param.size >> 1); format_disk(ctrl, *argv, ¶m); close(ctrl); if (verify) { verify_disk(*argv, ¶m); } return EXIT_SUCCESS; }
int main(int argc, char **argv) { int ch; int ctrl; int verify = 1; struct stat st; static const struct option longopts[] = { {"no-verify", no_argument, NULL, 'n'}, {"version", no_argument, NULL, 'V'}, {"help", no_argument, NULL, 'h'}, {NULL, 0, NULL, 0} }; setlocale(LC_ALL, ""); bindtextdomain(PACKAGE, LOCALEDIR); textdomain(PACKAGE); atexit(close_stdout); while ((ch = getopt_long(argc, argv, "nVh", longopts, NULL)) != -1) switch (ch) { case 'n': verify = 0; break; case 'V': printf(_("%s from %s\n"), program_invocation_short_name, PACKAGE_STRING); exit(EXIT_SUCCESS); case 'h': usage(stdout); default: usage(stderr); } argc -= optind; argv += optind; if (argc < 1) usage(stderr); if (stat(argv[0], &st) < 0) err(EXIT_FAILURE, _("cannot stat file %s"), argv[0]); if (!S_ISBLK(st.st_mode)) /* do not test major - perhaps this was an USB floppy */ errx(EXIT_FAILURE, _("%s: not a block device"), argv[0]); if (access(argv[0], W_OK) < 0) err(EXIT_FAILURE, _("cannot access file %s"), argv[0]); ctrl = open(argv[0], O_WRONLY); if (ctrl < 0) err(EXIT_FAILURE, _("cannot open file %s"), argv[0]); if (ioctl(ctrl, FDGETPRM, (long)¶m) < 0) err(EXIT_FAILURE, _("Could not determine current format type")); printf(_("%s-sided, %d tracks, %d sec/track. Total capacity %d kB.\n"), (param.head == 2) ? _("Double") : _("Single"), param.track, param.sect, param.size >> 1); format_disk(ctrl); close(ctrl); if (verify) verify_disk(argv[0]); return EXIT_SUCCESS; }
int main( int argc, char *argv[] ) { extern char *optarg; int ch; int formatdisk = 0; int dumpblock = 0; int examinedisk = 0; int track = -1; int sector = -1; char *binary = NULL; char *disk = NULL; FILE *disk_fp; char *open_mode; disk = argv[1]; while( (ch = getopt(argc-1, &argv[1], "vdfdxb:t:s:")) != -1 ) switch(ch) { case 'v': { verbose = 1; break; } case 'f': { formatdisk = 1; break; } case 'd': { dumpblock = 1; break; } case 'x': { examinedisk = 1; break; } case 'b': { binary = optarg; break; } case 't': { track = atoi(optarg); break; } case 's': { sector = atoi(optarg); break; } case '?': case 'h': default: usage(); } if( disk == NULL ) { fprintf( stderr, "error: no disk image specified\n" ); exit(1); } if( formatdisk ) open_mode="w+"; else open_mode="r+"; if( (disk_fp = fopen(disk, open_mode)) == NULL ) { perror( disk ); exit(1); } if( formatdisk ) format_disk( &disk_fp ); if( binary != NULL ) { sanity_check( track, sector ); insert_binary( &disk_fp, binary, track, sector ); } if( dumpblock ) { sanity_check( track, sector ); dump_block( &disk_fp, track, sector ); } fclose( disk_fp ); return 0; }