NVMeConsole v.2.2.00

NVM Express™ (NVMe™) is a specification defining how host software communicates with non-volatile memory across a PCI Express® (PCIe®) bus. 

NVMeConsole is the NVMe windows command-line tool  that you can look into the data structure of NVMe device. And, you can check the nvme-cli tool for Linux.

This tool can be run it with Windows 10 x64 environment on Intel, AMD, VMWare machine.

This tool follows the NVM Express Specification 2.0, and free.

If you have any questions or requests, please use [Issues] on github.

Control Flow

if, else if, else, end if

Use if blocks to do different things depending on some condition. Include zero or more else if blocks and one optional else block.

if 2+2 == 4 then
    print “math works!”
else if pi > 3 then
    print “pi is tasty”
else if “a” < “b” then
    print “I can sort”
else
    print “last chance”
end if

while, end while

Use a while block to loop as long as a condition is true.

s = “Spam”
while s.len < 50
    s = s + “, spam”
end while
print s + ” and spam!”

for, end for

A for loop can loop over any list, including ones easily created with the range function.

for i in range(10, 1)
    print i + “…”
end for
print “Liftoff!”

break & continue

The break statement jumps out of a while or for loop. The continue statement jumps to the top of the loop, skipping the rest of the current iteration.

#DUMP

Dump top context

import

Use import function to import a functional library.

import(libName, libPath)

Example

import(“dev”, “.\lib\nvmedevice.ncs”)

 

Keyboard shortcuts

Keyboard shortcuts are keys or combinations of keys that provide an alternative way to do something that you’d typically do with a mouse.

You can configure key assignments by using the hotkeys [F1] – [F12] and editing the hotkey.ini file.

Update the inbox NMVe Device driver to LallaNVMePin driver

Sequence to initialize the device

1. Select a NVMe Device of LallaNVMe Drivers

SelectDevice(int num)

2. Config the admin/io Queues

ConfigDevice(asqsize, acqsize, iocount, ioqsize)

Easy script execution

Just copy the shown below script examples and paste on NVMeConsole

Identify Command

1. Allocate a data memory for the ID data.

idData = new DATAMEM

idData.DataMem_Assign(4096)

2. Create a SQE and populate the sqe field with the appropriate values.

sqe = new SQE

sqe.opc = 6

sqe.cdw10 = 1

sqe.datamem = idData

sqe.Sqe_SubmitTailSync(0, 0.5)

3. Dump data

sqe.datamem.DataMem_Dump()

or

idData.DataMem_Dump()

4. Check completion

sqe

or

sqe.completion

Read Command (lba = 0, NLB = 1(2 sectors))

1. Allocate a data memory for the data read.

data = new DATAMEM

data.DataMem_Assign(1024)

2. Create a SQE and populate the sqe field with the appropriate values.

readsqe = new SQE

readsqe.datamem = data

readsqe.opc = 2

readsqe.nsid = 1

readsqe.cdw12 = 1

readsqe.Sqe_SubmitTailSync(1, 0.5)

3. Dump data

data.DataMem_Dump()

4. Save data to a file.

data.DataMem_ToFile(“.\Data\data.bin”)

5. Check completion

readsqe.completion

COPYRIGHT © 2022. CREATED BY Lallasoft. POWERED BY Lallasoft.