F461: 26 F9

 

ROL

M1

 

F463: A5 F8

NORM

LDA

X1

EXP1 ZERO?

F465: D0 EE

 

BNE

NORM1

NO, CONTINUE NORMALIZING.

F467: 60

 

RTS1

RTS

 

RETURN.

F468: 20 A4 F4

FSUB

JSR

FCOMPL

CMPL MANT1,CLEARS CARRY UNLESS 0

F46B: 20 7B F4

SWPALGN

JSR

ALGNSWP

RIGHT SHIFT MANT1 OR SWAP WITH

F46E: A5 F4

FADD

LDA

X2

 

F470: C5 F8

 

CMP

X1

COMPARE EXP1 WITH EXP2.

F472: D0 F7

 

BNE

SWPALGN

IF #,SWAP ADDENDS OR ALIGN MANTS.

F474: 20 25 F4

 

JSR

ADD

ADD ALIGNED MANTISSAS.

F477: 50

EA

ADDEND

BVC

NORM

NO OVERFLOW, NORMALIZE RESULT.

F479: 70

05

 

BVS

RTLOG

OV: SHIFT M1 RIGHT, CARRY INTO SIGN

F47B: 90

C4

ALGNSWP

BCC

SWAP

SWAP IF CARRY CLEAR,

*ELSE SHIFT RIGHT ARITH.

F47D: A5 F9

RTAR

LDA

M1

SIGN OF MANT1 INTO CARRY FOR

F47F: 0A

 

ASL

 

RIGHT ARITH SHIFT.

F480: E6 F8

RTLOG

INC

X1

INCR X1 TO ADJUST FOR RIGHT SHIFT

F482: F0 75

 

BEQ

OVFL

EXP1 OUT OF RANGE.

F484: A2 FA

RTLOG1

LDX

#$FA

INDEX FOR 6:BYTE RIGHT SHIFT.

F486: 76 FF

ROR1

ROR

E+3,X

 

F488: E8

 

INX

 

NEXT BYTE OF SHIFT.

F489: D0 FB

 

BNE

ROR1

LOOP UNTIL DONE.

F48B: 60

 

RTS

 

RETURN.

F48C: 20 32 F4

FMUL

JSR

MD1

ABS VAL OF MANT1, MANT2

F48F: 65 F8

 

ADC

X1

ADD EXP1 TO EXP2 FOR PRODUCT EXP

F491: 20 E2 F4

 

JSR

MD2

CHECK PROD. EXP AND PREP. FOR MUL

F494: 18

 

CLC

 

CLEAR CARRY FOR FIRST BIT.

F495: 20 84 F4

MUL1

JSR

RTLOG1

M1 AND E RIGHT (PROD AND MPLIER)

F498: 90 03

 

BCC

MUL2

IF CARRY CLEAR, SKIP PARTIAL PROD

F49A: 20 25 F4

 

JSR

ADD

ADD MULTIPLICAND TO PRODUCT.

F49D: 88

MUL2

DEY

 

NEXT MUL ITERATION.

F49E: 10 F5

 

BPL

MUL1

LOOP UNTIL DONE.

F4A0: 46 F3

MDEND

LSR

SIGN

TEST SIGN LSB.

F4A2: 90 BF

NORMX

BCC

NORM

IF EVEN,NORMALIZE PROD,ELSE COMP

F4A4: 38

FCOMPL

SEC

 

SET CARRY FOR SUBTRACT.

F4A5: A2 03

 

LDX

#$3

INDEX FOR 3 BYTE SUBTRACT.

F4A7: A9 00

COMPL1

LDA

#$0

CLEAR A.

F4A9: F5 F8

 

SBC

X1,X

SUBTRACT BYTE OF EXP1.

F4AB: 95 F8

 

STA

X1,X

RESTORE IT.

F4AD: CA

 

DEX

 

NEXT MORE SIGNIFICANT BYTE.

F4AE: D0 F7

 

BNE

COMPL1

LOOP UNTIL DONE.

F4B0: F0 C5

 

BEQ

ADDEND

