// File: /workspace/github_cpp_makefile_star2_O1/merelin[P]mediasmartserverd/src/led_hpex485.h
// Function: LedHpEx48X::Init()
virtual bool Init( ) {
		// initialise SCH5127
		if ( !LedControlSCH5127Base::Init() ) return false;
		
		// set up io permissions to other ports we may use
		if ( ioperm(io_sch5127_regs_ + REG_HWM_INDEX, 1, 1) ) throw ErrnoException("ioperm");
		if ( ioperm(io_sch5127_regs_ + REG_HWM_DATA,  1, 1) ) throw ErrnoException("ioperm");
		
		//
		if ( ioperm(io_lpc_gpiobase_ + GPO_BLINK,	4, 1) ) throw ErrnoException("ioperm");
		if ( ioperm(io_lpc_gpiobase_ + GP_IO_SEL,	4, 1) ) throw ErrnoException("ioperm");
		if ( ioperm(io_lpc_gpiobase_ + GP_IO_SEL2,	4, 1) ) throw ErrnoException("ioperm");
		if ( ioperm(io_lpc_gpiobase_ + GP_LVL,		4, 1) ) throw ErrnoException("ioperm");
		if ( ioperm(io_lpc_gpiobase_ + GP_LVL2,		4, 1) ) throw ErrnoException("ioperm");
		
		enableLeds_( );
		
		return true;
	}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x28, %rsp
