Files
CydandClaude Fable 5 db7745fcd0 sda4: commit the Glaze developer hard-drive dump
Un-ignored: the dev drive is the ground truth the restoration and
emulator work constantly reference (DPL3/LIBDPL + VRENDER i860 renderer
source, BT/RP live+dev game trees, VGL_LABS pod boot, scene/audio
content). Kept in-repo for the pod-owner community.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-04 19:41:15 -05:00

464 lines
25 KiB
ArmAsm

Module: linkio.c
Group: 'DGROUP' CONST,CONST2,_DATA,_BSS
Segment: _TEXT BYTE USE32 00000479 bytes
0000 68 24 00 00 00 linkio_error_ push 00000024H
0005 e8 00 00 00 00 call __CHK
000a 53 push ebx
000b 51 push ecx
000c 52 push edx
000d 56 push esi
000e 57 push edi
000f 55 push ebp
0010 89 e5 mov ebp,esp
0012 81 ec 04 00 00 00 sub esp,00000004H
0018 89 45 fc mov -4H[ebp],eax
001b ff 75 fc push -4H[ebp]
001e e8 00 00 00 00 call printf_
0023 83 c4 04 add esp,00000004H
0026 c7 05 00 00 00 00
01 00 00 00 mov dword ptr ___connected,00000001H
0030 89 ec mov esp,ebp
0032 5d pop ebp
0033 5f pop edi
0034 5e pop esi
0035 5a pop edx
0036 59 pop ecx
0037 5b pop ebx
0038 c3 ret
0039 68 20 00 00 00 setLA_ push 00000020H
003e e8 00 00 00 00 call __CHK
0043 53 push ebx
0044 51 push ecx
0045 52 push edx
0046 56 push esi
0047 57 push edi
0048 55 push ebp
0049 89 e5 mov ebp,esp
004b 81 ec 04 00 00 00 sub esp,00000004H
0051 89 45 fc mov -4H[ebp],eax
0054 8b 45 fc mov eax,-4H[ebp]
0057 a3 00 00 00 00 mov _inputData,eax
005c a1 00 00 00 00 mov eax,_inputData
0061 40 inc eax
0062 a3 00 00 00 00 mov _outputData,eax
0067 a1 00 00 00 00 mov eax,_outputData
006c 40 inc eax
006d a3 00 00 00 00 mov _inputStatus,eax
0072 a1 00 00 00 00 mov eax,_inputStatus
0077 40 inc eax
0078 a3 00 00 00 00 mov _outputStatus,eax
007d 8b 45 fc mov eax,-4H[ebp]
0080 83 c0 10 add eax,00000010H
0083 a3 00 00 00 00 mov _resetRoot,eax
0088 a1 00 00 00 00 mov eax,_resetRoot
008d 40 inc eax
008e a3 00 00 00 00 mov _analyseRoot,eax
0093 89 ec mov esp,ebp
0095 5d pop ebp
0096 5f pop edi
0097 5e pop esi
0098 5a pop edx
0099 59 pop ecx
009a 5b pop ebx
009b c3 ret
009c 68 1c 00 00 00 initLA_ push 0000001cH
00a1 e8 00 00 00 00 call __CHK
00a6 53 push ebx
00a7 51 push ecx
00a8 52 push edx
00a9 56 push esi
00aa 57 push edi
00ab 55 push ebp
00ac 89 e5 mov ebp,esp
00ae 81 ec 00 00 00 00 sub esp,00000000H
00b4 5d pop ebp
00b5 5f pop edi
00b6 5e pop esi
00b7 5a pop edx
00b8 59 pop ecx
00b9 5b pop ebx
00ba c3 ret
00bb 68 2c 00 00 00 outputOrFail_ push 0000002cH
00c0 e8 00 00 00 00 call __CHK
00c5 53 push ebx
00c6 51 push ecx
00c7 52 push edx
00c8 56 push esi
00c9 57 push edi
00ca 55 push ebp
00cb 89 e5 mov ebp,esp
00cd 81 ec 0c 00 00 00 sub esp,0000000cH
00d3 88 45 fc mov -4H[ebp],al
00d6 83 3d 00 00 00 00
00 cmp dword ptr ___connected,00000000H
00dd 74 4d je L6
00df 31 d2 xor edx,edx
00e1 8a 55 fc mov dl,-4H[ebp]
00e4 a1 00 00 00 00 mov eax,_outputData
00e9 e8 00 00 00 00 call outp_
00ee c7 45 f8 00 00 00
00 mov dword ptr -8H[ebp],00000000H
00f5 81 7d f8 40 9c 00
00 L1 cmp dword ptr -8H[ebp],00009c40H
00fc 7c 07 jl L3
00fe eb 1e jmp L5
0100 ff 45 f8 L2 inc dword ptr -8H[ebp]
0103 eb f0 jmp L1
0105 a1 00 00 00 00 L3 mov eax,_outputStatus
010a e8 00 00 00 00 call inp_
010f a8 01 test al,01H
0111 74 09 je L4
0113 c7 45 f4 01 00 00
00 mov dword ptr -0cH[ebp],00000001H
011a eb 17 jmp L7
011c eb e2 L4 jmp L2
011e b8 00 00 00 00 L5 mov eax,offset L41
0123 50 push eax
0124 e8 00 00 00 00 call printf_
0129 83 c4 04 add esp,00000004H
012c c7 45 f4 00 00 00
00 L6 mov dword ptr -0cH[ebp],00000000H
0133 8b 45 f4 L7 mov eax,-0cH[ebp]
0136 89 ec mov esp,ebp
0138 5d pop ebp
0139 5f pop edi
013a 5e pop esi
013b 5a pop edx
013c 59 pop ecx
013d 5b pop ebx
013e c3 ret
013f 68 28 00 00 00 inputOrFail_ push 00000028H
0144 e8 00 00 00 00 call __CHK
0149 53 push ebx
014a 51 push ecx
014b 52 push edx
014c 56 push esi
014d 57 push edi
014e 55 push ebp
014f 89 e5 mov ebp,esp
0151 81 ec 0c 00 00 00 sub esp,0000000cH
0157 89 45 f4 mov -0cH[ebp],eax
015a 83 3d 00 00 00 00
00 cmp dword ptr ___connected,00000000H
0161 74 54 je L13
0163 c7 45 fc 00 00 00
00 mov dword ptr -4H[ebp],00000000H
016a 81 7d fc 40 9c 00
00 L8 cmp dword ptr -4H[ebp],00009c40H
0171 7c 07 jl L10
0173 eb 2f jmp L12
0175 ff 45 fc L9 inc dword ptr -4H[ebp]
0178 eb f0 jmp L8
017a a1 00 00 00 00 L10 mov eax,_inputStatus
017f e8 00 00 00 00 call inp_
0184 a8 01 test al,01H
0186 74 1a je L11
0188 a1 00 00 00 00 mov eax,_inputData
018d e8 00 00 00 00 call inp_
0192 89 c2 mov edx,eax
0194 8b 45 f4 mov eax,-0cH[ebp]
0197 88 10 mov [eax],dl
0199 c7 45 f8 01 00 00
00 mov dword ptr -8H[ebp],00000001H
01a0 eb 1c jmp L14
01a2 eb d1 L11 jmp L9
01a4 b8 16 00 00 00 L12 mov eax,offset L42
01a9 e8 00 00 00 00 call linkio_error_
01ae c7 45 f8 00 00 00
00 mov dword ptr -8H[ebp],00000000H
01b5 eb 07 jmp L14
01b7 c7 45 f8 00 00 00
00 L13 mov dword ptr -8H[ebp],00000000H
01be 8b 45 f8 L14 mov eax,-8H[ebp]
01c1 89 ec mov esp,ebp
01c3 5d pop ebp
01c4 5f pop edi
01c5 5e pop esi
01c6 5a pop edx
01c7 59 pop ecx
01c8 5b pop ebx
01c9 c3 ret
01ca 68 20 00 00 00 resetLoop_ push 00000020H
01cf e8 00 00 00 00 call __CHK
01d4 53 push ebx
01d5 51 push ecx
01d6 52 push edx
01d7 56 push esi
01d8 57 push edi
01d9 55 push ebp
01da 89 e5 mov ebp,esp
01dc 81 ec 04 00 00 00 sub esp,00000004H
01e2 e8 00 00 00 00 call clock_
01e7 89 45 fc mov -4H[ebp],eax
01ea e8 00 00 00 00 L15 call clock_
01ef 3b 45 fc cmp eax,-4H[ebp]
01f2 74 f6 je L15
01f4 e8 00 00 00 00 L16 call clock_
01f9 3b 45 fc cmp eax,-4H[ebp]
01fc 74 f6 je L16
01fe 89 ec mov esp,ebp
0200 5d pop ebp
0201 5f pop edi
0202 5e pop esi
0203 5a pop edx
0204 59 pop ecx
0205 5b pop ebx
0206 c3 ret
0207 68 1c 00 00 00 reset_ push 0000001cH
020c e8 00 00 00 00 call __CHK
0211 53 push ebx
0212 51 push ecx
0213 52 push edx
0214 56 push esi
0215 57 push edi
0216 55 push ebp
0217 89 e5 mov ebp,esp
0219 81 ec 00 00 00 00 sub esp,00000000H
021f 31 d2 xor edx,edx
0221 a1 00 00 00 00 mov eax,_analyseRoot
0226 e8 00 00 00 00 call outp_
022b 31 d2 xor edx,edx
022d a1 00 00 00 00 mov eax,_resetRoot
0232 e8 00 00 00 00 call outp_
0237 e8 00 00 00 00 call resetLoop_
023c ba 01 00 00 00 mov edx,00000001H
0241 a1 00 00 00 00 mov eax,_resetRoot
0246 e8 00 00 00 00 call outp_
024b e8 00 00 00 00 call resetLoop_
0250 31 d2 xor edx,edx
0252 a1 00 00 00 00 mov eax,_outputStatus
0257 e8 00 00 00 00 call outp_
025c 31 d2 xor edx,edx
025e a1 00 00 00 00 mov eax,_inputStatus
0263 e8 00 00 00 00 call outp_
0268 31 d2 xor edx,edx
026a a1 00 00 00 00 mov eax,_resetRoot
026f e8 00 00 00 00 call outp_
0274 5d pop ebp
0275 5f pop edi
0276 5e pop esi
0277 5a pop edx
0278 59 pop ecx
0279 5b pop ebx
027a c3 ret
027b 68 34 00 00 00 outRecord_ push 00000034H
0280 e8 00 00 00 00 call __CHK
0285 53 push ebx
0286 51 push ecx
0287 56 push esi
0288 57 push edi
0289 55 push ebp
028a 89 e5 mov ebp,esp
028c 81 ec 1c 00 00 00 sub esp,0000001cH
0292 89 45 e4 mov -1cH[ebp],eax
0295 89 55 e8 mov -18H[ebp],edx
0298 e8 00 00 00 00 call clock_
029d 89 45 f0 mov -10H[ebp],eax
02a0 83 3d 00 00 00 00
00 cmp dword ptr ___connected,00000000H
02a7 0f 84 89 00 00 00 je L27
02ad c7 45 f8 00 00 00
00 mov dword ptr -8H[ebp],00000000H
02b4 8b 45 f8 L17 mov eax,-8H[ebp]
02b7 3b 45 e8 cmp eax,-18H[ebp]
02ba 7c 0a jl L19
02bc e9 6c 00 00 00 jmp L26
02c1 ff 45 f8 L18 inc dword ptr -8H[ebp]
02c4 eb ee jmp L17
02c6 c7 45 fc 00 00 00
00 L19 mov dword ptr -4H[ebp],00000000H
02cd eb 05 L20 jmp L22
02cf ff 45 fc L21 inc dword ptr -4H[ebp]
02d2 eb f9 jmp L20
02d4 a1 00 00 00 00 L22 mov eax,_outputStatus
02d9 e8 00 00 00 00 call inp_
02de a8 01 test al,01H
02e0 74 16 je L23
02e2 8b 45 e4 mov eax,-1cH[ebp]
02e5 ff 45 e4 inc dword ptr -1cH[ebp]
02e8 31 d2 xor edx,edx
02ea 8a 10 mov dl,[eax]
02ec a1 00 00 00 00 mov eax,_outputData
02f1 e8 00 00 00 00 call outp_
02f6 eb 33 jmp L25
02f8 81 7d fc 40 9c 00
00 L23 cmp dword ptr -4H[ebp],00009c40H
02ff 7c 28 jl L24
0301 c7 45 fc 00 00 00
00 mov dword ptr -4H[ebp],00000000H
0308 e8 00 00 00 00 call clock_
030d 89 45 f4 mov -0cH[ebp],eax
0310 8b 45 f4 mov eax,-0cH[ebp]
0313 2b 45 f0 sub eax,-10H[ebp]
0316 3d f4 01 00 00 cmp eax,000001f4H
031b 76 0c jbe L24
031d b8 2b 00 00 00 mov eax,offset L43
0322 e8 00 00 00 00 call linkio_error_
0327 eb 0d jmp L27
0329 eb a4 L24 jmp L21
032b eb 94 L25 jmp L18
032d c7 45 ec 01 00 00
00 L26 mov dword ptr -14H[ebp],00000001H
0334 eb 07 jmp L28
0336 c7 45 ec 00 00 00
00 L27 mov dword ptr -14H[ebp],00000000H
033d 8b 45 ec L28 mov eax,-14H[ebp]
0340 89 ec mov esp,ebp
0342 5d pop ebp
0343 5f pop edi
0344 5e pop esi
0345 59 pop ecx
0346 5b pop ebx
0347 c3 ret
0348 68 34 00 00 00 inRecord_ push 00000034H
034d e8 00 00 00 00 call __CHK
0352 53 push ebx
0353 51 push ecx
0354 56 push esi
0355 57 push edi
0356 55 push ebp
0357 89 e5 mov ebp,esp
0359 81 ec 1c 00 00 00 sub esp,0000001cH
035f 89 45 e4 mov -1cH[ebp],eax
0362 89 55 e8 mov -18H[ebp],edx
0365 e8 00 00 00 00 call clock_
036a 89 45 f0 mov -10H[ebp],eax
036d 83 3d 00 00 00 00
00 cmp dword ptr ___connected,00000000H
0374 0f 84 87 00 00 00 je L39
037a c7 45 fc 00 00 00
00 mov dword ptr -4H[ebp],00000000H
0381 8b 45 fc L29 mov eax,-4H[ebp]
0384 3b 45 e8 cmp eax,-18H[ebp]
0387 7c 0a jl L31
0389 e9 6a 00 00 00 jmp L38
038e ff 45 fc L30 inc dword ptr -4H[ebp]
0391 eb ee jmp L29
0393 c7 45 f8 00 00 00
00 L31 mov dword ptr -8H[ebp],00000000H
039a eb 05 L32 jmp L34
039c ff 45 f8 L33 inc dword ptr -8H[ebp]
039f eb f9 jmp L32
03a1 a1 00 00 00 00 L34 mov eax,_inputStatus
03a6 e8 00 00 00 00 call inp_
03ab a8 01 test al,01H
03ad 74 14 je L35
03af a1 00 00 00 00 mov eax,_inputData
03b4 e8 00 00 00 00 call inp_
03b9 8b 55 e4 mov edx,-1cH[ebp]
03bc ff 45 e4 inc dword ptr -1cH[ebp]
03bf 88 02 mov [edx],al
03c1 eb 33 jmp L37
03c3 81 7d f8 40 9c 00
00 L35 cmp dword ptr -8H[ebp],00009c40H
03ca 7c 28 jl L36
03cc c7 45 f8 00 00 00
00 mov dword ptr -8H[ebp],00000000H
03d3 e8 00 00 00 00 call clock_
03d8 89 45 f4 mov -0cH[ebp],eax
03db 8b 45 f4 mov eax,-0cH[ebp]
03de 2b 45 f0 sub eax,-10H[ebp]
03e1 3d f4 01 00 00 cmp eax,000001f4H
03e6 76 0c jbe L36
03e8 b8 41 00 00 00 mov eax,offset L44
03ed e8 00 00 00 00 call linkio_error_
03f2 eb 0d jmp L39
03f4 eb a6 L36 jmp L33
03f6 eb 96 L37 jmp L30
03f8 c7 45 ec 01 00 00
00 L38 mov dword ptr -14H[ebp],00000001H
03ff eb 07 jmp L40
0401 c7 45 ec 00 00 00
00 L39 mov dword ptr -14H[ebp],00000000H
0408 8b 45 ec L40 mov eax,-14H[ebp]
040b 89 ec mov esp,ebp
040d 5d pop ebp
040e 5f pop edi
040f 5e pop esi
0410 59 pop ecx
0411 5b pop ebx
0412 c3 ret
0413 68 24 00 00 00 inputReady_ push 00000024H
0418 e8 00 00 00 00 call __CHK
041d 53 push ebx
041e 51 push ecx
041f 52 push edx
0420 56 push esi
0421 57 push edi
0422 55 push ebp
0423 89 e5 mov ebp,esp
0425 81 ec 08 00 00 00 sub esp,00000008H
042b a1 00 00 00 00 mov eax,_inputStatus
0430 e8 00 00 00 00 call inp_
0435 83 e0 01 and eax,00000001H
0438 89 45 fc mov -4H[ebp],eax
043b 8b 45 fc mov eax,-4H[ebp]
043e 89 45 f8 mov -8H[ebp],eax
0441 8b 45 f8 mov eax,-8H[ebp]
0444 89 ec mov esp,ebp
0446 5d pop ebp
0447 5f pop edi
0448 5e pop esi
0449 5a pop edx
044a 59 pop ecx
044b 5b pop ebx
044c c3 ret
044d 68 20 00 00 00 altRecord_ push 00000020H
0452 e8 00 00 00 00 call __CHK
0457 53 push ebx
0458 51 push ecx
0459 52 push edx
045a 56 push esi
045b 57 push edi
045c 55 push ebp
045d 89 e5 mov ebp,esp
045f 81 ec 04 00 00 00 sub esp,00000004H
0465 e8 00 00 00 00 call inputReady_
046a 89 45 fc mov -4H[ebp],eax
046d 8b 45 fc mov eax,-4H[ebp]
0470 89 ec mov esp,ebp
0472 5d pop ebp
0473 5f pop edi
0474 5e pop esi
0475 5a pop edx
0476 59 pop ecx
0477 5b pop ebx
0478 c3 ret
No disassembly errors
------------------------------------------------------------
Segment: CONST DWORD USE32 00000056 bytes
0000 46 61 69 6c 20 69 6e 20 L41 - Fail in
0008 6f 75 74 70 75 74 4f 72 - outputOr
0010 46 61 69 6c 0a 00 - Fail..
0016 46 61 69 6c 20 69 6e 20 L42 - Fail in
001e 69 6e 70 75 74 4f 72 46 - inputOrF
0026 61 69 6c 0a 00 - ail..
002b 74 69 6d 65 6f 75 74 20 L43 - timeout
0033 69 6e 20 6f 75 74 52 65 - in outRe
003b 63 6f 72 64 0a 00 - cord..
0041 74 69 6d 65 6f 75 74 20 L44 - timeout
0049 69 6e 20 69 6e 52 65 63 - in inRec
0051 6f 72 64 0a 00 - ord..
No disassembly errors
------------------------------------------------------------
Segment: _DATA DWORD USE32 00000004 bytes
0000 01 00 00 00 ___connected - ....
No disassembly errors
------------------------------------------------------------
Segment: _BSS DWORD USE32 0000001c bytes
No disassembly errors
------------------------------------------------------------