ReactOS on eBox and embedded systems

Ask your support questions in here

Moderator: Moderator Team

pbreneman
Posts: 78
Joined: Wed Feb 25, 2009 5:12 am

ReactOS on eBox and embedded systems

Post by pbreneman »

Has anyone tried using ReactOS on a 30xx series eBox (those use a Vortex86DX CPU)? It seems to be a *very* popular board for CE 6 and Windows Embedded Compact 7. It also seems that some people think ReactOS is ready for use in embedded systems or in a kiosk that runs a single custom application. If it works I'd like to purchase an eBox for use with ReactOS. There are inexpensive touchscreen panel PCs using the same CPU which would be my next target.

The EBox-3310A has been used in recent years on the embedded projects in Imagine Cup:
http://www.imaginecup.com/
http://msdn.microsoft.com/en-us/library/gg155938.aspx

Build a network enabled projector with Windows Embedded Compact 7 in about an Hour
http://www.embedded101.com/Articles/Emb ... -Hour.aspx

eBox-3310A-MSJK Windows Embedded Compact 7 Jump Start Kit
http://www.embeddedpc.net/ebox3310amsjk/

The eBox is used as the hardware resource for several textbooks on embedded programming.

The Vortex86DX CPU is also used in some robotics boards:
http://www.roboard.com/
Z98
Release Engineer
Posts: 3379
Joined: Tue May 02, 2006 8:16 pm
Contact:

Re: ReactOS on eBox and embedded systems

Post by Z98 »

I think we require the CMOV instruction which is missing from these processors.
hto
Developer
Posts: 2193
Joined: Sun Oct 01, 2006 3:43 pm

Post by hto »

According to Wikipedia, "any i586 code will run on Vortex86DX and later."

IIRC, it was a bug in some pre-release of RosBE, that ReactOS when compiled with it crashed on a Pentium machine because of cmov; but Colin fixed it. There was a discussion on ros-dev, I just can't find it.
pbreneman
Posts: 78
Joined: Wed Feb 25, 2009 5:12 am

Re: ReactOS on eBox and embedded systems

Post by pbreneman »

Thanks guys. I do have an embedded industrial card that is very close to the same hardware. Today I tried the 0.3.13 live cd as well as a recent debug build live cd. Searching the forum this message looks like a similar error:

http://www.reactos.org/forum/viewtopic. ... 05d#p38500

Here is the serial debug info I captured:

(ntoskrnl\kd\kdio.c:298) --------------------------------
(ntoskrnl\kd\kdio.c:299) ReactOS 0.3.13 (Build 20110316-r51070)
(ntoskrnl\kd\kdio.c:300) Command Line: /DEBUGPORT=COM1 /SOS /MININT /DEBUG
(ntoskrnl\kd\kdio.c:304) ARC Paths: multi(0)disk(0)cdrom(111) \ multi(0)disk(0)c
drom(111) \reactos\

*** Fatal System Error: 0x0000005d
(0x01050202,0x74726F56,0x36387865,0x436F5320)

Entered debugger on embedded INT3 at 0x0008:0x808fe08c.
kdb:>


(ntoskrnl/kd/kdio.c:321) -----------------------------------
(ntoskrnl/kd/kdio.c:322) ReactOS 0.4-SVN (Build 20110920-r53765)
(ntoskrnl/kd/kdio.c:324) 1 System Processor [0 MB Memory]
(ntoskrnl/kd/kdio.c:325) Command Line: /DEBUGPORT=COM1 /SOS /MININT /BOOTLOG
(ntoskrnl/kd/kdio.c:329) ARC Paths: multi(0)disk(0)cdrom(111) \ multi(0)disk(0)c
drom(111) \reactos\

*** Fatal System Error: 0x0000005d
(0x01050202,0x74726F56,0x36387865,0x436F5320)

Entered debugger on embedded INT3 at 0x0008:0x80903ba4.
kdb:>

This is my first attempt at debugging ReactOS so please be gentle with me. 8-)

Any (simple) suggestions on things I should try or what I should do to move forward?
hto
Developer
Posts: 2193
Joined: Sun Oct 01, 2006 3:43 pm

Post by hto »

*** Fatal System Error: 0x0000005d
(0x01050202,0x74726F56,0x36387865,0x436F5320)
Searching the kernel for "5d" revealed that the error happens here. So, it's Vortex86 SoC, family 5, model 2, stepping 2. The problem is that it's not mentioned there.
Any (simple) suggestions on things I should try or what I should do to move forward?
You can file a bug report. Or just wait, I will fix it.
pbreneman
Posts: 78
Joined: Wed Feb 25, 2009 5:12 am

