We don't need dos.library here.

Open intuition.library correctly.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38935 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
François Revol
2010-10-10 16:14:58 +00:00
parent fdb863b626
commit 398144a1b4
+25 -23
View File
@@ -44,17 +44,6 @@
#define _FindResident -0x60 #define _FindResident -0x60
#define _OldOpenLibrary -0x198 #define _OldOpenLibrary -0x198
#define _CloseLibrary -0x19e #define _CloseLibrary -0x19e
// dos.library
#define Old_mode 1005
#define New_mode 1006
#define _Open -0x1e
#define _Close -0x24
#define _Read -0x2a
#define _Write -0x30
#define _Input -0x36
#define _Output -0x3c
#define _IoErr -0x84
#define _Delay -0xc6
// intuition.library // intuition.library
#define _DisplayAlert -90 #define _DisplayAlert -90
@@ -73,7 +62,7 @@
#define SECTSIZE 512 #define SECTSIZE 512
//.text // .text
_bs_entry: _bs_entry:
// Amiga boot sector // Amiga boot sector
_floppy_entry: _floppy_entry:
@@ -91,14 +80,16 @@ _floppy_osversion: // ??
floppy_start: floppy_start:
// save some regs just in case // save some regs just in case
movem.l %d1-%d7/%a0-%a6,-(%sp) //movem.l %d1-%d7/%a0-%a6,-(%sp)
// seems like a6 is already set to ExecBase when called from the ROM ? // seems like a6 is already set to ExecBase when called from the ROM ?
move.l 4.w,%a6 // exec base move.l 4.w,%a6 // exec base
jsr _FindResident(%a6) //jsr _FindResident(%a6)
lea SysBase(%pc),%a2 lea SysBase(%pc),%a2
move.l %a6,(%a2) move.l %a6,(%a2)
// lea dosname_boot(%pc),%a1 // lea dosname_boot(%pc),%a1
// move.l 4.w,%a6 // exec base // move.l 4.w,%a6 // exec base
// jsr _FindResident(%a6) // jsr _FindResident(%a6)
@@ -108,14 +99,20 @@ floppy_start:
// move.l %d0,(%a2) // move.l %d0,(%a2)
lea intname_boot(%pc),%a1 lea intname_boot(%pc),%a1
jsr _FindResident(%a6) jsr _OldOpenLibrary(%a6)
tst.l %d0 tst.l %d0
beq.s _floppy_err beq.s _floppy_err
lea IntuitionBase(%pc),%a2 lea IntuitionBase(%pc),%a2
move.l %d0,(%a2) move.l %d0,(%a2)
// allocate absolute memory to put the bootloader
jsr _display_alert
bra _floppy_err
//_continue: //_continue:
// lea dosname_boot(%pc),%a1 // lea dosname_boot(%pc),%a1
// move.l 4.w,%a6 // exec base // move.l 4.w,%a6 // exec base
@@ -133,21 +130,26 @@ floppy_start:
_floppy_err: _floppy_err:
// pop up saved regs // pop up saved regs
movem.l (%sp)+,%d1-%d7/%a0-%a6 //movem.l (%sp)+,%d1-%d7/%a0-%a6
moveq #-1,%d0 moveq #-1,%d0
rts rts
_display_alert: _display_alert:
move.l %a6,-(%sp) //move.l %a6,-(%sp)
move IntuitionBase,%a6 lea IntuitionBase(%pc),%a6
move.l (%a6),%a6
lea alert_data(%pc),%a0 lea alert_data(%pc),%a0
moveq #0,%d0 moveq #0,%d0
move.l #30,%d1 move.l #40,%d1
jsr _DisplayAlert(%a6) jsr _DisplayAlert(%a6)
move.l (%sp)+,%a6 //move.l (%sp)+,%a6
rts rts
// ATARI // ATARI
#if 0 #if 0
@@ -466,9 +468,9 @@ intname_boot:
alert_data: alert_data:
.word 10 .word 10
.byte 12 .byte 12
.ascii "Welcome to Haiku\0" .ascii "Error loading Haiku: "
alert_extra: alert_extra:
.ascii "\0\0" .ascii "0\0"
.byte 0 .byte 0
GLOBAL(SysBase): GLOBAL(SysBase):