Jump to content











Photo
* * * * * 7 votes

FiraDisk (latest = 0.0.1.30)


  • Please log in to reply
630 replies to this topic

#176 Marietto

Marietto

    Frequent Member

  • Advanced user
  • 268 posts
  • Location:Italy
  • Interests:Computers,movies,read/write,talking about philosophy and religion.
  •  
    Italy

Posted 09 November 2009 - 06:13 PM

Thanks Karyonix,so I use the VHD image file as is,because there is only a warning message,it is able to boot without problems.
Since I installed Windows XP on the root of the USB disk,I load Windows 7 into memory using the XP boot procedure and GRUB4DOS. How can I boot Windows 7 from the VHD image file using them ?

boot.ini

[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows FLP" /noexecute=optin /fastdetect
c:\grldr="Grub4Dos"

menu.lst

title Boot 7 from RAMDisk
find --set-root /7-ram_2_6G.vhd
map --mem /7-ram_2_6G.vhd (hd0)
map --hook
root (hd0,0)
chainloader /bootmgr

is this correct to add something like this to menu.lst ?

title Boot 7 from VHD
map (hd0,0)/7-ram_2_6G.vhd (hd0)
map (hd0)
map --hook
chainloader /bootmgr
or
chainloader (hd0,0)+1

#177 Marietto

Marietto

    Frequent Member

  • Advanced user
  • 268 posts
  • Location:Italy
  • Interests:Computers,movies,read/write,talking about philosophy and religion.
  •  
    Italy

Posted 09 November 2009 - 07:27 PM

title Boot 7 from VHD
map (hd0,0)/7-ram_2_6G.vhd (hd0)
map (hd0) (hd1)
map --hook
chainloader /bootmgr

Windows 7 boots,but after few seconds : BSOD ; STOP : 0x0000007b

#178 ilko

ilko

    Silver Member

  • Advanced user
  • 500 posts
  •  
    Bulgaria

Posted 09 November 2009 - 08:15 PM

title Boot 7 from VHD
map (hd0,0)/7-ram_2_6G.vhd (hd0)
map (hd0)
map --hook
chainloader /bootmgr

gives this error :

map (hd0)

error 11 : unrecognized device string or you omitted the required DEVICE part which should lead the filename.

http://diddy.boot-la...s/files/map.htm

Map command expects FROM and TO. You have FROM, where is TO? Where do you map HD0 to? What's actually your idea about this line, what are you trying to accomplish?

#179 Marietto

Marietto

    Frequent Member

  • Advanced user
  • 268 posts
  • Location:Italy
  • Interests:Computers,movies,read/write,talking about philosophy and religion.
  •  
    Italy

Posted 09 November 2009 - 08:24 PM

---> map (hd0) (hd1) ---> BSOD ; STOP : 0x0000007b

hd0 because I want to load Windows 7 from the VHD image file and it is always mapped on (hd0)
hd1 because 7-ram_2_6G.vhd is located on (hd1)

is this right ?

but why I get 0x0000007b ?

#180 wimb

wimb

    Platinum Member

  • Developer
  • 3756 posts
  • Interests:Boot and Install from USB
  •  
    Netherlands

Posted 09 November 2009 - 08:29 PM

The VHD file should be launched from BOOTMGR Menu instead of from Grub4dos Menu.

Make an entry for VHD file in BCD store of Windows 7 using bcdedit.exe and then boot from BOOTMGR Menu :dubbio:

Boot with bootmgr of Windows 7 first into BCD - BOOTMGR Menu and then boot with Win7 VHD-file

#181 amalux

amalux

    Platinum Member

  • Tutorial Writer
  • 2813 posts
  •  
    United States

Posted 10 November 2009 - 10:15 PM

Forgive me if discussed already...

I have a working livexp build (no log errors) with firadisk bootsdi using 077rc2 but some issues and questions remain. There appears in my computer a virtual drive
Attached File  fira_imgburn_virdrverr2.jpg   25.42KB   15 downloads
that is not recognized by imgburn.
Attached File  fira_imgburn_virdrverr.jpg   14.49KB   6 downloads
Why is this virtual drive present (what purpose is served)? Can I change a setting to avoid its creation? If this is a known issue, is there a fix in the works? etc. etc.

btw, thanks again for the firadisk driver! :thumbup:

#182 Lancelot

Lancelot

    Frequent Member

  • .script developer
  • 5013 posts
  • Location:Turkiye/Izmir
  • Interests:*Mechanical stuff and Physics,
    *LiveXP, BartPE, SherpyaXPE,
    *Basketball and Looong Walking,
    *Buying outwear for my girlf (Reason: Girls are stupid about buying bad stuff to make themselves uglier :))
    *Girls (Lyric: Girl,...., You will be a womann, Soon)
    *Answering questions for "Meaning of life",
    *Helping people,

    Kung with LiveXP, Fu with Peter :)
  •  
    Turkey

Posted 10 November 2009 - 10:44 PM

@amalux

I feel for tests you boot the iso image with somethings like that

title LiveXP_RAM.iso - mem

find --set-root /LIVEXP_RAM.ISO

map --mem /LIVEXP_RAM.ISO (hd32)

map --hook

chainloader (hd32)

If this is true:

I don't know the technical explanation, as far as i know windows can't understand grub4dos image mapping but aware there is a device, as a result there happens drive letter.
Same think also happens when M$ ramdisk.sys used.

