A method for booting a computing device, the method comprising: detecting a reset signal by a non-volatile memory die that includes an internal controller, a register, and one or more non-volatile memory blocks, wherein each non-volatile memory block includes a plurality of pages of data, wherein each of the plurality of pages of data is retrieved as a unit; retrieving, by the internal controller, a predetermined page of data from the non-volatile memory responsive to detecting the reset signal, wherein the predetermined page of data includes at least one instruction of boot code for booting the computing device; storing, by the internal controller, the predetermined page of data into the register; converting, by a host processor after receiving the reset signal, a conventional instruction fetch command into at least one simple read command to read data from the register, wherein the conventional instruction fetch command uses a conventional page access command that does not address an individual instruction in the non-volatile memory die, and wherein the simple read command includes a column address for randomly accessing an individual instruction of the boot code at a location within the predetermined page of data; using at least one simple read command, fetching and executing, by the host processor, at least one instruction of the boot code from the register, wherein the simple read command causes the host processor to directly execute the at least one instruction starting at the location in response to the fetching; and fetching, by the host processor in response to executing the at least one instruction of the boot code, a second page of data from the non-volatile memory using a conventional page access command, wherein the conventional page access command retrieves the second page of data as a unit and stores the second page of data into a random access memory, and wherein the second page of data is different from the predetermined page of data. detecting a reset signal by a non-volatile memory die that includes an internal controller, a register, and one or more non-volatile memory blocks, wherein each non-volatile memory block includes a plurality of pages of data, wherein each of the plurality of pages of data is retrieved as a unit; retrieving, by the internal controller, a predetermined page of data from the non-volatile memory responsive to detecting the reset signal, wherein the predetermined page of data includes at least one instruction of boot code for booting the computing device; storing, by the internal controller, the predetermined page of data into the register; converting, by a host processor after receiving the reset signal, a conventional instruction fetch command into at least one simple read command to read data from the register, wherein the conventional instruction fetch command uses a conventional page access command that does not address an individual instruction in the non-volatile memory die, and wherein the simple read command includes a column address for randomly accessing an individual instruction of the boot code at a location within the predetermined page of data; using at least one simple read command, fetching and executing, by the host processor, at least one instruction of the boot code from the register, wherein the simple read command causes the host processor to directly execute the at least one instruction starting at the location in response to the fetching; and fetching, by the host processor in response to executing the at least one instruction of the boot code, a second page of data from the non-volatile memory using a conventional page access command, wherein the conventional page access command retrieves the second page of data as a unit and stores the second page of data into a random access memory, and wherein the second page of data is different from the predetermined page of data.