457 |
|
char *env_opt, *option; |
458 |
|
|
459 |
|
printf("\n\nAutodesk 3D Studio to Raytracer file Translator. Feb/96\n"); |
460 |
< |
printf("Version 2.0 Copyright (c) 1996 Steve Anger and Jeff Bowermaster\n"); |
461 |
< |
#ifdef __GNUC__ |
462 |
< |
printf ("32 bit version. DOS extender Copyright (c) 1991 DJ Delorie\n"); |
463 |
< |
#endif |
460 |
> |
printf("Version 2.0 by Steve Anger and Jeff Bowermaster 1996\n"); |
461 |
|
printf ("\n"); |
462 |
|
|
463 |
|
if (argc < 2) { |
2950 |
|
|
2951 |
|
float read_float() |
2952 |
|
{ |
2953 |
+ |
union { dword i; char c[8]; } u; |
2954 |
|
dword data; |
2955 |
|
|
2956 |
|
data = read_dword(); |
2957 |
|
|
2958 |
< |
return *(float *)&data; |
2958 |
> |
if (sizeof(dword) == sizeof(float)) |
2959 |
> |
return *(float *)&data; |
2960 |
> |
|
2961 |
> |
u.i = 1; |
2962 |
> |
if (u.c[0] == 0) |
2963 |
> |
return *(float *)&data; /* assume big-endian */ |
2964 |
> |
|
2965 |
> |
if (sizeof(dword) != 2*sizeof(float)) { |
2966 |
> |
fputs("Unsupported word length\n", stderr); |
2967 |
> |
exit(1); |
2968 |
> |
} |
2969 |
> |
u.i = data; |
2970 |
> |
return *(float *)&u.c[4]; |
2971 |
|
} |
2972 |
|
|
2973 |
|
|