GSP COFF Assembler, Version 2.00, 87.300 Sun Oct 18 14:11:10 2026 (c) Copyright 1985, 1987, Texas Instruments Inc. PAGE 1 0001 ; xlaunch.asm -- create a *first-class* process whose e 0002 ; 0003 ; The rdebug `jump` payload runs inside the "remote deb 0004 ; H3 is that this process context is not a valid X clie 0005 ; therefore calls the OS's own create_process so xhello 0006 ; with its own PCB, user area (fd table) and 0x6000-byt 0007 ; Telnet handler does at ROM 07EDA7A0 (bits 3F6D4340..3 0008 ; 0009 ; create_process(entry="Telnet", name, 0x6000, 1, a 0010 ; 0011 ; create_process = bits 3F706A40 (Ghidra 07EE0D48). 0012 ; 0013 ; Markers (32-bit cells, bit addresses): 0014 ; 01860120 PCB returned by create_process (0 = failu 0015 ; 01860140 stage (1 = entered, 2 = create_process re 0016 ; 01860400 entry A14 0017 ; 01860420 entry SP 0018 ; 0019 ; The new process runs xhello.bin, linked at bit 018400 0020 0021 00000000 .text 0022 00000000 _start: 0023 00000000 0550 setf 16, 0, 0 0024 00000010 0740 setf 32, 0, 1 0025 00000020 098F mmtm sp, a0,a1,a2,a3,a4,a5,a6,a7 00000030 FF00 0026 0027 00000040 078F move sp, @01860420h, 1 ; entry SP 00000050 01860420 0028 00000070 078E move a14, @01860400h, 1 ; entry A14 00000080 01860400 0029 0030 000000A0 09E0 movi 1, a0, L 000000B0 00000001 0031 000000D0 0780 move a0, @01860140h, 1 ; stage = 1 000000E0 01860140 0032 0033 ; ---- create_process(0x01840000, "0::0", 0x6000, 1, 0 0034 ; Arguments are pushed last-first, upward through A14, 0035 ; else in this firmware. 0036 00000100 A3CF move a14, -*sp, 1 0037 00000110 09EE movi 01862000h, a14, L 00000120 01862000 0038 00000140 09E0 movi 0, a0, L 00000150 00000000 0039 00000170 920E move a0, *a14+, 1 ; arg4 = 0 (process argument) 0040 00000180 09E0 movi 1, a0, L 00000190 00000001 0041 000001B0 920E move a0, *a14+, 1 ; arg3 = 1 0042 000001C0 09E0 movi 06000h, a0, L 000001D0 00006000 0043 000001F0 920E move a0, *a14+, 1 ; arg2 = stack size 0044 00000200 09E0 movi 3F30DC00h, a0, L ; ROM "0::0" (any short name wil 00000210 3F30DC00 0045 00000230 920E move a0, *a14+, 1 ; arg1 = name 0046 00000240 09E0 movi 01840000h, a0, L ; xhello entry GSP COFF Assembler, Version 2.00, 87.300 Sun Oct 18 14:11:10 2026 (c) Copyright 1985, 1987, Texas Instruments Inc. PAGE 2 00000250 01840000 0047 00000270 920E move a0, *a14+, 1 ; arg0 = entry 0048 00000280 0D5F calla 3F706A40h ; create_process 00000290 3F706A40 0049 000002B0 07AF move @01860420h, sp, 1 000002C0 01860420 0050 000002E0 07AE move @01860400h, a14, 1 000002F0 01860400 0051 0052 00000310 0788 move a8, @01860120h, 1 ; MARK PCB 00000320 01860120 0053 00000340 09E0 movi 2, a0, L 00000350 00000002 0054 00000370 0780 move a0, @01860140h, 1 ; stage = 2 00000380 01860140 0055 0056 000003A0 done: 0057 000003A0 09AF mmfm sp, a0,a1,a2,a3,a4,a5,a6,a7 000003B0 00FF 0058 000003C0 09E8 movi 0, a8, L 000003D0 00000000 0059 000003F0 0960 rets 0060 .end No Errors, No Warnings