1 minute ago, Elektron72 said:
CPU has to process each byte
That's what I suspected. I know it works the same way when LOAD-ing to regular RAM. The emulator traps out the kernal call and just does an fread into the emulator RAM.
1 minute ago, Elektron72 said:
CPU has to process each byte
1 hour ago, Elektron72 said:
I usually use the emulator with an SD card image so I can access features that are not supported when using the host filesystem. I have used the debugger to step through the routine that handles loading to VRAM, and can confirm that when an SD card image is used, the CPU has to process each byte. On the other hand, loading to VRAM (or anywhere else) does not involve the CPU when the host filesystem is used, as the emulator itself handles calls to the load routine.
4 minutes ago, Ed Minchau said:
why push it to the CPU at all?
4 hours ago, SlithyMatt said:
It's not pushed. The SPI interface doesn't run independently of the CPU. When a byte is pulled into the SPI_DATA register, the CPU needs to load it to a register to then store it in its final destination, whether that is RAM, VRAM, or some other I/O register.
14 minutes ago, Ed Minchau said:
It was my understanding that the SD interface is on VERA, not the motherboard.
1 hour ago, Ed Minchau said:
It was my understanding that the SD interface is on VERA, not the motherboard.
2 hours ago, SlithyMatt said:
Yes the SD is on the VERA daughter board, connected to the FPGA's SPI interface. However, there is no function built into the VERA to load data from SPI to VRAM. The SPI control just passes straight through the control register and is completely under control of the CPU. There's no VERA register that you can tell it "copy this file to this address of VRAM". It is much lower level than that. All the VERA does is bitbang the SPI based on what is written to the control register, and then shifts bytes in and out of the data register. The way the emulator cheats the file I/O for the convenience of using the host file system is not at all representative of how the hardware works.
1 minute ago, Ed Minchau said:
That doesn't make much sense to me; if the data is already on VERA and destined for VERA, why route it through a CPU only 1/3 as fast instead of keeping it on the FPGA?
5 hours ago, Ed Minchau said:
That doesn't make much sense to me; if the data is already on VERA and destined for VERA, why route it through a CPU only 1/3 as fast instead of keeping it on the FPGA?