The checksum problem was caused by bad pointer arithmetic (difference of pointers to long is not equal to their byte difference).
Now also IOMMU and MMU mappings work. ESP is pretty close to working, we can really probe for the devices and get their properties, but READ_10 still returns zero data.
00000000-08000000 RAM 128 MB forth started. initializing memory...done map_io: va 0xffdc4000 pa 0x10000000 off 0x0 npages 3 IOMMU: impl 0 vers 0 page table at 0xffda8000 of size 32768 bytes Initializing SBus devices... Initializing SCSI...map_io: va 0xffdc7000 pa 0x78400000 off 0x0 npages 1 dma1: Revision 0 map_io: va 0xffdc8000 pa 0x78800000 off 0x0 npages 1 done Initializing SCSI devices...SCSI DRIVE @ffd70030: id: 0 media: disk model: QEMU HARDDISK sectors: 23017 present: 1 bs: 512 SCSI DRIVE @ffd700a0: id: 2 media: cdrom model: QEMU CDROM sectors: 0 present: 1 bs: 2048 done
_________________________________________________________________ Express yourself instantly with MSN Messenger! Download today it's FREE! http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/