Cože, CP/M vyžadovalo volání podprogramů přes OS? A široce používaná instrukce CALL vám nic neříká?
CP/M měl například mizernou podporu adresářů, a pro FS calls používal pevné struktury. MS-DOS od druhé verze přišel s klasickým C-like API s null terminated stringy.