m12:
The org directive only specifies a linear starting offset. That is, it specifies a starting offset within some segment (in this case, 0:7c00) which is the same linear address of 0x7c0:0. Also thanks for the feedback on the series.

feare56:
Right; the VBR should display output on error (and during loading) provided it is being properly executed by the environment. The lack of output and the output of the provided image tells us the problem lies within the environment configuration, invalid image, or, if the VBR is being executed, possible error in the software or on-disk filesystem structure. It is easy enough to check if the VBR is being executed by just calling Print with some small test string at the start of the VBR (right after Main). I suspect that the VBR isn't getting executed though but recommend to check. Also recommend to make the change suggested in my previous post as that could break if the assembler assembles jmp Main as a short jump rather then far jump.
Please try these two suggestions and let us know what happens.