I am trying to get Mon51 working at address 0x0000 in EPROM. Monitor is built with XDATA(XDATA_AREA(0D000H)), CODE(INITSEG(00000H)), INSTALLCODE(01000H). Interrupt vectors are translated to 0x8000 except the serial interrupt vector used by the monitor.
C:0x0000 020100 LJMP C:0100
C:0x0546 758107 MOV SP(0x81),#0x07 C:0x0549 90D008 MOV DPTR, #0xD008 C:0x054C E4 CLR A C:0x054D 7805 MOV R0,#05 C:0x054F F0 MOVX @DPTR,A C:0x0550 A3 INC DPTR C:0x0551 8DFC DJNZ R0,C:054F C:0x0553 7480 MOV A,#P0(0x80) C:0x0555 F0 MOVX @DPTR,A C:0x0556 A3 INC DPTR C:0x0557 7400 MOV A,#0x00 C:0x0559 F0 MOVX @DPTR,A C:0x055A A3 INC DPTR C:0x055B 7407 MOV A,#0x07 C:0x055D F0 MOVX @DPTR,A
C:0x8000 LJMP STARTUP1(C:9240)