Skip to navigation

Elite on the BBC Micro

Maths (Arithmetic): antilogODD [6502SP version, I/O processor]

Name: antilogODD [Show more] Type: Variable Category: Maths (Arithmetic) Summary: Binary antilogarithm table
Context: See this variable in context in the source code References: This variable is used as follows: * LOIN (Part 2 of 7) calls antilogODD * LOIN (Part 5 of 7) calls antilogODD

At byte n, the table contains: 2^((n / 2 + 128.25) / 16) / 256 which equals: 2^(n / 32 + 8.015625) / 256 = 2^(n / 32 + 8) * 2^(.015625) / 256 = (2^(n / 32 + 8) + 1) / 256
.antilogODD FOR I%, 0, 255 B% = INT(2^((I% / 2 + 128.25) / 16) + 0.5) DIV 256 IF B% = 256 EQUB B%+1 ELSE EQUB B% ENDIF NEXT