Re: ReactOS on eBox and embedded systems

Post by pbreneman »

pbreneman
Posts: 78
Joined: Wed Feb 25, 2009 5:12 am

Re: ReactOS on eBox and embedded systems

Post by pbreneman »

Thanks for the help and patch! Build 53799 as a release live cd boots up and seems to work a lot faster than I anticipated. I have an AntiX (Debian-based distro) i486 live cd I can boot up on the same computer and it doesn't seem near as fast for the basic mouse and display stuff. I'm getting more impressed and excited about using ReactOS in the future for some embedded and kiosk work! The embedded board I'm testing with is 800 MHz. with 256 MB. Now I hope to get one of these at 1 GHz. and 512 MB:
http://www.compactpc.com.tw/ebox-3300.htm

And then one of these:
http://www.emacinc.com/panel_pc/pdx089.htm

I've still got some other items to solve. First, when I try to run the 53799 debug live cd it gets to where it is installing devices and it seems to lock up when it is installing the serial port driver. Not too surprising since debug is using that but I'm sure there is a way around this. Here is the debug log (seems to be cut off by the lockup):

:1138) LDR: LdrpMapDll Relocating Image Name gds\system32\dnsapi.dll
(30000)
(dll/ntdl.c:1268) Unsupported or unimplemented: 22
fixme:(dll/win32/shell32/shellpath.cpp:1052) (32,L""), LoadString failed, missin
g translation?
err:(dll/win32/wininet/urlcache.c:549) Couldn't get path for default container 0
fixme:(dll/win32/shell32/shellpath.cpp:1052) (34,L""), LoadString failed, missin
g translation?
err:(dll/win32/wininet/urlcache.c:549) Couldn't get path for default container 1
fixme:(dll/win32/shell32/shellpath.cpp:1052) (33,L""), LoadString failed, missin
g translation?
err:(din32/shell32/shellpath.cpp:1052) (33,L""), LoadString faifault container 2
err:(dll/win32/setupapi/queue.c:1659) copy error 5 L"C:\\reactos\\inf\\serial.sy
s" -> L"C:\\reactos\\system32\\dr\drive\serial.sys"
err:(dll/win32/setupapi/queue.c:1659) copy error 2 L"C:\\reactos\\inf\\serial.sy
s" -> L"C:\\reactos\\system32\\drivers\\serial.sys"
err:(dll/win32/setupapi/queue.c:1659) copy error 5 L"C:\\reactos\\inf\\serenum.s
ys" -> L"C:\\reactos\\system32\\drivers\\serenum.sys"
err:(dll/win32/setupapi/queue.c:1659) copy error 2 L"C:\\reactos\\inf\\serenum.s
ys" -> L"C:\\reactos\\system32\\drivers\\serenum.sys"
(ntoskrnl/mm/ARM3/sysldr.c:168) Loading: \SystemRoot\system32\drivers\serial.sys
at F9A08000 with 12 pages
(ntoskrnl/io/pnpmgr/pnproot.c:1137) IRP_MJ_PNP / Unknown minor function 0x14
(ntoskrnl/io/pnpmgr/pnpmgr.c:3666) IRP_MN_QUERY_PNP_DEVICE_STATE failed with s

Second, both debug and release build cds stop and tell me there is no hard disk present (I have a CF). Hopefully I'll get that solved soon so I can run from the CF rather than the live cd.
hto
Developer
Posts: 2193
Joined: Sun Oct 01, 2006 3:43 pm

Post by hto »

Not too surprising since debug is using that but I'm sure there is a way around this.
It should not interfere with the serial port driver. But try to remove serial.sys from CD image.
pbreneman
Posts: 78
Joined: Wed Feb 25, 2009 5:12 am

Re: ReactOS on eBox and embedded systems

Post by pbreneman »

I think I should ignore the serial error at the moment and figure out the other problem. I wrote before: "both debug and release build cds stop and tell me there is no hard disk present (I have a CF)". That was during the "installing devices" part of the bootup. But when I got that message my BIOS was probably not configured correctly so the message may have been accurate.