movq %rdi, %r14
callq 0x86b4
movl %eax, %ebx
testb %al, %al
je 0xa34b
movl 0xc(%r14), %edi
addl $0x70, %edi
movl $0x1, %esi
movl $0x1, %edx
callq 0x44b0
testl %eax, %eax
jne 0xa358
movl 0xc(%r14), %edi
addl $0x71, %edi
movl $0x1, %esi
movl $0x1, %edx
callq 0x44b0
testl %eax, %eax
jne 0xa3ba
movl 0x8(%r14), %edi
addl $0x18, %edi
movl $0x4, %esi
movl $0x1, %edx
callq 0x44b0
testl %eax, %eax
jne 0xa41c
movl 0x8(%r14), %edi
addl $0x4, %edi
movl $0x4, %esi
movl $0x1, %edx
callq 0x44b0
testl %eax, %eax
jne 0xa47e
movl 0x8(%r14), %edi
addl $0x34, %edi
movl $0x4, %esi
movl $0x1, %edx
callq 0x44b0
testl %eax, %eax
jne 0xa4e0
movl 0x8(%r14), %edi
addl $0xc, %edi
movl $0x4, %esi
movl $0x1, %edx
callq 0x44b0
testl %eax, %eax
jne 0xa542
movl 0x8(%r14), %edi
addl $0x38, %edi
movl $0x4, %esi
movl $0x1, %edx
callq 0x44b0
testl %eax, %eax
jne 0xa5a1
movq %r14, %rdi
movl $0x186020b0, %esi       # imm = 0x186020B0
callq 0x8e46
movl %ebx, %eax
addq $0x28, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
movl $0x10, %edi
callq 0x4140
movq %rax, %rbx
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x17ad(%rip), %rsi      # 0xbb22
leaq 0x17ac(%rip), %rdx      # 0xbb28
leaq 0x8(%rsp), %rdi
callq 0x5e88
callq 0x4030
movl (%rax), %edx
movb $0x1, %bpl
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x5be8
xorl %ebp, %ebp
leaq 0x534a(%rip), %rsi      # 0xf6f0
movq 0x5bf3(%rip), %rdx      # 0xffa0
movq %rbx, %rdi
callq 0x4520
jmp 0xa5fe
movl $0x10, %edi
callq 0x4140
movq %rax, %rbx
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x174b(%rip), %rsi      # 0xbb22
leaq 0x174a(%rip), %rdx      # 0xbb28
leaq 0x8(%rsp), %rdi
callq 0x5e88
callq 0x4030
movl (%rax), %edx
movb $0x1, %bpl
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x5be8
xorl %ebp, %ebp
leaq 0x52e8(%rip), %rsi      # 0xf6f0
movq 0x5b91(%rip), %rdx      # 0xffa0
movq %rbx, %rdi
callq 0x4520
jmp 0xa5fe
movl $0x10, %edi
callq 0x4140
movq %rax, %rbx
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x16e9(%rip), %rsi      # 0xbb22
leaq 0x16e8(%rip), %rdx      # 0xbb28
leaq 0x8(%rsp), %rdi
callq 0x5e88
callq 0x4030
movl (%rax), %edx
movb $0x1, %bpl
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x5be8
xorl %ebp, %ebp
leaq 0x5286(%rip), %rsi      # 0xf6f0
movq 0x5b2f(%rip), %rdx      # 0xffa0
movq %rbx, %rdi
callq 0x4520
jmp 0xa5fe
movl $0x10, %edi
callq 0x4140
movq %rax, %rbx
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x1687(%rip), %rsi      # 0xbb22
leaq 0x1686(%rip), %rdx      # 0xbb28
leaq 0x8(%rsp), %rdi
callq 0x5e88
callq 0x4030
movl (%rax), %edx
movb $0x1, %bpl
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x5be8
xorl %ebp, %ebp
leaq 0x5224(%rip), %rsi      # 0xf6f0
movq 0x5acd(%rip), %rdx      # 0xffa0
movq %rbx, %rdi
callq 0x4520
jmp 0xa5fe
movl $0x10, %edi
callq 0x4140
movq %rax, %rbx
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x1625(%rip), %rsi      # 0xbb22
leaq 0x1624(%rip), %rdx      # 0xbb28
leaq 0x8(%rsp), %rdi
callq 0x5e88
callq 0x4030
movl (%rax), %edx
movb $0x1, %bpl
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x5be8
xorl %ebp, %ebp
leaq 0x51c2(%rip), %rsi      # 0xf6f0
movq 0x5a6b(%rip), %rdx      # 0xffa0
movq %rbx, %rdi
callq 0x4520
jmp 0xa5fe
movl $0x10, %edi
callq 0x4140
movq %rax, %rbx
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x15c3(%rip), %rsi      # 0xbb22
leaq 0x15c2(%rip), %rdx      # 0xbb28
leaq 0x8(%rsp), %rdi
callq 0x5e88
callq 0x4030
movl (%rax), %edx
movb $0x1, %bpl
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x5be8
xorl %ebp, %ebp
leaq 0x5160(%rip), %rsi      # 0xf6f0
movq 0x5a09(%rip), %rdx      # 0xffa0
movq %rbx, %rdi
callq 0x4520
jmp 0xa5fe
movl $0x10, %edi
callq 0x4140
movq %rax, %rbx
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x1564(%rip), %rsi      # 0xbb22
leaq 0x1563(%rip), %rdx      # 0xbb28
leaq 0x8(%rsp), %rdi
callq 0x5e88
callq 0x4030
movl (%rax), %edx
movb $0x1, %bpl
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x5be8
xorl %ebp, %ebp
leaq 0x5101(%rip), %rsi      # 0xf6f0
movq 0x59aa(%rip), %rdx      # 0xffa0
movq %rbx, %rdi
callq 0x4520
jmp 0xa616
jmp 0xa632
jmp 0xa616
jmp 0xa632
jmp 0xa616
jmp 0xa632
jmp 0xa616
jmp 0xa632
jmp 0xa616
jmp 0xa632
jmp 0xa616
jmp 0xa632
movq %rax, %r14
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0xa638
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x42c0
jmp 0xa638
movq %rax, %r14
movb $0x1, %bpl
testb %bpl, %bpl
je 0xa645
movq %rbx, %rdi
callq 0x41e0
movq %r14, %rdi
callq 0x4550
nop