Ad Space — Top Banner

?OV ERROR

Dragon Data Dragon 32/64

Severity: Minor

What Does This Error Mean?

?OV ERROR means a calculation produced a number too large for BASIC to handle. Dragon BASIC can handle numbers up to approximately 1.7 x 10^38. Break large calculations into smaller steps or use logarithms.

Affected Models

  • Dragon 32
  • Dragon 64
  • Dragon 200E
  • XRoar emulator

Common Causes

  • Multiplication producing a result larger than 1.7E+38
  • Exponentiation with large values
  • Loop that keeps multiplying without bounds
  • Division by a very small number

How to Fix It

  1. Identify which calculation is causing the overflow.

    Add PRINT statements before the failing line to see the values. Find which variable is growing beyond the limit.

  2. Break the calculation into smaller steps.

    Instead of A = B * C * D, compute X = B * C first, then A = X * D. This can sometimes avoid intermediate overflow.

  3. Check loop bounds to prevent runaway growth.

    If a loop multiplies a variable repeatedly, it can overflow quickly. Add a check: IF A > 1E30 THEN PRINT "TOO LARGE" : STOP

Frequently Asked Questions

Is the numeric range the same as the TRS-80 CoCo?

Yes. Both use the same Microsoft Extended Color BASIC with identical floating-point routines. The maximum value is approximately 1.7 x 10^38 on both machines.

What happens with very small numbers (underflow)?

Numbers smaller than approximately 2.94 x 10^-39 are silently rounded to zero. Unlike overflow, underflow does not produce an error.