// File: /workspace/github_cpp_makefile_star2_O1/pelrun[P]aft/CDSKFile.cpp
// Function: CDSKTrack::DisplayInfo(std::ostream&) const
void CDSKTrack::DisplayInfo(std::ostream &str) const
{
	if (Formated)
	{
		str << "NbSector\t" << (int)NbSector << std::endl;
		str << "SectorSize\t" << (int)(128 << SectorSize) << " (" << (int)SectorSize << ")" << std::endl;
		str << "DataRate\t";
		switch (DataRate)
		{
		case 1:{str << "Single or double density" << std::endl;break;};
		case 2:{str << "High density" << std::endl;break;};
		case 3:{str << "Extended density" << std::endl;break;};
		default:
		case 0:{str << "Unknown" << std::endl;break;};
		}
		str << "Recording\t";
		switch (RecordingMode)
		{
		case 1:{str << "FM" << std::endl;break;};
		case 2:{str << "MFM" << std::endl;break;};
		default:
		case 0:{str << "Unknown" << std::endl;break;};
		}
		str << "Gap #3\t\t#" << std::hex << (int)GAP3Size << std::dec << " (" << (int)GAP3Size << ")" << std::endl;
		str << "Fill Byte\t#" << std::hex << (int)FillByte << std::dec << std::endl;
		
		for (int s=0 ; s<NbSector ; s++)
		{
			Sectors[s].DisplayInfo(str);
		}
	}
	else
	{
		str << "Not formated" << std::endl;
	}
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %rbx
cmpb $0x1, 0x19(%rdi)
jne 0x6ad4
movq %rdi, %r14
leaq 0x9e34(%rip), %rsi      # 0x10805
movl $0x9, %edx
movq %rbx, %rdi
callq 0x3320
movzbl 0x16(%r14), %esi
movq %rbx, %rdi
callq 0x3500
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x3290
movsbl %al, %esi
movq %r15, %rdi
callq 0x3040
movq %rax, %rdi
callq 0x31d0
leaq 0x9df3(%rip), %rsi      # 0x1080f
movl $0xb, %edx
movq %rbx, %rdi
callq 0x3320
movb 0x15(%r14), %cl
movl $0x80, %esi
shll %cl, %esi
movq %rbx, %rdi
callq 0x3500
movq %rax, %r15
leaq 0x9dd5(%rip), %rsi      # 0x1081b
movl $0x2, %edx
movq %rax, %rdi
callq 0x3320
movzbl 0x15(%r14), %esi
movq %r15, %rdi
callq 0x3500
movq %rax, %r15
leaq 0x95e9(%rip), %rsi      # 0x10053
movl $0x1, %edx
movq %rax, %rdi
callq 0x3320
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x3290
movsbl %al, %esi
movq %r15, %rdi
callq 0x3040
movq %rax, %rdi
callq 0x31d0
leaq 0x9d79(%rip), %rsi      # 0x1081e
movl $0x9, %edx
movq %rbx, %rdi
callq 0x3320
movzbl 0x13(%r14), %eax
cmpl $0x3, %eax
je 0x6b28
cmpl $0x2, %eax
je 0x6b1a
cmpl $0x1, %eax
jne 0x6b36
leaq 0x9d5b(%rip), %rsi      # 0x10828
movl $0x18, %edx
jmp 0x6b42
leaq 0x9db1(%rip), %rsi      # 0x1088c
movl $0xc, %edx
movq %rbx, %rdi
callq 0x3320
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x3290
movsbl %al, %esi
movq %rbx, %rdi
callq 0x3040
movq %rax, %rdi
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
jmp 0x31d0
leaq 0x9d20(%rip), %rsi      # 0x10841
movl $0xc, %edx
jmp 0x6b42
leaq 0x9d1f(%rip), %rsi      # 0x1084e
movl $0x10, %edx
jmp 0x6b42
leaq 0x9d22(%rip), %rsi      # 0x1085f
movl $0x7, %edx
movq %rbx, %rdi
callq 0x3320
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x3290
movsbl %al, %esi
movq %rbx, %rdi
callq 0x3040
movq %rax, %rdi
callq 0x31d0
leaq 0x9cef(%rip), %rsi      # 0x10867
movl $0xa, %edx
movq %rbx, %rdi
callq 0x3320
movzbl 0x14(%r14), %eax
cmpl $0x2, %eax
je 0x6ba2
cmpl $0x1, %eax
jne 0x6bb0
leaq 0x9cd8(%rip), %rsi      # 0x10873
movl $0x2, %edx
jmp 0x6bbc
leaq 0x9cc9(%rip), %rsi      # 0x10872
movl $0x3, %edx
jmp 0x6bbc
leaq 0x9ca8(%rip), %rsi      # 0x1085f
movl $0x7, %edx
movq %rbx, %rdi
callq 0x3320
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x3290
movsbl %al, %esi
movq %rbx, %rdi
callq 0x3040
movq %rax, %rdi
callq 0x31d0
leaq 0x9c84(%rip), %rsi      # 0x10876
movl $0x9, %edx
movq %rbx, %rdi
callq 0x3320
movq (%rbx), %rax
movq -0x18(%rax), %rax
movl 0x18(%rbx,%rax), %ecx
andl $-0x4b, %ecx
orl $0x8, %ecx
movl %ecx, 0x18(%rbx,%rax)
movzbl 0x17(%r14), %esi
movq %rbx, %rdi
callq 0x3500
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rax
movl 0x18(%r15,%rax), %ecx
andl $-0x4b, %ecx
orl $0x2, %ecx
movl %ecx, 0x18(%r15,%rax)
leaq 0x9bd9(%rip), %rsi      # 0x1081b
movl $0x2, %edx
movq %r15, %rdi
callq 0x3320
movzbl 0x17(%r14), %esi
movq %r15, %rdi
callq 0x3500
movq %rax, %r15
leaq 0x93ed(%rip), %rsi      # 0x10053
movl $0x1, %edx
movq %rax, %rdi
callq 0x3320
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x3290
movsbl %al, %esi
movq %r15, %rdi
callq 0x3040
movq %rax, %rdi
callq 0x31d0
leaq 0x9bdf(%rip), %rsi      # 0x10880
movl $0xb, %edx
movq %rbx, %rdi
callq 0x3320
movq (%rbx), %rax
movq -0x18(%rax), %rax
movl 0x18(%rbx,%rax), %ecx
andl $-0x4b, %ecx
orl $0x8, %ecx
movl %ecx, 0x18(%rbx,%rax)
movzbl 0x18(%r14), %esi
movq %rbx, %rdi
callq 0x3500
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rcx
movl 0x18(%r15,%rcx), %edx
andl $-0x4b, %edx
orl $0x2, %edx
movl %edx, 0x18(%r15,%rcx)
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x3290
movsbl %al, %esi
movq %r15, %rdi
callq 0x3040
movq %rax, %rdi
callq 0x31d0
cmpb $0x0, 0x16(%r14)
je 0x6d3b
xorl %r15d, %r15d
xorl %r12d, %r12d
movq 0x20(%r14), %rdi
addq %r15, %rdi
movq %rbx, %rsi
callq 0x5e5e
incq %r12
movzbl 0x16(%r14), %eax
addq $0x20, %r15
cmpq %rax, %r12
jb 0x6d1b
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
nop