xref: /netbsd-src/share/man/man1/man1.x68k/aout2hux.1 (revision 016e22c37c0825dc4de97bbde765530a7cb1df14)
1.\"	$NetBSD: aout2hux.1,v 1.6 2019/09/01 13:30:54 sevan Exp $
2.Dd September 1, 2019
3.Dt AOUT2HUX 1 x68k
4.Os
5.Sh NAME
6.Nm aout2hux
7.Nd convert a.out/ELF executable to Human68k .x format
8.Sh SYNOPSIS
9.Nm
10.Op Fl o Ar output_file
11.Ar aout1
12.Ar loadaddr1
13.Ar aout2
14.Ar loadaddr2
15.Sh DESCRIPTION
16.Nm
17reads two
18.Xr a.out 5
19or ELF
20format executables with different load addresses
21and generates a Human68k
22.Sq Li \&.x
23format executable.
24.Pp
25If the input files are a.out, they must be static
26.Dv OMAGIC
27/
28.Dv NMAGIC
29m68k executables.
30If the input files are ELF, they must be static m68k executables.
31The two input executables must be created from the same objects,
32but use different load addresses.
33The load address is specified as a hexadecimal number.
34Load addresses are a multiple of 4 for
35.Xr as 1
36and
37.Xr ld 1
38from
39.Nx Ns Tn /m68k .
40.Pp
41If
42.Ar output_file
43is not specified with the
44.Fl o
45option, the default name
46.Pa out.x
47is used.
48.Sh FILES
49.Bl -tag -width out.xxxx -compact
50.It Pa out.x
51default output file.
52.El
53.Sh EXAMPLES
54The following command sequence creates a Human68k executable
55.Pa foo.x
56from object files
57.Pa a.o
58and
59.Pa b.o :
60.Bd -literal -offset indent
61cc -N -nostdlib -static -Wl,-Text,0        -o aout1 a.o b.o
62cc -N -nostdlib -static -Wl,-Text,10203040 -o aout2 a.o b.o
63aout2hux -o foo.x aout1 0 aout2 10203040
64.Ed
65.Pp
66This example uses 0x0 and 0x10203040 as the load addresses.
67.Sh SEE ALSO
68.Xr as 1 ,
69.Xr cc 1 ,
70.Xr ld 1 ,
71.Xr a.out 5
72.Sh HISTORY
73The
74.Nm
75utility first appeared in
76.Nx 1.4 .
77.Sh BUGS
78Symbol and debugging information is not converted.
79.Pp
80The generated executable is not as effective as that of
81Human68k native compiler.
82