I changed my IDE config in the BIOS so now when I boot FreeDOS on the CF it is drive C (primary master) and the CD drive reads OK as drive D (primary slave). So that seems to be a good BIOS config for this PC. Now when I try to boot on the R53799 debug bootcd it stops much sooner in the bootup with the debug log below.

Code: Select all

(ntoskrnl/kd/kdio.c:321) -----------------------------------------------------
(ntoskrnl/kd/kdio.c:322) ReactOS 0.4-SVN (Build 20110922-r53799)
(ntoskrnl/kd/kdio.c:324) 1 System Processor [0 MB Memory]
(ntoskrnl/kd/kdio.c:325) Command Line: /NOGUIBOOT /DEBUGPORT=COM1 /FIRSTCHANCE
(ntoskrnl/kd/kdio.c:329) ARC Paths: multi(0)disk(0)cdrom(111) \ multi(0)disk(0)c
drom(111) \reactos\
(ntoskrnl/ke/i386/cpu.c:251) Vortex86 SoC CPU support not fully tested!
(ntoskrnl/ke/i386/cpu.c:494) Supported CPU features :  KF_RDTSC      KF_CMPXCHG8
B  KF_WORKING_PTE
(ntoskrnl/ke/i386/cpu.c:251) Vortex86 SoC CPU support not fully tested!

toskrnl/ke/i386/cpu.c:801) Prefetch Cache: 32 bytes     L2 Cache: 0 bytes      L
2 Cache Line: 64 bytes  L2 Cache Associativitvi 0
(ntoskrnl/ke/i386/cpu.c:1088) No support for SYSENTER detected.
(ntoskrnl/mm/mminit.c:243)           0x80000000 - 0x81000000    Boot Loaded Imag
e
(ntoskrnl/mm/mminit.c:247)           0xB0000000 - 0xB0181000    PFN Database
(ntoskrnl/mm/mminit.c:251)           0xB0181000 - 0xB0949000    ARMwx Non Paon
Pool
(ntoskrnl/mm/mminit.c:255)           0xBC000000 - 0xBD000000    System View Spac
e
(ntoskrnl/mm/mminit.c:259)           0xBD000000 - 0xC0000000    Session Space
(ntoskrnl/mm/mminit.c:262)           0xC0000000 - 0xC0300000    Page Tables
(ntoskrnl/mm/mminit.c:265)           0xC0300000 - 0xC0400000    Page Directories
(ntoskrnl/mm/mminit.c:268)           0xC0400000 - 0xC0800000    Hyperspace
(ntoskrnl/mm/mminit.c:272)           0xE1000000 - 0xED400000    ARMwx Paged Pool
(ntoskrnl/mm/mminit.c:275)           0xF4C00000 - 0xFA305000    System PTE Space
(ntoskrnl/mm/mminit.c:278)           0xFA305000 - 0xFFBE0000    Non Paged Pool E
xpansion PTE Space
(hal/halx86/legacy/bussupp.c:620) Found parent bus (indicating PCI Bridge). PCI
devices may fail!

====== PCI BUS HARDWARE DETECTION =======

00:00.0 Host bridge [0600]: RDC Semiconductor, Inc. R6021 Host Bridge [17f3:6021
] (rev 01)
        Subsystem: GLoria L [0000:0000]
        Flags: bus master, medium devsel, latency 0