NORMALIZE (OR SHIFT RT IF OVFL).

F4B2: 20 32 F4

FDIV

JSR

MD1

TAKE ABS VAL OF MANT1, MANT2.

F4B5: E5 F8

 

SBC

X1

SUBTRACT EXP1 FROM EXP2.

F4B7: 20 E2 F4

 

JSR

MD2

SAVE AS QUOTIENT EXP.

F4BA: 38

DIV1

SEC

 

SET CARRY FOR SUBTRACT.

F4BB: A2 02

 

LDX

#$2

INDEX FOR 3-BYTE SUBTRACTION.

F4BD: B5 F5

DIV2

LDA

M2,X

 

F4BF: F5 FC

 

SBC

E,X

SUBTRACT A BYTE OF E FROM MANT2.

F4C1: 48

 

PHA

 

SAVE ON STACK.

F4C2: CA

 

DEX

 

NEXT MORE SIGNIFICANT BYTE.

F4C3: 10 F8

 

BPL

DIV2

LOOP UNTIL DONE.

F4C5: A2 FD

 

LDX

#$FD

INDEX FOR 3-BYTE CONDITIONAL MOVE

F4C7: 68

DIV3

PLA

 

PULL BYTE OF DIFFERENCE OFF STACK

F4C8: 90 02

 

BCC

DIV4

IF M2<E THEN DON'T RESTORE M2.

F4CA: 95 F8

 

STA

M2+3,X

 

F4CC: E8

DIV4

INX

 

NEXT LESS SIGNIFICANT BYTE.

F4CD: D0 F8

 

BNE

DIV3

LOOP UNTIL DONE.

F4CF: 26 FB

 

ROL

M1+2

 

F4D1: 26 FA

 

ROL

M1+1

ROLL QUOTIENT LEFT, CARRY INTO LSB

F4D3: 26 F9

 

ROL

M1

 

F4D5: 06 F7

 

ASL

M2+2

 

 

 

 

 

 

Page 66
Image 66
Apple II manual Norm LDA EXP1 ZERO?

II specifications

The Apple II, launched in April 1977, was one of the first highly successful mass-produced microcomputer products. It marked a significant leap in personal computing, setting standards for future developments in the industry. Created by Steve Wozniak and Steve Jobs, the Apple II differentiated itself with its user-friendly design, appealing aesthetics, and robust capabilities.

One of the standout features of the Apple II was its open architecture, which allowed users to expand and enhance the computer's functionality. This design enabled hundreds of third-party hardware and software developers to contribute to its ecosystem, resulting in an array of peripherals, including printers, modems, and storage devices. The Apple II utilized a MOS Technology 6502 microprocessor running at a clock speed of 1 MHz. Initially equipped with 4 KB of RAM, the machine could be expanded to 48 KB, accommodating more complex applications and programs.

The Apple II was also notable for its colorful graphics. It was one of the first computers to support color display, offering a 6-color palette with a resolution of 280x192 pixels in 16 colors when using its Color Graphics Card. This feature significantly enhanced the visual appeal of games and educational software developed for the platform, making computing more accessible and entertaining for various audiences.

Apple's commitment to user experience was evident in the design of the machine. It featured an integrated keyboard and a plastic case, which was both durable and visually appealing. The self-contained design included drive bays for floppy disk drives, allowing for quicker data access than traditional tape drives. It also supported audio output, enabling sound effects and music, a novelty at the time.

The introduction of the Apple DOS operating system further underscored the machine's capabilities. DOS streamlined file management and made it easier for users to navigate and manage their data. The combination of hardware and software positioned the Apple II as an educational tool and a gaming platform, fostering a vibrant software ecosystem.

The Apple II family continued to evolve, with variations like the Apple II+, IIe, and IIgs being introduced over the years. These iterations brought enhancements in memory, processing power, and graphics capabilities. The legacy of the Apple II endures, not only as a foundational product in personal computing but also as a symbol of innovation that paved the way for future advancements in technology. Its impact is still felt today, as it inspired countless developers and shaped the trajectory of the computer industry.