// File: /workspace/github_cpp_makefile_star2_O2/rockytriton[P]dreamsys_emu_gb/src/op_handler.cpp
// Function: dsemu::cpu::init_handlers()
void init_handlers() {
    handlerMap[LD] = handleLD;
    handlerMap[LDI] = handleLDI;
    handlerMap[LDD] = handleLDD;
    handlerMap[NOP] = handleNOP;
    handlerMap[JP] = handleJump;
    handlerMap[JR] = handleJumpRelative;
    handlerMap[XOR] = handleXOR;
    handlerMap[OR] = handleOR;
    handlerMap[AND] = handleAND;
    handlerMap[INC] = handleINC;
    handlerMap[DEC] = handleDEC;
    handlerMap[RRCA] = handleRRCA;
    handlerMap[RRA] = handleRRA;
    handlerMap[RLCA] = handleRLCA;
    handlerMap[RLA] = handleRLA;

    handlerMap[ADD] = handleADD;
    handlerMap[ADC] = handleADC;
    handlerMap[SUB] = handleSUB;
    handlerMap[SBC] = handleSBC;
    handlerMap[CP] = handleCP;
    handlerMap[DI] = handleDI;
    handlerMap[EI] = handleEI;
    handlerMap[LDH] = handleLDH;
    handlerMap[RST] = handleRST;
    handlerMap[CALL] = handleCALL;
    handlerMap[RET] = handleRET;
    handlerMap[RETI] = handleRETI;
    handlerMap[DAA] = handleDAA;
    handlerMap[PUSH] = handlePUSH;
    handlerMap[POP] = handlePOP;
    handlerMap[CB] = handleCB;
    handlerMap[CPL] = handleCPL;
    handlerMap[HALT] = handleHALT;
    handlerMap[SCF] = handleSCF;
    handlerMap[CCF] = handleCCF;
    handlerMap[STOP] = handleNOP;

    initParamTypeMap();
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x10, %rsp
leaq 0xc(%rsp), %r14
movl $0x1, (%r14)
leaq 0x2890d(%rip), %rbx     # 0x36598
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0x1400(%rip), %rcx     # 0xc89d
movq %rcx, (%rax)
movl $0x2, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0x410(%rip), %rcx      # 0xd8ae
movq %rcx, (%rax)
movl $0x3, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0x445(%rip), %rcx      # 0xd89a
movq %rcx, (%rax)
andl $0x0, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0x10a6(%rip), %r15     # 0xcc57
movq %r15, (%rax)
movl $0x1a, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0xe20(%rip), %rcx      # 0xcefe
movq %rcx, (%rax)
movl $0x6, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0xeab(%rip), %rcx      # 0xce94
movq %rcx, (%rax)
movl $0x13, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0x59e(%rip), %rcx      # 0xd7c2
movq %rcx, (%rax)
movl $0x19, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0x5ea(%rip), %rcx      # 0xd797
movq %rcx, (%rax)
movl $0x18, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0x638(%rip), %rcx      # 0xd76a
movq %rcx, (%rax)
movl $0x4, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0x501(%rip), %rcx      # 0xd8c2
movq %rcx, (%rax)
movl $0x5, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0x401(%rip), %rcx      # 0xd9e3
movq %rcx, (%rax)
movl $0xd, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0x26a(%rip), %rcx      # 0xdb9b
movq %rcx, (%rax)
movl $0xc, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0x2cd(%rip), %rcx      # 0xdb59
movq %rcx, (%rax)
movl $0xb, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0x314(%rip), %rcx      # 0xdb33
movq %rcx, (%rax)
movl $0xa, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0x367(%rip), %rcx      # 0xdb01
movq %rcx, (%rax)
movl $0x8, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0x899(%rip), %rcx      # 0xd5f0
movq %rcx, (%rax)
movl $0x21, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0x994(%rip), %rcx      # 0xd516
movq %rcx, (%rax)
movl $0x9, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0x7e1(%rip), %rcx      # 0xd6ea
movq %rcx, (%rax)
movl $0x12, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0x7c9(%rip), %rcx      # 0xd723
movq %rcx, (%rax)
movl $0x15, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0xa1e(%rip), %rcx      # 0xd4ef
movq %rcx, (%rax)
movl $0x1c, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0x36d(%rip), %rcx      # 0xdbc1
movq %rcx, (%rax)
movl $0x1d, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0x384(%rip), %rcx      # 0xdbcb
movq %rcx, (%rax)
movl $0x24, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0x1798(%rip), %rcx     # 0xc7d8
movq %rcx, (%rax)
movl $0x1f, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0x394(%rip), %rcx      # 0xdbfd
movq %rcx, (%rax)
movl $0x1e, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0xed5(%rip), %rcx      # 0xd0dd
movq %rcx, (%rax)
movl $0x1b, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0xd6e(%rip), %rcx      # 0xd265
movq %rcx, (%rax)
movl $0x23, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0xbfd(%rip), %rcx      # 0xd3f7
movq %rcx, (%rax)
movl $0x7, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0x1078(%rip), %rcx     # 0xcf9d
movq %rcx, (%rax)
movl $0x17, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0xf99(%rip), %rcx      # 0xd09d
movq %rcx, (%rax)
movl $0x16, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0x1020(%rip), %rcx     # 0xd037
movq %rcx, (%rax)
movl $0x20, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0x141e(%rip), %rcx     # 0xcc5a
movq %rcx, (%rax)
movl $0x10, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0x50e(%rip), %rcx      # 0xdb8b
movq %rcx, (%rax)
movl $0x25, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0x458(%rip), %rcx      # 0xdc62
movq %rcx, (%rax)
movl $0xf, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0x506(%rip), %rcx      # 0xdbd5
movq %rcx, (%rax)
movl $0x11, (%r14)
leaq 0xc(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xe294
leaq -0x513(%rip), %rcx      # 0xdbe9
movq %rcx, (%rax)
movl $0xe, (%r14)
leaq 0xc(%rsp), %rsi
movq %rbx, %rdi
callq 0xe294
movq %r15, (%rax)
callq 0xc373
addq $0x10, %rsp
popq %rbx
popq %r14
popq %r15
retq