 The new ROM incorporated trigonometric and floating point functions , which its predecessor had lacked – the ZX80 could only deal with whole numbers . Grant came up with one of the ZX81 's more novel features , a syntax checker that indicated errors in BASIC code as soon as it was entered ( rather than , as was standard at the time , only disclosing coding errors when a program was run ) . Unfortunately for Vickers , he introduced a briefly notorious error – the so @-@ called " square @-@ root bug " that caused the square root of 0 @.@ 25 to be returned erroneously as 1 @.@ 3591409 – as a result of problems with integrating the ZX Printer code into the ROM . Although it was eventually fixed , the bug became the subject of controversy and Sinclair was forced to replace some of the ZX81s sold to early customers . On a more positive note , Vickers ' work on the manual was received favourably , being described in 1983 as " one of the classic texts on BASIC " . Max Phillips commented in a What Micro ? retrospective : 
