diff --git a/kernel/shell.asm b/kernel/shell.asm
index 75f58ee..55fbee4 100644
--- a/kernel/shell.asm
+++ b/kernel/shell.asm
@@ -159,6 +159,7 @@ shellParse:
 	jr	z, .parseerror
 
 	; Args parsed, now we can load the routine address and call it.
+	ld	b, a ; pass number of arguments as b
 	; let's have DE point to the jump line
 	ld	hl, SHELL_CMD_ARGS
 	ld	a, PARSE_ARG_MAXCOUNT