@karyonix
probably you already know, better to remind not to cause misunderstandings, bootsdi on livexp have a wrong naming, it is not sdi, it creates an image with oriensol's hddimage (default) or superfloppy and does the rest.

btw, I love your explanations (posts), they are very clear and straight, current topic is also an education topic for me :thumbup:

#183 amalux

amalux

    Platinum Member

  • Tutorial Writer
  • 2813 posts
  •  
    United States

Posted 10 November 2009 - 11:30 PM

@amalux

I feel for tests you boot the iso image with somethings like that

title LiveXP_RAM.iso - mem
find --set-root /LIVEXP_RAM.ISO
map --mem /LIVEXP_RAM.ISO (hd32)
map --hook
chainloader (hd32)

If this is true:

I don't know the technical explanation, as far as i know windows can't understand grub4dos image mapping but aware there is a device, as a result there happens drive letter.
Same think also happens when M$ ramdisk.sys used.

Lancelot,

Sorry, meant to mention it, yes, booting from ISO (my preferred way for testing). IMA bootsdi doesn't have this issue, I guess I'll go back to that for now :thumbup:

:thumbup:

#184 Lancelot

Lancelot

    Frequent Member

  • .script developer
  • 5013 posts
  • Location:Turkiye/Izmir
  • Interests:*Mechanical stuff and Physics,
    *LiveXP, BartPE, SherpyaXPE,
    *Basketball and Looong Walking,
    *Buying outwear for my girlf (Reason: Girls are stupid about buying bad stuff to make themselves uglier :))
    *Girls (Lyric: Girl,...., You will be a womann, Soon)
    *Answering questions for "Meaning of life",
    *Helping people,

    Kung with LiveXP, Fu with Peter :)
  •  
    Turkey

Posted 10 November 2009 - 11:40 PM

(my preferred way for testing). :thumbup:

