flat assembler
Message board for the users of flat assembler.
Index
> Main > PC XT, V20 or other 8086-80186 non-DOS software? |
Author |
|
shoorick 15 Nov 2010, 05:43
there should be a CP/M-86 - port of CP/M-80 to 8086 CPU
|
|||
15 Nov 2010, 05:43 |
|
rugxulo 15 Nov 2010, 18:09
Minix 2.0.2 (16-bit) has support for 8086. (2.0.4 can run on 286, but that may be more of a RAM limit than actual cpu instruction compatibility.)
Also don't forget Linux/ELKS. MikeOS, last I checked, was 16-bit too. P.S. I know it's still technically DOS-related, but Win 3.0 [sic] could run on 8086. |
|||
15 Nov 2010, 18:09 |
|
Artlav 15 Nov 2010, 20:37
Thank you both for info.
CP/M i did found, and it kinda works, but i have no idea what it should look like. Anyway, it exposes bugs and therefore useful. Minix 2.0.2 boots up to "Executing in real mode", and then something hangs. Browsing the FM for the moment. MikeOS uses 32bit instructions as early as the bootloader. not PC XT compatible. ELKS is tricky... Some uncommon tar formats. still trying. Win 3.0 needs DOS, DOS gives lots of excuses not to boot. Found some booter games... Alley cat hangs in game, lode runner got timing errors in motion, frogger is to fast and exposes input bug. Fun never ends |
|||
15 Nov 2010, 20:37 |
|
baldr 15 Nov 2010, 21:27
Artlav,
Sid Meyer's Pirates! (1987, CGA — IIRC) was bootable from 5.25" 360 KiB floppy. |
|||
15 Nov 2010, 21:27 |
|
Artlav 18 Nov 2010, 21:27
baldr wrote: Artlav, Whatever that means. Out of the blue, PC-DOS 4 booted up, and things started rolling in an avalanche. Now every DOS from 1.1 up to 3.30 seems to boot up nicely. Floppy controller bugs, keyboard bugs, CGA retrace stuck in sync with CPU (NC was redrawing panels bit by bit on every key press. spooky), floppy write support without destroying rest of the cylinder, NDD works, all 4 floppy drives in good health, format works, Zeliard works and playable, sunset. x86 was a beautiful sight in it's infancy. That BIOS thing is amazing, an OS embedded in the PC, i quite forgot how useful it can be. All things making sense, whole system largely consistent, crutches hard to come by. Why couldn't they kept developing it in the same spirit, instead of the mess we ended up with? Damn compatibility. Anyway, CheckIt 4 hangs on something called "CPU interrupt bug"... Something about NMI, it seems. Anyone happen to have a description of that one, or a copy of the thing's manual? |
|||
18 Nov 2010, 21:27 |
|
baldr 19 Nov 2010, 17:31
Artlav wrote: I/O ERROR NR 45 in a blinking box with a saber-shaped cursor. Artlav wrote: Anyway, CheckIt 4 hangs on something called "CPU interrupt bug"... Something about NMI, it seems. |
|||
19 Nov 2010, 17:31 |
|
Artlav 19 Nov 2010, 19:56
baldr wrote: You may add some diagnostic output (failed int13 service requests are primary suspects). I'll research later into this. Maybe it's the floppy, and yet: Code: Called int 13h function, AH=00h, AL=00h, DL=55h CF=0 Called int 13h function, AH=02h, AL=01h, DL=00h CF=0 Called int 13h function, AH=02h, AL=01h, DL=00h CF=0 Called int 13h function, AH=02h, AL=01h, DL=00h CF=0 Called int 13h function, AH=02h, AL=01h, DL=00h CF=0 Called int 13h function, AH=02h, AL=01h, DL=00h CF=0 Called int 13h function, AH=02h, AL=01h, DL=00h CF=0 Called int 13h function, AH=02h, AL=01h, DL=00h CF=0 Called int 13h function, AH=02h, AL=01h, DL=00h CF=0 Called int 13h function, AH=02h, AL=01h, DL=00h CF=0 Called int 13h function, AH=00h, AL=00h, DL=FEh CF=0 Called int 13h function, AH=02h, AL=01h, DL=00h CF=0 Called int 13h function, AH=00h, AL=00h, DL=00h CF=0 Called int 13h function, AH=17h, AL=02h, DL=00h CF=0 Called int 13h function, AH=02h, AL=01h, DL=00h CF=0 Called int 13h function, AH=00h, AL=00h, DL=00h CF=0 Called int 13h function, AH=17h, AL=02h, DL=00h CF=0 Called int 13h function, AH=02h, AL=01h, DL=00h CF=0 Called int 13h function, AH=00h, AL=00h, DL=00h CF=0 Called int 13h function, AH=17h, AL=02h, DL=00h CF=0 Called int 13h function, AH=02h, AL=01h, DL=00h CF=0 Called int 13h function, AH=00h, AL=00h, DL=00h CF=0 Called int 13h function, AH=17h, AL=02h, DL=00h CF=0 Called int 13h function, AH=02h, AL=01h, DL=00h CF=0 Called int 13h function, AH=00h, AL=00h, DL=00h CF=0 Called int 13h function, AH=17h, AL=02h, DL=00h CF=0 All seems well, no errors returned. baldr wrote: IIRC this test diagnose hlt not resuming execution after interrupt. No I/O ports activity prior, and if NMI is sent by a button, that's what it does: Code: [CPU ]:286866404-18D6:0356:SP=F138:DX=0000h [50h]:push ax [CPU ]:286866405-18D6:0357:SP=F136:DX=0000h [51h]:push cx [CPU ]:286866406-18D6:0358:SP=F134:DX=0000h [52h]:push dx [CPU ]:286866407-18D6:0359:SP=F132:DX=0000h [53h]:push bx [CPU ]:286866408-18D6:035A:SP=F130:DX=0000h [54h]:push sp [CPU ]:286866409-18D6:035B:SP=F12E:DX=0000h [55h]:push bp [CPU ]:286866410-18D6:035C:SP=F12C:DX=0000h [56h]:push si [CPU ]:286866411-18D6:035D:SP=F12A:DX=0000h [57h]:push di [CPU ]:286866412-18D6:035E:SP=F128:DX=0000h [1Eh]:push ds [CPU ]:286866413-18D6:035F:SP=F126:DX=0000h [06h]:push es [CPU ]:286866414-18D6:0360:SP=F124:DX=0000h [8Bh]:mov bp,sp [CPU ]:286866415-18D6:0362:SP=F124:DX=0000h [B8h]:mov ax,4E09h [CPU ]:286866416-18D6:0365:SP=F124:DX=0000h [8Eh]:mov ds,ax [CPU ]:286866417-18D6:0367:SP=F124:DX=0000h [FCh]:cld [CPU ]:286866418-18D6:0368:SP=F124:DX=0000h [9Ah]:call 18AFh:001Bh [CPU ]:286866419-18AF:001B:SP=F120:DX=0000h [80h]:cmp [D946h],46h [CPU ]:286866420-18AF:0020:SP=F120:DX=0000h [74h]:jz 0059h [CPU ]:286866421-18AF:0059:SP=F120:DX=0000h [E4h]:in al,62h [CPU ]:286866422-18AF:005B:SP=F120:DX=0000h [EBh]:jmp 5Dh [CPU ]:286866423-18AF:005D:SP=F120:DX=0000h [EBh]:jmp 5Fh [CPU ]:286866424-18AF:005F:SP=F120:DX=0000h [A8h]:test al,C0h [CPU ]:286866425-18AF:0061:SP=F120:DX=0000h [74h]:jz 007Dh [CPU ]:286866426-18AF:007D:SP=F120:DX=0000h [B8h]:mov ax,0001h [CPU ]:286866427-18AF:0080:SP=F120:DX=0000h [CBh]:ret far [CPU ]:286866428-18D6:036D:SP=F124:DX=0000h [0Bh]:or ax,ax [CPU ]:286866429-18D6:036F:SP=F124:DX=0000h [75h]:jnz 0377h [CPU ]:286866430-18D6:0377:SP=F124:DX=0000h [8Eh]:mov es,[B546h] [CPU ]:286866431-18D6:037B:SP=F124:DX=0000h [26h]:es: [CPU ]:286866432-18D6:037C:SP=F124:DX=0000h [FFh]:push [0812h] [CPU ]:286866433-18D6:0380:SP=F122:DX=0000h [26h]:es: [CPU ]:286866434-18D6:0381:SP=F122:DX=0000h [FFh]:push [0810h] [CPU ]:286866435-18D6:0385:SP=F120:DX=0000h [9Ah]:call 3C75h:06D2h [CPU ]:286866436-3C75:06D2:SP=F11C:DX=0000h [55h]:push bp [CPU ]:286866437-3C75:06D3:SP=F11A:DX=0000h [8Bh]:mov bp,sp [CPU ]:286866438-3C75:06D5:SP=F11A:DX=0000h [8Bh]:mov ax,[ss:bp+08h] [CPU ]:286866439-3C75:06D8:SP=F11A:DX=0000h [8Bh]:mov cx,[ss:bp+06h] [CPU ]:286866440-3C75:06DB:SP=F11A:DX=0000h [5Dh]:pop bp [CPU ]:286866441-3C75:06DC:SP=F11C:DX=0000h [8Bh]:mov sp,bp [CPU ]:286866442-3C75:06DE:SP=F124:DX=0000h [87h]:xchg [ss:bp+12h],ax [CPU ]:286866443-3C75:06E1:SP=F124:DX=0000h [87h]:xchg [ss:bp+10h],cx [CPU ]:286866444-3C75:06E4:SP=F124:DX=0000h [07h]:pop es [CPU ]:286866445-3C75:06E5:SP=F126:DX=0000h [1Fh]:pop ds [CPU ]:286866446-3C75:06E6:SP=F128:DX=0000h [5Fh]:pop di [CPU ]:286866447-3C75:06E7:SP=F12A:DX=0000h [5Eh]:pop si [CPU ]:286866448-3C75:06E8:SP=F12C:DX=0000h [5Dh]:pop bp [CPU ]:286866449-3C75:06E9:SP=F12E:DX=0000h [5Bh]:pop bx [CPU ]:286866450-3C75:06EA:SP=F130:DX=0000h [5Bh]:pop bx [CPU ]:286866451-3C75:06EB:SP=F132:DX=0000h [5Ah]:pop dx [CPU ]:286866452-3C75:06EC:SP=F134:DX=0000h [CBh]:ret far [CPU ]:286866453-F000:F85F:SP=F138:DX=0000h [50h]:push ax [CPU ]:286866454-F000:F860:SP=F136:DX=0000h [E4h]:in al,62h [CPU ]:286866455-F000:F862:SP=F136:DX=0000h [A8h]:test al,C0h [CPU ]:286866456-F000:F864:SP=F136:DX=0000h [75h]:jnz F869h [CPU ]:286866457-F000:F866:SP=F136:DX=0000h [E9h]:jmp F911h [CPU ]:286866458-F000:F911:SP=F136:DX=0000h [58h]:pop ax [CPU ]:286866459-F000:F912:SP=F138:DX=0000h [CFh]:iret [CPU ]:286866460-2557:01B3:SP=F13E:DX=0000h [55h]:push bp [CPU ]:286866461-2557:01B4:SP=F13C:DX=0000h [8Bh]:mov bp,sp [CPU ]:286866462-2557:01B6:SP=F13C:DX=0000h [81h]:cmp [ss:bp+02h],01B0h [CPU ]:286866463-2557:01BB:SP=F13C:DX=0000h [5Dh]:pop bp [CPU ]:286866464-2557:01BC:SP=F13E:DX=0000h [77h]:jnbe 01BFh [CPU ]:286866465-2557:01BF:SP=F13E:DX=0000h [A1h]:mov ax,ov [CPU ]:286866466-2557:01C2:SP=F13E:DX=0000h [26h]:es: [CPU ]:286866467-2557:01C3:SP=F13E:DX=0000h [A3h]:mov ov,ax [CPU ]:286866468-2557:01C6:SP=F13E:DX=0000h [A1h]:mov ax,ov [CPU ]:286866469-2557:01C9:SP=F13E:DX=0000h [26h]:es: [CPU ]:286866470-2557:01CA:SP=F13E:DX=0000h [A3h]:mov ov,ax [CPU ]:286866471-2557:01CD:SP=F13E:DX=0000h [FBh]:sti [CPU ]:286866472-F000:FEA5:SP=F138:DX=0000h [FBh]:sti [CPU ]:286866473-F000:FEA6:SP=F138:DX=0000h [1Eh]:push ds [CPU ]:286866474-F000:FEA7:SP=F136:DX=0000h [52h]:push dx [CPU ]:286866475-F000:FEA8:SP=F134:DX=0000h [50h]:push ax [CPU ]:286866476-F000:FEA9:SP=F132:DX=0000h [B8h]:mov ax,0040h [CPU ]:286866477-F000:FEAC:SP=F132:DX=0000h [8Eh]:mov ds,ax [CPU ]:286866478-F000:FEAE:SP=F132:DX=0000h [FEh]:dec [0040h] [CPU ]:286866479-F000:FEB2:SP=F132:DX=0000h [75h]:jnz FEBFh [CPU ]:286866480-F000:FEBF:SP=F132:DX=0000h [FFh]:inc [006Ch] [CPU ]:286866481-F000:FEC3:SP=F132:DX=0000h [75h]:jnz FEC9h [CPU ]:286866482-F000:FEC9:SP=F132:DX=0000h [83h]:cmp [006Eh],00h [CPU ]:286866483-F000:FECE:SP=F132:DX=0000h [75h]:jnz FEE9h [CPU ]:286866484-F000:FEE9:SP=F132:DX=0000h [CDh]:int 1Ch [CPU ]:286866485-18D6:02F8:SP=F12C:DX=0000h [50h]:push ax [CPU ]:286866486-18D6:02F9:SP=F12A:DX=0000h [51h]:push cx [CPU ]:286866487-18D6:02FA:SP=F128:DX=0000h [52h]:push dx [CPU ]:286866488-18D6:02FB:SP=F126:DX=0000h [53h]:push bx [CPU ]:286866489-18D6:02FC:SP=F124:DX=0000h [54h]:push sp [CPU ]:286866490-18D6:02FD:SP=F122:DX=0000h [55h]:push bp [CPU ]:286866491-18D6:02FE:SP=F120:DX=0000h [56h]:push si [CPU ]:286866492-18D6:02FF:SP=F11E:DX=0000h [57h]:push di [CPU ]:286866493-18D6:0300:SP=F11C:DX=0000h [1Eh]:push ds [CPU ]:286866494-18D6:0301:SP=F11A:DX=0000h [06h]:push es [CPU ]:286866495-18D6:0302:SP=F118:DX=0000h [8Bh]:mov bp,sp [CPU ]:286866496-18D6:0304:SP=F118:DX=0000h [B8h]:mov ax,4E09h [CPU ]:286866497-18D6:0307:SP=F118:DX=0000h [8Eh]:mov ds,ax [CPU ]:286866498-18D6:0309:SP=F118:DX=0000h [FCh]:cld [CPU ]:286866499-18D6:030A:SP=F118:DX=0000h [8Eh]:mov es,[B540h] [CPU ]:286866500-18D6:030E:SP=F118:DX=0000h [26h]:es: [CPU ]:286866501-18D6:030F:SP=F118:DX=0000h [83h]:add [0C5Ch],0Ch [CPU ]:286866502-18D6:0314:SP=F118:DX=0000h [26h]:es: [CPU ]:286866503-18D6:0315:SP=F118:DX=0000h [83h]:adc [0C5Eh],0Ch [CPU ]:286866504-18D6:031A:SP=F118:DX=0000h [8Eh]:mov es,[B544h] [CPU ]:286866505-18D6:031E:SP=F118:DX=0000h [26h]:es: [CPU ]:286866506-18D6:031F:SP=F118:DX=0000h [FFh]:push [0350h] [CPU ]:286866507-18D6:0323:SP=F116:DX=0000h [26h]:es: [CPU ]:286866508-18D6:0324:SP=F116:DX=0000h [FFh]:push [034Eh] [CPU ]:286866509-18D6:0328:SP=F114:DX=0000h [9Ah]:call 3C75h:06D2h [CPU ]:286866510-3C75:06D2:SP=F110:DX=0000h [55h]:push bp [CPU ]:286866511-3C75:06D3:SP=F10E:DX=0000h [8Bh]:mov bp,sp [CPU ]:286866512-3C75:06D5:SP=F10E:DX=0000h [8Bh]:mov ax,[ss:bp+08h] [CPU ]:286866513-3C75:06D8:SP=F10E:DX=0000h [8Bh]:mov cx,[ss:bp+06h] [CPU ]:286866514-3C75:06DB:SP=F10E:DX=0000h [5Dh]:pop bp [CPU ]:286866515-3C75:06DC:SP=F110:DX=0000h [8Bh]:mov sp,bp [CPU ]:286866516-3C75:06DE:SP=F118:DX=0000h [87h]:xchg [ss:bp+12h],ax [CPU ]:286866517-3C75:06E1:SP=F118:DX=0000h [87h]:xchg [ss:bp+10h],cx [CPU ]:286866518-3C75:06E4:SP=F118:DX=0000h [07h]:pop es [CPU ]:286866519-3C75:06E5:SP=F11A:DX=0000h [1Fh]:pop ds [CPU ]:286866520-3C75:06E6:SP=F11C:DX=0000h [5Fh]:pop di [CPU ]:286866521-3C75:06E7:SP=F11E:DX=0000h [5Eh]:pop si [CPU ]:286866522-3C75:06E8:SP=F120:DX=0000h [5Dh]:pop bp [CPU ]:286866523-3C75:06E9:SP=F122:DX=0000h [5Bh]:pop bx [CPU ]:286866524-3C75:06EA:SP=F124:DX=0000h [5Bh]:pop bx [CPU ]:286866525-3C75:06EB:SP=F126:DX=0000h [5Ah]:pop dx [CPU ]:286866526-3C75:06EC:SP=F128:DX=0000h [CBh]:ret far [CPU ]:286866527-F000:FF53:SP=F12C:DX=0000h [CFh]:iret [CPU ]:286866528-F000:FEEB:SP=F132:DX=0000h [B0h]:mov al,20h [CPU ]:286866529-F000:FEED:SP=F132:DX=0000h [E6h]:out 20h,al [CPU ]:286866530-F000:FEEF:SP=F132:DX=0000h [58h]:pop ax [CPU ]:286866531-F000:FEF0:SP=F134:DX=0000h [5Ah]:pop dx [CPU ]:286866532-F000:FEF1:SP=F136:DX=0000h [1Fh]:pop ds [CPU ]:286866533-F000:FEF2:SP=F138:DX=0000h [CFh]:iret [CPU ]:286866534-2557:01CE:SP=F13E:DX=0000h [83h]:add sp,E3h [CPU ]:286866535-2557:01D1:SP=F144:DX=0000h [E3h]:jcxz 01D8h [CPU ]:286866536-2557:01D8:SP=F144:DX=0000h [B8h]:mov ax,0000h [CPU ]:286866537-2557:01DB:SP=F144:DX=0000h [59h]:pop cx [CPU ]:286866538-2557:01DC:SP=F146:DX=0000h [07h]:pop es [CPU ]:286866539-2557:01DD:SP=F148:DX=0000h [CBh]:ret far [CPU ]:286866540-0000:0000:SP=F14C:DX=0000h [CCh]:int 3 [CPU ]:286866541-0070:07F6:SP=F146:DX=0000h [CFh]:iret [CPU ]:286866542-0000:0001:SP=F14C:DX=0000h [00h]:add [di+3Ch],dh [CPU ]:286866543-0000:0004:SP=F14C:DX=0000h [F6h]:test [bx] [CPU ]:286866544-0000:0007:SP=F14C:DX=0000h [00h]:add [ss:bp+03h],dl [CPU ]:286866545-0000:000A:SP=F14C:DX=0000h [D6h]:Unknown, mod/rm:>18(mod=0,to=3,r/m=0) [CPU ]:286866546-0000:000B:SP=F14C:DX=0000h [18h]:sbb dh,dh [CPU ]:286866547-0000:000D:SP=F14C:DX=0000h [07h]:pop es [CPU ]:286866548-0000:000E:SP=F14E:DX=0000h [70h]:jo 0010h [CPU ]:286866549-0000:0010:SP=F14E:DX=0000h [F6h]:test [bx] [CPU ]:286866550-0000:0013:SP=F14E:DX=0000h [00h]:add [si+FFFFFFFFh],dl [CPU ]:286866551-0000:0016:SP=F14E:DX=0000h [00h]:add al,dh [CPU ]:286866552-0000:0018:SP=F14E:DX=0000h [E4h]:in al,00h [CPU ]:286866553-0000:001A:SP=F14E:DX=0000h [00h]:add al,al [CPU ]:286866554-0000:001C:SP=F14E:DX=0000h [23h]:and di,di [CPU ]:286866555-0000:001E:SP=F14E:DX=0000h [00h]:add al,dh [CPU ]:286866556-0000:0020:SP=F14E:DX=0000h [A5h]:movsw [CPU ]:286866557-0000:0021:SP=F14E:DX=0000h [FEh]:inc [bx+si] [CPU ]:286866558-0000:0023:SP=F14E:DX=0000h [F0h]:Unknown, mod/rm:>46(mod=1,to=0,r/m=6) [CPU ]:286866559-0000:0024:SP=F14E:DX=0000h [46h]:inc si [CPU ]:286866560-0000:0025:SP=F14E:DX=0000h [06h]:push es [CPU ]:286866561-0000:0026:SP=F14C:DX=0000h [FCh]:cld [CPU ]:286866562-0000:0027:SP=F14C:DX=0000h [0Fh]:2 byte cmd, mod/rm:>23(mod=0,to=4,r/m=3) [CPU ]:286866562 Internal Fault on Command [0Fh], mrm[FF(mod=3,to=7,r/m=7)], Processor Halted. Same thing happens whatever interrupt i send or if i just unlock the CPU - it quickly gets to an odd retf, and launches itself plowing into the IVT. I suspect it waits for something else. |
|||
19 Nov 2010, 19:56 |
|
Artlav 22 Nov 2010, 15:30
rugxulo wrote: Win 3.0 [sic] could run on 8086. Not too pretty with CGA, but recognizable: Apparently the pirates game is more complex than Microsoft's best of the time. |
|||
22 Nov 2010, 15:30 |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2024, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.