flat assembler
Message board for the users of flat assembler.

Index > MenuetOS > menuetos xbox

Thread Post new topic Reply to topic

Joined: 21 Nov 2004
Posts: 2
i have run menuetos in bochsX on the xbox with some success,

it's cool, the mouse is the control pad! (but i can't click anything)

all i did was dl the menuetos.img and change the bochsxbox file

floppya: 1_44="d:\menuetos.img", status=inserted
boot: a

then boot menu press 0, 1 (mtr) 1(usb/ps2) 1(load from floopy)

but if menuetos is pure ASM, and the xbox is i386, files in ASM then would it work on xbox platform? linux have a bootloader for xbox, could this boot menuetos?

here is some xbox asm examples


Last edited by hip on 21 Nov 2004, 11:50; edited 1 time in total
Post 21 Nov 2004, 04:04
View user's profile Send private message Visit poster's website Reply with quote

Joined: 21 Nov 2004
Posts: 2
does menuetos support many of these devices?

|-- Intel Pentium III / Celeron CPU
|-- Flash ROM
`-- PCI bus
|-- Programmable Interrupt Controller
|-- System Timer
|-- DMA Controller
|-- PCI Bridge Device - Host Bridge (0:0:0, 0x2a5)
|-- Memory Controller - SDRAM (0:0:3, 0x2a6)
|-- HUB Interface - ISA Bridge (0:1:0, 0x1b2) [nForce]
|-- SMBus Controller (0:1:1, 0x1b4) [nForce]
| |-- PIC16LC
| |-- CX25871/FS454/Xcalibur Video Encoder
| |-- ADM1032 System Temperature Monitor
| `-- Serial EEPROM
|-- OHCI USB Controller (0:2:0, 0x1c2) [nForce]
|-- OHCI USB Controller (0:3:0, 0x1c2) [nForce]
|-- MCP Networking Adapter (0:4:0, 0x1c3) [nForce]
|-- MCP APU (0:5:0, 0x1b0) [nForce]
|-- Audio Codec Interface (0:6:0, 0x1b1) [nForce]
|-- Simple Communication Controller - Generic Modem (0:6:1, 0x1c1) [???]
|-- IDE Controller (0:9:0, 0x1bc) [nForce]
| |-- Primary IDE Channel
| | |-- Hard Drive
| | `-- DVD Drive
| `--- Secondary IDE Channel
|-- PCI Bridge (0:8:0, 0x1b8) [nForce]
`-- AGP Host to PCI Bridge (0:30:0, 0x1b7) [nForce]
`-- NV2A GeForce3 Integrated GPU (1:0:0, 0x2a0)

Post 21 Nov 2004, 11:41
View user's profile Send private message Visit poster's website Reply with quote

Joined: 28 Apr 2004
Posts: 376
Location: UK
The xbox is a just a pc, you could run menuetos with some mods, eg: take out the 16bit code, do not use vesa, but write to screen like this
; code.asm; C:>nasm code.asm -o code.xbe; This includeds the header information for the xbe file.%include "header.asm"; CODE ** CODE ** CODE ** CODE ** CODE ** CODE ** CODE ** CODE; CODE ** CODE ** CODE ** CODE ** CODE ** CODE ** CODE ** CODE; Lets jump to the entry point in our code; e.g. like we do with main() in C...jmp   startframebuffer:dd    0xf0010000 + 640*320 + 80;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~DrawPixel:;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~; Setup Functionpush  ebp                           ; Setup our functionmov   ebp, esp; ecx = y;; ebx = x; ecx*=640; ecx = x+y*640mov   ecx, DWORD [ebp+12]                 ; put y pos in ecximul  ecx, 640    mov   ebx, DWORD [ebp+8]                  ; put x pos int edxadd   ecx, ebx                       ; hence ecx = x+y*640mov   ebx, DWORD [framebuffer]      ; Get the location in memory ; where we will put this pixel ; e.g. framebuffer; Put blue pixel into memorymov   eax, DWORD [ebp+16]                 ; put pixel colour in eaxand   eax, 255mov   BYTE [ebx+ecx*4], al; Put green pixel into memorymov   eax, DWORD [ebp+16]                 ; put pixel colour in edxand   eax, 65280shr   eax, 8mov   BYTE [ebx+ecx*4+1], al; Put red pixel into memorymov   eax, DWORD [ebp+16]and   eax, 16711680shr   eax, 16mov   BYTE [ebx+ecx*4+2], al; tidy up and return from function callpop   ebpret   0;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~; End of DrawPixel;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~; Globals;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~xpos:dd    310                     ; width/2 = 640/2 = 310ypos:dd    240                     ; height/2 = 480/2 = 240      colour:dd    0xff0000              ; Red colour pixelxloop:                      ; We do a simple loop; and draw a small linedd    0x50;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~start:;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~a_loop:; This is the same as DrawPixel(x, y, colour) push  DWORD [colour]push DWORD [ypos]push  DWORD [xpos]call  DrawPixeladd   esp, 12; Increment the ypos.mov   eax, [ypos]add   eax, 1mov   [ypos], eax; Loop around 100 times back to loopx - as; sometimes people say...I can't see; the red pixel...so using this simple asm ;loop... we've managed to draw a ; simple line : mov eax, [xloop] dec eax mov [xloop],eaxjne a_loop; Program has now finished, so we ;simply just stay here and loop Smilebbb:   jmp bbb;; END OF CODE ** END OF CODE ** END OF CODE ** END OF CODE ; END OF CODE ** END OF CODE ** END OF CODE ** END OF CODE TIMES 0x6000-($-$$) DB 0x90   ; this will make our section finish at 0x6000 ; from the start of the file.TIMES 0x7000-($-$$) DB 0x0    ; And of course, this will make our file size ; equal to 0x7000 a nice round number - ; 0x7000 is 28672bytes... so if you assemble the file ; you should find its that size exactly.    

The above code fill screen with color and draws a line.
eject_cd:mov dx, 0xc004mov al, 0x20out dx, almov dx, 0xc008  ; commandmov al, 0x0Cout dx, almov dx, 0xc006  ; datamov al, 0x0out dx, almov dx, 0xc000in ax, dxout dx, almov dx, 0xc002mov al, 0x1aout dx, aldelay:mov eax, 1000000 ; Small delay looploopx:dec eaxjne loopxaa:jmp aa    

The above code eject dvd.

So yes you could with some mods, with dircet programming, remember you know what the hardware is .

Batteries not included, Some assembly required.
Post 21 Nov 2004, 18:31
View user's profile Send private message Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  

< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You can attach files in this forum
You can download files in this forum

Copyright © 1999-2020, Tomasz Grysztar.

Powered by rwasa.