#R16K1S60, <s>42</s> 40 bytes

##Program:

 C301 000D 0001 5180 2C20 A539 0008 5100 C589 00FF 4701 0003 1000 4865 6C6C 6F2C 2057 6F72 6C64 2100

##Source:

 [C301 000D] mov sp,hello ;set the stack pointer to the start of the message
 [0001 ] dw 1 ;do nothing + skip next instruction
 loop:
 [5180] send 0,cx ;output cx (skipped the first time)
 [2C20] pop bx ;read a value into register bx
 [A539 0008] shr bx,cx,8 ;copy bx into cx, shift bx 8 bits to the right
 [5100] send 0,bx ;output bx
 [C589 00FF] @flags and cx,0xFF ;get the lower 8 bits of cx
 [4701 0003] jnz loop ;repeat if cx is not 0
 [1000] hlt ;end
 
 hello:
 [4865 6C6C 6F2C 2057 6F72 6C64 2100] db "Hello, World!" ;byte data