Shoot, celebrated too soon. I rearranged it per your tutelage, Ron, and it's still giving an Illegal Instruction error!
From the adb output it looks like it's balking at the "14" instruction at location 24, which, based on the BSD updates you mentioned, I thought should've been taken as an arg, not an instruction, right?
I assume this worked for you on some BSD, right?
If so, is it a bug in the recent 2.11BSD patch release, perhaps? Anyone able to help me understand?
> vi hello.s
"hello.s" 8 lines, 52 characters
sys 4
1
a
6
sys 1
0
a: <Hello\n>
"hello.s" 7 lines, 78 characters
> as !$
as hello.s
> ./a.out
Illegal instruction (core dumped)
> od a.out
0000000 000407 000022 000000 000000 000010 000000 000000 000000
0000020 104404 000001 000014 000006 104401 000000 062510 066154
0000040 005157 000000 000000 000002 000000 000000 000000 000000
0000060 000000 000000 000000 000004 000002 000014 000000 000006
0000100 000141
0000102
> adb
adb> :s
stopped at 0: sys write
adb> :s
a.out: running
stopped at 04: <illegal op> 014
adb> :s
a.out: running
Illegal instruction
stopped at 06: rtt
adb> :s
a.out: running
Illegal instruction - core dumped
process terminated
adb> >