With having firadisk now, time to change old habits of ramdisk.sys :thumbup: , single bootsdi.img (with firadisk) is enough for booting :w00t:
Besides, my favorite test method for a while is using LiveXP.iso with firadisk + grub4dos :thumbup:
all available here post 23
Hurrraaaa firadisk :thumbup: Thanks a loooot karyonix :(

#185 amalux

amalux

    Platinum Member

  • Tutorial Writer
  • 2813 posts
  •  
    United States

Posted 11 November 2009 - 12:10 AM

With having firadisk now, time to change old habits of ramdisk.sys :thumbup: , single bootsdi.img (with firadisk) is enough for booting :w00t:
Besides, my favorite test method for a while is using LiveXP.iso with firadisk + grub4dos :thumbup:
all available here post 23
Hurrraaaa firadisk :thumbup: Thanks a loooot karyonix :(

I guess you're saying there's a way to boot from firadisk bootsdi ISO without causing this virtual drive issue?! Nice :w00t: -- I'll check out your post :thumbup:

Beautiful

find --set-root /LIVEXP_RAM.ISO
map /LIVEXP_RAM.ISO (hd32)
map --hook
chainloader (hd32)

Thanks again :thumbup:

#186 Marietto

Marietto

    Frequent Member

  • Advanced user
  • 268 posts
  • Location:Italy
  • Interests:Computers,movies,read/write,talking about philosophy and religion.
  •  
    Italy

Posted 14 November 2009 - 07:08 AM

I created a new thread : http://www.boot-land...?showtopic=9712

SERVICE POST: by jaclaz
and i moved there related previous posts.

The topic about conversion from .img and .vhd has been moved here:
http://www.boot-land...?showtopic=9715

#187 Dietmar

Dietmar

    Frequent Member

  • Advanced user
  • 243 posts
  •  
    Afghanistan

Posted 21 November 2009 - 12:58 PM

Hi karyonix,

nice work :cheers:!

I take a look about the speed of XP in Ram.
I have a complete XP SP1 on CD, and put this to ram and boot.
Boottime because of slow CD is 2 min.
I use for this the ramdisk.sys driver 5.2.3790.1830 from Microsoft.
The size with this is limited to 500 MB.
The NTFS compressed image on CD has a size of 497 MB.
It boots all computer, that I have :).
But write speed in ram from C: is only 40 Mbyte/sec
and read 200 Mbyte /sec. Exact the same behavior shows the XP in ram with the driver from diskless angel.
When I do USB boot and use EWF Ram from Windows Embedded,
I get 1000 Mbyte/s read speed and 500 MByte/s for write.
A normal ramdisk xp pro from Superspeed software shows 1400 Mbyte/s read and 1000 Mbyte/s write speed.
As mentioned here in the forum, this is because it uses direct memory access DMA. My own driver for ramboot ntbootdd.sys uses the scsiminiport driver model. To allow direct DMA operation you have to use in the ramboot driver

Windows Driver Kit: Storage Devices
ScsiPortGetPhysicalAddress
The ScsiPortGetPhysicalAddress routine converts a given virtual address range to a physical address range for a DMA operation.

SCSI_PHYSICAL_ADDRESS ScsiPortGetPhysicalAddress( IN PVOID HwDeviceExtension, IN PSCSI_REQUEST_BLOCK Srb OPTIONAL, IN PVOID VirtualAddress, OUT ULONG *Length );


Nice to hear from you all,
Dietmar

#188 was_JFX

was_JFX

    Frequent Member

  • Advanced user
  • 483 posts
  •  
    Germany

Posted 21 November 2009 - 01:14 PM

Hi Dietmar,

MS ramdisk.sys driver is working with images above 512 MB (guess limit is almost 4GB) with patched ntldr

http://www.boot-land...?showtopic=9474

actually wanted to ask you, why preferring XP SP1?

:cheers:

#189 karyonix

karyonix

    Frequent Member

  • Advanced user
  • 481 posts
  •  
    Thailand

Posted 21 November 2009 - 02:08 PM

@Dietmar
I don't think DMA is that fast.
I still don't know exactly what causes slow read/write.
Maybe better queuing or scatter/gather list can improve RAM disk read/write speed.

#190 Dietmar

Dietmar

    Frequent Member

  • Advanced user
  • 243 posts
  •  
    Afghanistan

Posted 21 November 2009 - 05:08 PM

@Dietmar
I don't think DMA is that fast.
I still don't know exactly what causes slow read/write.
Maybe better queuing or scatter/gather list can improve RAM disk read/write speed.



Hi karyonix,

if I interpreted

http://download.micr...eb/Storport.doc

right, then should be with 50% CPU use 1,79 Gbyte/sec possible with DMA at a package size of 512 byte. I am quite sure about this, because also PCI-E uses DMA,
nice to hear from you
Dietmar

#191 karyonix

karyonix

    Frequent Member

  • Advanced user
  • 481 posts
  •  
    Thailand

Posted 21 November 2009 - 11:30 PM

If you use DMA to transfer data CPU usage should not be more than few percent.
I don't know the maximum speed of DMA and how to use DMA to copy data from RAM to RAM.

#192 Dietmar

Dietmar

    Frequent Member

  • Advanced user
  • 243 posts
  •  
    Afghanistan

Posted 22 November 2009 - 10:20 AM

Hi karyonix,
I just looked with IDA dissassmbler at your file for ramboot :w00t:.
I noticed, that you do not use the scsiport model for your driver. Even diskless angel does not use it. But I do it for my ntbootdd.sys. So, for me it is easy, to do very small changes to my driver to get full DMA access. I also noticed, that the ataboot.sys driver from Microsoft, renamed to ntbootdd.sys works nearly exact as my driver. Even for USB boot it looks not so difficult to use my ntbootdd.sys with only very small changes. I make a try with my ntbootdd.sys for ramboot with DMA and show you the speed results.
My problem is "only" to get enough :dubbio: free time for this,
nice to hear from you,
Dietmar

#193 was_jaclaz

was_jaclaz

    Finder

  • Advanced user
  • 7101 posts
  • Location:Gone in the mist
  •  
    Italy

Posted 22 November 2009 - 11:47 AM

So, for me it is easy, to do very small changes to my driver to get full DMA access. I also noticed, that the ataboot.sys driver from Microsoft, renamed to ntbootdd.sys works nearly exact as my driver. Even for USB boot it looks not so difficult to use my ntbootdd.sys with only very small changes. I make a try with my ntbootdd.sys for ramboot with DMA and show you the speed results.
My problem is "only" to get enough :w00t: free time for this,

If I may :w00t:, your problem is failing to provide your ntbootdd.sys :(, I really don't get it:
  • you do not release it
  • you do not give it's code
  • every, say, 6 months you come back from nowhere, only to post a tantalizing hint about how good it is

Last time you ignored my question, if I am not mistaken:
http://www.911cd.net...o...20450&st=44

Or is it a conspiracy :cheers: involving you and the abandoned FreddyV driver:
http://www.boot-land...?showtopic=3593
http://www.911cd.net...showtopic=20450
to try making me mad? :w00t:

You are of course perfectly free to keep both the actual driver and its source for yourself :), but this is teasing! :dubbio:

:cheers:

jaclaz

P.S.: since I know, and you know you are NOT coming from Afghanistan, you may want to read this:
http://www.boot-land...?showtopic=3153
and comply with it. :cheers:

#194 Dietmar

Dietmar

    Frequent Member

  • Advanced user
  • 243 posts
  •  
    Afghanistan

Posted 22 November 2009 - 12:21 PM

Hi jaclaz,
you are right. My problem is always small time :-),
nothing bad at all. I cant upload my ntbootdd.sys here.
I get a message "Upload failed. The file was larger than the available space" even it needs only 32 kbyte spave.

You only need to put to a higher hex number, for that this works for more ram, this is for exact 32 Mbyte

const ULONG DiskBase = 0x2000000;

I think, 2 Gbyte are possible (Fat16).
The USB ntbootdd.sys from Freddy, that you give to me, uses nearly the same but with direct DMA support.
This ntbootdd.sys starts any XP or whatever, that you put to ram! I put it to ram from USB, CD, DVD, harddisk.
Harddisk needs only 1 sec to put to ram and start 32 MByte XP from there!
The size of the ramdisk has to be exact the same as Diskbase.
It works as the following: You put XP (or any other) to ram. You need to know exact, where this XP stays in ram! Then you do warm reboot.The XP content in the ram survives this. This ntbootdd.sys shows after this part of the ram as harddisk and it boots to XP from there in 1 sec!

Here is the cpp Source code ntbootdd.cpp with little modification (thanks
to Gary Nebbett 1997)for ntbootdd.sys . I compiled it for NT4 and for XP
and it works. If You change scsi.h against storport.h it doesnt work any
more. The compiled size is only 3kByte. It is not too difficult, to
understand, how this program works. I also give you my SOURCE file for
compiling, because these libraries are NOT includet by the compiler
himself. That is, what I call a nice program, not MEGA and MEGABYTE from
people, who dont know how to make it better...