00:03.0  [0300]: XGI Technology Inc. (eXtreme Gra Z7/Z9 (XG20 core) [18ca:0020]
(rev 00)
        Subsystem: Unknown [18ca:0020]
        Flags: 66MHz, medium devsel, latency 0
        Memory at f8000000 (32-bit, prefetchable) [size=128M]
        Memory at fefc0000 (32-bit, non-prefetchable) [size=256K]
        I/O ports at df80 [size=128]

00:07.0 ISA bridge [0601]: RDC Semiconductor, Inc. R6031 ISA Bridge [17f3:6031]
(rev 01)
        Subsystem: GLoria L [0000:0000]
        Flags: bus master, latency 0

00:0c.0 Mass storage controller [0180]: RDC Semiconductor, Inc. R1010 IDE Contro
ller [17f3:1010] (rev 13)
        Subsystem: Unknown [17f3:1010]
        Flags: bus master, 66MHz, medium devsel, latency 64, IRQ 14
        I/O ports at 01f0 [size=16]
        I/O ports at 03f4 [size=4]
        I/O ports at 0170 [size=16]
        I/O ports at 0374 [size=4]
        I/O ports at fff0 [size=16]
        Device is using IRQ 14! ISA Cards using that IRQ may fail!

====== PCI BUS DETECTION COMPLETE =======

PC Compatible Eisa/Isa HAL Detected
(ntoskrnl/io/pnpmgr/pnpinit.c:404) Need to build DACL
(ntoskrnl/io/pnpmgr/pnpmgr.c:2821) ZwOpenKey(\Registry\Machine\SYSTEM\CURRENTCON
TROLSET\Control\Pnp) failed with status 0xc0000034
(ntoskrnl/io/pnpmgr/pnpmgr.c:2824) Firmware mapper is enabled
(ntoskrnl/io/pnpmgr/pnpreport.c:346) Reported device: DETECTEDInternal\PCI_HAL (
Root\PCI_HAL\0)
(ntoskrnl/io/iomgr/iorsrce.c:882) IoReportResourceUsage is halfplemented!
(ntoskrnl/io/iomgr/driver.c:1557) '\Driver\buslogic' initialization failed, stat
us (0xc00000c0)
(ntoskrnl/io/iomgr/driver.c:1557) '\Driver\cdrom' initialization failed, status
(0xc000000e)
(ntoskrnl/io/iomgr/driver.c:1557) '\Driver\floppy' initialization failed, status
 (0xc000000e)
(ntoskrnl/io/iomgr/iomgr.c:525) IopCreateArcNames failed: c0000034

*** Fatal System Error: 0x00000069
                       (0x00000000,0x00000000,0x00000000,0x00000000)

Entered debugger on embedded INT3 at 0x0008:0x80903c54.
kdb:>
pbreneman
Posts: 78
Joined: Wed Feb 25, 2009 5:12 am

Re: ReactOS on eBox and embedded systems

Post by pbreneman »

I just confirmed that with the present BIOS config that FreeDOS 1.0 can boot from CD and install to the CF OK.
pbreneman
Posts: 78
Joined: Wed Feb 25, 2009 5:12 am

Re: ReactOS on eBox and embedded systems

Post by pbreneman »

I've also tried using VMware to install to the CF from the 53799 build cd iso. I'm now able to get a boot started from the CF but now I encounter different errors.

Here is the log file:

Code: Select all

(lib/cmlib/hiveinit.c:31) Verify Hive Header failed:
(lib/cmlib/hiveinit.c:33)     Signature: 0x0 and not 0x66676572, Major: 0x0 and
not 0x1
(lib/cmlib/hiveinit.c:35)     Minor: 0x0 is not >= 0x3, Type: 0x0 and not 0x0
(lib/cmlib/hiveinit.c:37)     Format: 0x0 and not 0x1, Cluster: 0x0 and not 1
(lib/cmlib/hiveinit.c:40)     Sequence: 0x0 and not 0x0, Checksum: 0x1 and not 0
x0
(boot/freeldr/freeldr/reactos/binhive.c:291) err: Invalid hive Signature!

(ntoskrnl/kd/kdio.c:321) -----------------------------------------------------
(ntoskrnl/kd/kdio.c:322) ReactOS 0.4-SVN (Build 20110922-r53799)
(ntoskrnl/kd/kdio.c:324) 1 System Processor [0 MB Memory]
(ntoskrnl/kd/kdio.c:325) Command Line: /DEBUG /DEBUGPORT=COM1 /BAUDRATE=115200 /
SOS
(ntoskrnl/l//kdio.c:329) ARC Paths: multi(0)disk(0)rdisk(0)partitionion \ multi(
0)disk(0)rdisk(0)partition(1) \ReactOS\
(ntoskrnl/ke/i386/cpu.c:251) Vortex86 SoC CPU support not fully tested!
(ntoskrnl/ke/i386/cpu.c:494) Supported CPU features :  KF_RDTSC      KF_CMPXCHG8
B  KF_WORKING_PTE
(ntoskknl/ke/i386/cpu.c:251) Vortex86 SoC CPU support not fully tested!
(ntoskrnl/ke/i386/cpu.c:801) Prefetch Cache: 32 bytes   L2 Cache: 0 bytes      L
2 Cache Line: 64 bytes  L2 Cache Associativity: 0
(hal/halx86/acpi/halacpi.c:592) **** HalpAcpiFindRsdtPhase0: did NOT find RSDT

*** Fatal Sl Sem Error: 0x00000050
                       (0x00000086,0x00000000,0x80907E2C,0x00000002)

Driver at fault:
***  NTOSKRNL.EXE - Address 80907E2C base at 80800000, DateStamp 4e7ad283
.
Entered debugger on embedded INT3 at 0x0008:0x80903c54.
kdb:>
Does the build cd iso install a kernel based on the CPU that is currently running? I'm guessing that is the problem since the CPU during the install on VMware is not the Vortex86. If so, can I change it on the CF back to the kernel for the Vortex86?
hto
Developer
Posts: 2193
Joined: Sun Oct 01, 2006 3:43 pm

Post by hto »

I'm guessing that is the problem since the CPU during the install on VMware is not the Vortex86.
No, it should not be a problem. Choose "Standard PC Uniprocessor" instead of "ACPI PC Uniprocessor" during installation.

When you see "kdb:>" prompt, type bt on the frozen machine to obtain a backtrace.
pbreneman
Posts: 78
Joined: Wed Feb 25, 2009 5:12 am

Re: ReactOS on eBox and embedded systems

Post by pbreneman »

Thanks for your help! Here is the log with "Standard PC Uniprocessor" chosen during install:

Code: Select all

(boot/freeldr/freeldr/reactos/binhive.c:291) err: Invalid hive Signature!
(ntoskrnl/kd/kdio.c:321) -----------------------------------------------------
(ntoskrnl/kd/kdio.c:322) ReactOS 0.4-SVN (Build 20110922-r53799)
(ntoskrnl/kd/kdio.c:324) 1 System Processor [0 MB Memory]
(ntoskrnl/kd/kdio.c:325) Command Line: /DEBUG /DEBUGPORT=COM1 /BAUDRATE=115200 /
SOS /KDSERIAL
(ntoskrnl/kd/kd/o.c:329) ARC Paths: multi(0)disk(0)rdisk(0)partition(1) \ multi(
0)disk(0)rdisk(0)partition(1) \ReactOS\
(ntoskrnl/ke/i386/cpu.c:251) Vortex86 SoC CPU support not fully tested!
(ntoskrnl/ke/i386/cpu.c:494) Supported CPU features :  KF_RDTSC      KF_CMPXCHG8
B  KF_WORKING_PTE
(n(ntkrnl/ke/i386/cpu.c:251) Vortex86 SoC CPU support not fully tested!
(ntoskrnl/ke/i3866/pu.c:801) Prefetch Cache: 32 bytes   L2 Cache: 0 bytes      L
2 Cache Line: 64 bytes  L2 Cache AsAs Aativity: 0

*** Fatal System Error: 0x00000050
                       (0x00000086,0x00000000,0x80907E2C,0x00000002)

Driver at fault:
***  NTOSKRNL.EXE - Address 80907E2C base at 80800000, DateStamp 4e7ad283
.
Entered debugger on embedded INT3 at 0x0008:0x80903c54.
kdb:> bt
Eip:
<80903c55>
Frames:
<8080adea>
<8080af35>
<808a7098>
<808a7a19>
<808c3d5e>
<80806baf>
<808fe65d>
<80907e2c>
<80907403>
<80844fa3>
<808048b8>
<80804a40>
<0000000e>
<0001ecf7>
<0001f016>
<0003000a>
<00020e6c>
<00009233>
<4e495753>
Assertion '!MM_ANY_WS_LOCK_HELD(Thread)' failed at ntoskrnl/mm/ARM3/../ARM3/miar
m.h line 812
--- Press q to abort, any other key to continue ---
Entered debugger on embedded INT3 at 0x0008:0x80903c4e.

*** Fatal System Error: 0x0000001e
                       (0x80000003,0x80903C4E,0x80989780,0x00000000)

Entered debugger on embedded INT3 at 0x0008:0x80903c54.
hto
Developer
Posts: 2193
Joined: Sun Oct 01, 2006 3:43 pm

Post by hto »

Maybe it's a filesystem corruption, so ReactOS can't read registry hives. Try to check the filesystem, or re-format and install again.

The fatal system error happened because ANSI-to-Unicode translation table was not loaded. Maybe because of that registry error.
Haos
Test Team
Posts: 2954
Joined: Thu Mar 22, 2007 5:42 am
Contact:

Re: ReactOS on eBox and embedded systems

Post by Haos »

Please use raddr2line and trace the backtrace to source code. You can find instruction in our wiki, but please ask if something is not clear to you.
Post Reply

Who is online

Users browsing this forum: Bing [Bot] and 6 guests