extern "C" {#include "miniport.h"#include "scsi.h"}#include <memory.h>#pragma pack(push, 1)typedef struct PTABLE {UCHAR Flag;UCHAR Chs1[3];UCHAR Type;UCHAR Chs2[3];ULONG Start;ULONG Size;} *PPTABLE;typedef struct FAT {UCHAR Jump[3];UCHAR System[8];USHORT BytesPerSector;UCHAR SectorsPerCluster;USHORT ReservedSectors;UCHAR FatCopies;USHORT RootEntries;USHORT SmallSectors;UCHAR MediaType;USHORT SectorsPerFat;USHORT SectorsPerTrack;USHORT Heads;ULONG HiddenSectors;ULONG LargeSectors;UCHAR Disk;UCHAR Flags;UCHAR Signature;ULONG SerialNumber;UCHAR Label[11];UCHAR Format[8];UCHAR Code[0x17A];ULONG DiskSignature;UCHAR Reserved;UCHAR BootPartition;PTABLE Table[4];USHORT BootSignature;} *PFAT;#pragma pack(pop)typedef PVOID *PPVOID;const ULONG PageSize = 0x1000;const ULONG DiskBase = 0x2000000;ULONG BytesPerBlock, Blocks;PCHAR MapBase;BOOLEAN Boot;ULONG ChunkSize(ULONG Offset, ULONG Length, ULONG Position){ULONG X = PageSize - ((Offset + Position) & (PageSize - 1));ULONG Y = Length - Position;return X < Y ? X : Y;}PVOID MapPage(PVOID DeviceExtension, ULONG Address){ULONG X = (Address - DiskBase) / PageSize;if (PPVOID(DeviceExtension)[X] == 0)*(PPVOID(DeviceExtension) + X) =ScsiPortGetDeviceBase(DeviceExtension, Internal, 0,ScsiPortConvertUlongToPhysicalAddress(Address & ~(PageSize - 1)),PageSize, FALSE);return PCHAR(PPVOID(DeviceExtension)[X]) + (Address & (PageSize -1));}PVOID MapAddress(PVOID DeviceExtension, ULONG Address, ULONG Size){return ScsiPortGetDeviceBase(DeviceExtension, Internal, 0,ScsiPortConvertUlongToPhysicalAddress(Address), Size, FALSE);}BOOLEAN StartIo(PVOID DeviceExtension, PSCSI_REQUEST_BLOCK Srb){Srb->SrbStatus = SRB_STATUS_INVALID_REQUEST;Srb->ScsiStatus = SCSISTAT_GOOD;if (Srb->Function == SRB_FUNCTION_EXECUTE_SCSI && Srb->Lun == 0) {switch (Srb->Cdb[0]) {case SCSIOP_INQUIRY:{memset(Srb->DataBuffer, 0, Srb->DataTransferLength);PINQUIRYDATA Inq = PINQUIRYDATA(Srb->DataBuffer);Inq->DeviceType = DIRECT_ACCESS_DEVICE;Inq->DeviceTypeQualifier = DEVICE_CONNECTED;memcpy(Inq->VendorId, "NEBBETT ", sizeof Inq->VendorId);Srb->SrbStatus = SRB_STATUS_SUCCESS;}break;case SCSIOP_MODE_SENSE:{memset(Srb->DataBuffer, 0, Srb->DataTransferLength);PMODE_PARM_READ_WRITE_DATA Mode =PMODE_PARM_READ_WRITE_DATA(Srb->DataBuffer);Mode->ParameterListHeader.ModeDataLength = sizeof *Mode -1;Mode->ParameterListHeader.BlockDescriptorLength = sizeofMode->ParameterListBlock;Srb->SrbStatus = SRB_STATUS_SUCCESS;}break;case SCSIOP_TEST_UNIT_READY:case SCSIOP_MEDIUM_REMOVAL:{Srb->SrbStatus = SRB_STATUS_SUCCESS;}break;case SCSIOP_READ_CAPACITY:{ULONG X = BytesPerBlock;REVERSE_BYTES(&PREAD_CAPACITY_DATA(Srb->DataBuffer)->BytesPerBlock, &X);X = Blocks - 1;REVERSE_BYTES(&PREAD_CAPACITY_DATA(Srb->DataBuffer)->LogicalBlockAddress,&X);Srb->SrbStatus = SRB_STATUS_SUCCESS;}break;case SCSIOP_READ:{ULONG X;REVERSE_BYTES(&X,&PCDB(Srb->Cdb)->CDB10.LogicalBlockByte0);if (Boot) {X = X * BytesPerBlock + DiskBase;for (ULONG Z, Y = 0; Y < Srb->DataTransferLength; Y +=Z) {Z = ChunkSize(X, Srb->DataTransferLength, Y);memcpy(PCHAR(Srb->DataBuffer) + Y,MapPage(DeviceExtension, X + Y), Z);}}elsememcpy(Srb->DataBuffer, MapBase + X * BytesPerBlock,Srb->DataTransferLength);Srb->SrbStatus = SRB_STATUS_SUCCESS;}break;case SCSIOP_WRITE:{ULONG X;REVERSE_BYTES(&X,&PCDB(Srb->Cdb)->CDB10.LogicalBlockByte0);if (Boot) {X = X * BytesPerBlock + DiskBase;for (ULONG Z, Y = 0; Y < Srb->DataTransferLength; Y +=Z) {Z = ChunkSize(X, Srb->DataTransferLength, Y);memcpy(MapPage(DeviceExtension, X + Y),PCHAR(Srb->DataBuffer) + Y, Z);}}elsememcpy(MapBase + X * BytesPerBlock, Srb->DataBuffer,Srb->DataTransferLength);Srb->SrbStatus = SRB_STATUS_SUCCESS;}break;default:{ScsiDebugPrint(1, "StartIo Function Execute %x, Flags %lx,Len %lx\n",int(Srb->Cdb[0]), Srb->SrbFlags,Srb->DataTransferLength);// for (int i = 0; i < 2000; i++)ScsiPortStallExecution(1000);}break;}}ScsiPortNotification(RequestComplete, DeviceExtension, Srb);ScsiPortNotification(NextRequest, DeviceExtension);return TRUE;}ULONG FindAdapter(PVOID DeviceExtension, PVOID, PVOID, PCHAR,PPORT_CONFIGURATION_INFORMATION ConfigInfo, PBOOLEANAgain){PFAT Fat = PFAT(MapAddress(DeviceExtension, DiskBase, sizeof (FAT)));Boot = Fat->LargeSectors != 0;BytesPerBlock = Fat->BytesPerSector;Blocks = Fat->SmallSectors;Fat->LargeSectors = 0;Fat->BootSignature = 0xAA55;Fat->Table[0].Type = 4;Fat->Table[0].Start = 0;Fat->Table[0].Size = Blocks;Fat->Table[1].Type = Fat->Table[2].Type = Fat->Table[3].Type = 0;ScsiPortFreeDeviceBase(DeviceExtension, Fat);if (!Boot) MapBase = PCHAR(MapAddress(DeviceExtension, DiskBase,Blocks * BytesPerBlock));ConfigInfo->NumberOfBuses = 1;ConfigInfo->MaximumNumberOfTargets = 1;*Again = FALSE;return SP_RETURN_FOUND;}BOOLEAN ResetBus(PVOID DeviceExtension, ULONG PathId){ScsiPortCompleteRequest(DeviceExtension, UCHAR(PathId), SP_UNTAGGED,SP_UNTAGGED,SRB_STATUS_BUS_RESET);return TRUE;}BOOLEAN Initialize(PVOID){return TRUE;}extern "C"ULONG DriverEntry(PVOID DriverObject, PVOID RegistryPath){HW_INITIALIZATION_DATA Hid = {sizeof Hid};Hid.AdapterInterfaceType = Isa;Hid.DeviceExtensionSize = 0x2000 * sizeof (PVOID);Hid.MapBuffers = TRUE;Hid.HwFindAdapter = FindAdapter;Hid.HwInitialize = Initialize;Hid.HwResetBus = ResetBus;Hid.HwStartIo = StartIo;return ScsiPortInitialize(DriverObject, RegistryPath, &Hid, 0);}
And here is the SOURCE for compiling for XP:
4D 5A 90 00 03 00 00 00 04 00 00 00 FF FF 00 00 B8 00 00 00 00 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 C8 00 00 00 0E 1F BA 0E 00 B4 09 CD 21 B8 01 4C CD 21 54 68 69 73 20 70 72 6F 67 72 61 6D 20 63 61 6E 6E 6F 74 20 62 65 20 72 75 6E 20 69 6E 20 44 4F 53 20 6D 6F 64 65 2E 0D 0D 0A 24 00 00 00 00 00 00 00 DD 82 22 D9 99 E3 4C 8A 99 E3 4C 8A 99 E3 4C 8A 63 C0 55 8A 9A E3 4C 8A 99 E3 4D 8A 9E E3 4C 8A 43 C0 51 8A 98 E3 4C 8A 63 C0 71 8A 98 E3 4C 8A 52 69 63 68 99 E3 4C 8A 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50 45 00 00 4C 01 05 00 9B 94 F7 42 00 00 00 00 00 00 00 00 E0 00 0E 01 0B 01 07 00 00 09 00 00 80 01 00 00 00 00 00 00 C0 09 00 00 00 03 00 00 80 0A 00 00 00 00 01 00 80 00 00 00 80 00 00 00 05 00 01 00 05 00 01 00 05 00 01 00 00 00 00 00 80 0D 00 00 00 03 00 00 C5 6D 00 00 01 00 00 00 00 00 04 00 00 10 00 00 00 00 10 00 00 10 00 00 00 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 80 0B 00 00 28 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0D 00 00 60 00 00 00 A0 0A 00 00 1C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 0A 00 00 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2E 74 65 78 74 00 00 00 23 07 00 00 00 03 00 00 80 07 00 00 00 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20 00 00 68 2E 72 64 61 74 61 00 00 7D 00 00 00 80 0A 00 00 80 00 00 00 80 0A 00 00 00 00 00 00 00 00 00 00 00 00 00 00 40 00 00 48 2E 64 61 74 61 00 00 00 10 00 00 00 00 0B 00 00 80 00 00 00 00 0B 00 00 00 00 00 00 00 00 00 00 00 00 00 00 40 00 00 C8 49 4E 49 54 00 00 00 00 0A 01 00 00 80 0B 00 00 80 01 00 00 80 0B 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20 00 00 E2 2E 72 65 6C 6F 63 00 00 70 00 00 00 00 0D 00 00 80 00 00 00 00 0D 00 00 00 00 00 00 00 00 00 00 00 00 00 00 40 00 00 42 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 55 8B EC 83 EC 0C 8B 45 08 03 45 10 25 FF 0F 00 00 B9 00 10 00 00 2B C8 89 4D F8 8B 55 0C 2B 55 10 89 55 FC 8B 45 F8 3B 45 FC 73 08 8B 4D F8 89 4D F4 EB 06 8B 55 FC 89 55 F4 8B 45 F4 8B E5 5D C2 0C 00 CC CC CC CC CC CC CC CC CC CC CC CC CC 55 8B EC 83 EC 10 8B 45 0C 2D 00 00 00 02 C1 E8 0C 89 45 FC 8B 4D FC 8B 55 08 83 3C 8A 00 75 3B 8B 45 0C 25 00 F0 FF FF 50 FF 15 80 0A 01 00 89 45 F0 89 55 F4 6A 00 68 00 10 00 00 8B 4D F4 51 8B 55 F0 52 6A 00 6A 00 8B 45 08 50 FF 15 98 0A 01 00 8B 4D FC 8B 55 08 89 04 8A 8B 45 0C 25 FF 0F 00 00 8B 4D FC 8B 55 08 03 04 8A 8B E5 5D C2 08 00 CC CC CC CC CC CC CC CC CC CC CC CC CC CC 55 8B EC 83 EC 08 8B 45 0C 50 FF 15 80 0A 01 00 89 45 F8 89 55 FC 6A 00 8B 4D 10 51 8B 55 FC 52 8B 45 F8 50 6A 00 6A 00 8B 4D 08 51 FF 15 98 0A 01 00 8B E5 5D C2 0C 00 CC CC CC CC CC CC CC CC 4E 45 42 42 45 54 54 20 00 00 00 00 53 74 61 72 74 49 6F 20 46 75 6E 63 74 69 6F 6E 20 45 78 65 63 75 74 65 20 25 78 2C 20 46 6C 61 67 73 20 25 6C 78 2C 20 4C 65 6E 20 25 6C 78 0A 00 55 8B EC 83 EC 48 53 56 57 8B 45 0C C6 40 03 06 8B 4D 0C C6 41 04 00 8B 55 0C 0F B6 42 02 85 C0 0F 85 8C 03 00 00 8B 4D 0C 0F B6 51 07 85 D2 0F 85 7D 03 00 00 8B 45 0C 0F B6 48 30 89 4D B8 83 7D B8 2A 0F 87 43 03 00 00 8B 55 B8 0F B6 82 48 08 01 00 FF 24 85 2C 08 01 00 8B 4D 0C 8B 49 10 33 C0 8B 55 0C 8B 7A 18 8B D1 C1 E9 02 F3 AB 8B CA 83 E1 03 F3 AA 8B 45 0C 8B 48 18 89 4D FC 8B 55 FC 8A 02 24 E0 8B 4D FC 88 01 8B 55 FC 8A 02 24 1F 8B 4D FC 88 01 8B 55 FC A1 10 04 01 00 89 42 08 8B 0D 14 04 01 00 89 4A 0C 8B 55 0C C6 42 03 01 E9 FB 02 00 00 8B 45 0C 8B 48 10 33 C0 8B 55 0C 8B 7A 18 8B D1 C1 E9 02 F3 AB 8B CA 83 E1 03 F3 AA 8B 45 0C 8B 48 18 89 4D F8 8B 55 F8 C6 02 0B 8B 45 F8 C6 40 03 08 8B 4D 0C C6 41 03 01 E9 BD 02 00 00 8B 55 0C C6 42 03 01 E9 B1 02 00 00 A1 0C 0B 01 00 89 45 F4 8B 4D 0C 8B 51 18 83 C2 04 89 55 EC 8D 45 F4 89 45 F0 8B 4D EC 8B 55 F0 8A 02 88 41 03 8B 4D EC 8B 55 F0 8A 42 01 88 41 02 8B 4D EC 8B 55 F0 8A 42 02 88 41 01 8B 4D EC 8B 55 F0 8A 42 03 88 01 8B 0D 08 0B 01 00 83 E9 01 89 4D F4 8B 55 0C 8B 42 18 89 45 E4 8D 4D F4 89 4D E8 8B 55 E4 8B 45 E8 8A 08 88 4A 03 8B 55 E4 8B 45 E8 8A 48 01 88 4A 02 8B 55 E4 8B 45 E8 8A 48 02 88 4A 01 8B 55 E4 8B 45 E8 8A 48 03 88 0A 8B 55 0C C6 42 03 01 E9 14 02 00 00 8D 45 E0 89 45 D8 8B 4D 0C 83 C1 32 89 4D DC 8B 55 D8 8B 45 DC 8A 08 88 4A 03 8B 55 D8 8B 45 DC 8A 48 01 88 4A 02 8B 55 D8 8B 45 DC 8A 48 02 88 4A 01 8B 55 D8 8B 45 DC 8A 48 03 88 0A 0F B6 15 04 0B 01 00 85 D2 74 78 8B 45 E0 0F AF 05 0C 0B 01 00 05 00 00 00 02 89 45 E0 C7 45 D0 00 00 00 00 EB 09 8B 4D D0 03 4D D4 89 4D D0 8B 55 0C 8B 45 D0 3B 42 10 73 47 8B 4D D0 51 8B 55 0C 8B 42 10 50 8B 4D E0 51 E8 8A FC FF FF 89 45 D4 8B 5D D4 8B 55 E0 03 55 D0 52 8B 45 08 50 E8 C4 FC FF FF 8B F0 8B 4D 0C 8B 79 18 03 7D D0 8B CB 8B D1 C1 E9 02 F3 A5 8B CA 83 E1 03 F3 A4 EB A5 EB 2C 8B 45 0C 8B 48 10 8B 55 E0 0F AF 15 0C 0B 01 00 8B 35 00 0B 01 00 03 F2 8B 45 0C 8B 78 18 8B D1 C1 E9 02 F3 A5 8B CA 83 E1 03 F3 A4 8B 45 0C C6 40 03 01 E9 1C 01 00 00 8D 4D CC 89 4D C4 8B 55 0C 83 C2 32 89 55 C8 8B 45 C4 8B 4D C8 8A 11 88 50 03 8B 45 C4 8B 4D C8 8A 51 01 88 50 02 8B 45 C4 8B 4D C8 8A 51 02 88 50 01 8B 45 C4 8B 4D C8 8A 51 03 88 10 0F B6 05 04 0B 01 00 85 C0 74 79 8B 4D CC 0F AF 0D 0C 0B 01 00 81 C1 00 00 00 02 89 4D CC C7 45 BC 00 00 00 00 EB 09 8B 55 BC 03 55 C0 89 55 BC 8B 45 0C 8B 4D BC 3B 48 10 73 47 8B 55 BC 52 8B 45 0C 8B 48 10 51 8B 55 CC 52 E8 91 FB FF FF 89 45 C0 8B 5D C0 8B 45 0C 8B 70 18 03 75 BC 8B 4D CC 03 4D BC 51 8B 55 08 52 E8 C2 FB FF FF 8B F8 8B CB 8B C1 C1 E9 02 F3 A5 8B C8 83 E1 03 F3 A4 EB A5 EB 2C 8B 4D 0C 8B 49 10 8B 55 0C 8B 72 18 8B 45 CC 0F AF 05 0C 0B 01 00 8B 3D 00 0B 01 00 03 F8 8B D1 C1 E9 02 F3 A5 8B CA 83 E1 03 F3 A4 8B 45 0C C6 40 03 01 EB 26 8B 4D 0C 8B 51 10 52 8B 45 0C 8B 48 0C 51 8B 55 0C 0F B6 42 30 50 68 1C 04 01 00 6A 01 FF 15 88 0A 01 00 83 C4 14 8B 4D 0C 51 8B 55 08 52 6A 00 FF 15 84 0A 01 00 83 C4 0C 8B 45 08 50 6A 01 FF 15 84 0A 01 00 83 C4 08 B0 01 5F 5E 5B 8B E5 5D C2 08 00 42 05 01 00 A7 04 01 00 04 05 01 00 4E 05 01 00 EB 05 01 00 E3 06 01 00 D9 07 01 00 00 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 01 06 06 06 06 06 06 06 02 06 06 06 00 06 06 06 06 06 06 03 06 06 04 06 05 CC CC CC CC CC CC CC CC CC CC CC CC CC 55 8B EC 51 68 00 02 00 00 68 00 00 00 02 8B 45 08 50 E8 39 FB FF FF 89 45 FC 8B 4D FC 83 79 20 00 0F 95 C2 88 15 04 0B 01 00 8B 45 FC 0F B7 48 0B 89 0D 0C 0B 01 00 8B 55 FC 0F B7 42 13 A3 08 0B 01 00 8B 4D FC C7 41 20 00 00 00 00 8B 55 FC 66 C7 82 FE 01 00 00 55 AA 8B 45 FC C6 80 C2 01 00 00 04 8B 4D FC C7 81 C6 01 00 00 00 00 00 00 8B 55 FC A1 08 0B 01 00 89 82 CA 01 00 00 8B 4D FC C6 81 F2 01 00 00 00 8B 55 FC C6 82 E2 01 00 00 00 8B 45 FC C6 80 D2 01 00 00 00 8B 4D FC 51 8B 55 08 52 FF 15 8C 0A 01 00 0F B6 05 04 0B 01 00 85 C0 75 21 8B 0D 08 0B 01 00 0F AF 0D 0C 0B 01 00 51 68 00 00 00 02 8B 55 08 52 E8 7F FA FF FF A3 00 0B 01 00 8B 45 18 C6 40 40 01 8B 4D 18 C6 41 59 01 8B 55 1C C6 02 00 B8 01 00 00 00 8B E5 5D C2 18 00 CC CC CC CC CC CC CC CC CC CC CC 55 8B EC 6A 0E 68 FF 00 00 00 68 FF 00 00 00 8A 45 0C 50 8B 4D 08 51 FF 15 90 0A 01 00 B0 01 5D C2 08 00 CC CC CC CC CC CC CC CC CC CC CC CC CC 55 8B EC B0 01 5D C2 04 00 CC CC CC CC CC CC CC 55 8B EC 83 EC 50 57 C7 45 B0 50 00 00 00 B9 13 00 00 00 33 C0 8D 7D B4 F3 AB C7 45 B4 01 00 00 00 C7 45 D4 00 80 00 00 C6 45 E8 01 C7 45 C4 80 08 01 00 C7 45 B8 B0 09 01 00 C7 45 C8 80 09 01 00 C7 45 BC 4D 04 01 00 6A 00 8D 45 B0 50 8B 4D 0C 51 8B 55 08 52 FF 15 94 0A 01 00 5F 8B E5 5D C2 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 E0 0B 00 00 08 0C 00 00 20 0C 00 00 32 0C 00 00 4C 0C 00 00 66 0C 00 00 C8 0B 00 00 00 00 00 00 00 00 00 00 9B 94 F7 42 00 00 00 00 02 00 00 00 41 00 00 00 BC 0A 00 00 BC 0A 00 00 52 53 44 53 31 E5 26 6F 41 73 1F 46 B7 4E 43 EB 1C F1 94 82 01 00 00 00 43 3A 5C 32 30 30 30 5C 6F 62 6A 63 68 6B 5F 77 78 70 5F 78 38 36 5C 69 33 38 36 5C 6E 74 62 6F 6F 74 64 64 2E 70 64 62 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 A8 0B 00 00 00 00 00 00 00 00 00 00 7C 0C 00 00 80 0A 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 E0 0B 00 00 08 0C 00 00 20 0C 00 00 32 0C 00 00 4C 0C 00 00 66 0C 00 00 C8 0B 00 00 00 00 00 00 08 00 53 63 73 69 50 6F 72 74 47 65 74 44 65 76 69 63 65 42 61 73 65 00 04 00 53 63 73 69 50 6F 72 74 43 6F 6E 76 65 72 74 55 6C 6F 6E 67 54 6F 50 68 79 73 69 63 61 6C 41 64 64 72 65 73 73 00 12 00 53 63 73 69 50 6F 72 74 4E 6F 74 69 66 69 63 61 74 69 6F 6E 00 00 01 00 53 63 73 69 44 65 62 75 67 50 72 69 6E 74 00 00 06 00 53 63 73 69 50 6F 72 74 46 72 65 65 44 65 76 69 63 65 42 61 73 65 00 00 02 00 53 63 73 69 50 6F 72 74 43 6F 6D 70 6C 65 74 65 52 65 71 75 65 73 74 00 0E 00 53 63 73 69 50 6F 72 74 49 6E 69 74 69 61 6C 69 7A 65 00 00 53 43 53 49 50 4F 52 54 2E 53 59 53 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60 00 00 00 7B 33 9E 33 DC 33 FE 33 9C 34 A3 34 E8 34 F1 34 4F 35 98 35 2B 36 39 36 B7 36 BD 36 23 37 31 37 B6 37 BC 37 F0 37 F8 37 0B 38 1A 38 2C 38 30 38 34 38 38 38 3C 38 40 38 44 38 A6 38 B3 38 BF 38 F4 38 26 39 2D 39 37 39 3E 39 52 39 99 39 EF 39 F6 39 FD 39 04 3A 18 3A 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00


#195 was_jaclaz

was_jaclaz

    Finder

  • Advanced user
  • 7101 posts
  • Location:Gone in the mist
  •  
    Italy

Posted 22 November 2009 - 01:02 PM

Try uploading again....:dubbio:

jaclaz

#196 Dietmar

Dietmar

    Frequent Member

  • Advanced user
  • 243 posts
  •  
    Afghanistan

Posted 22 November 2009 - 01:29 PM

Try uploading again....:w00t:

jaclaz


Same error message, so I post Hexcode :dubbio:

#197 was_jaclaz

was_jaclaz

    Finder

  • Advanced user
  • 7101 posts
  • Location:Gone in the mist
  •  
    Italy

Posted 22 November 2009 - 02:51 PM

Same error message, so I post Hexcode :w00t:


Strange. :w00t:

Maybe you need to logoff and re-log on :cheers:, I just updated your "storage" capacity on boot-land.

:dubbio:
jaclaz

#198 karyonix

karyonix

    Frequent Member

  • Advanced user
  • 481 posts
  •  
    Thailand

Posted 22 November 2009 - 03:02 PM

@Dietmar
The driver compiled from your source code with Windows 2000 build environment of Windows Driver Kit SP1 for Windows Server 2008/Vista.
I renamed it and changed sources file to match my build environment.
Attached File  Dietmar_ramboot.zip   4.14KB   31 downloads

I read your source code. The driver doesn't use DMA. It uses memcpy to copy data.
From your source code I learned that ScsiPortGetDeviceBase can be used instead of MmMapIoSpace to map physical memory address to virtual address. It will be very helpful when I write a SCSI miniport driver. Thanks. :dubbio:

#199 was_jaclaz

was_jaclaz

    Finder

  • Advanced user
  • 7101 posts
  • Location:Gone in the mist
  •  
    Italy

Posted 22 November 2009 - 04:08 PM

@karyionix
Since you entered the topic, and intended as a small and friendly push/reminder :w00t::

http://www.boot-land...?showtopic=8468

http://www.msfn.org/...4-page-103.html
http://www.msfn.org/...4-page-108.html
http://www.msfn.org/...4-page-111.html

:dubbio:

jaclaz

#200 karyonix

karyonix

    Frequent Member

  • Advanced user
  • 481 posts
  •  
    Thailand

Posted 01 December 2009 - 05:23 PM

v0.0.1.16 : RAM Disk speed improvement
Enabling cache and using __movsq or __movsd instead of RtlCopyMemory result in faster transfer speed than previous versions.




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users