Skip to main content
Home Documents Lisa WRITE16.Text
WRITE16.Text

WRITE16.Text

Lisa · TEXT
FilenameWRITE16.Text
Size0.01 MB
Subsection firmware / ROM88
Downloads3
Enjoying MacTrove? Anonymous downloads are free and unlimited. Create a free account to track favorites, contribute metadata corrections, and join the community chat.
Contents
.Page
;++
;	Write16
;
; $10	Ldx	Q6L	; 1	1	Assume worst case
;	Bpl	$10	; 3	4	branch taken
;	Ldx	Q6L	; 4	8	bit will be set
;	Bpl	$10	; 2	10	fall thru
;	Sta	Q6H	; 4	14	put the data into reg
; 31 cycles max after bit is set before UnderRun bit is set.  Using above code
; as start of time critical code,
; total time = ((32-14)+31) = 49 cycles
;--
.Page
	.Org	1A00
Write16	.Equ *
	Ldx	IIob+Sector
	Lda	Nibl,x
	Sta	Sv4
	Ldy	#0			; No speed check bytes
	Sty	InxPtrH
	Tya				; Flag will tell Sync20 to use data mark fields
	Iny				; Write only one set of self_sync bytes
	Jsr	Sync20			; 6	6	Turn on write circuitry & write self-sync bytes
	Ldy	#0F4			; 2	8
	Lda	#0AD			; 2	10	Last byte of header field
	Bne	Pg1x			; 3	13

Pg1	.Equ *				; Code to write out las 12 bytes of page #1
	Stx	Sv4			; 3
Pg1x	Ldx	Q6L			; 4	17
	Bpl	Pg1x			; 2,3	19/20
	Sta	Q6H			; 4	14	Worst case possible

	Ldx	Page01+2,y		; 4	18
	Lda	Nibl,x			; 4	22
	Sta	Sv3			; 3	25
	Txa				; 2	27
	Lsr	A			; 2	29
	Lsr	A			; 2	31
	Sta	Temp1			; 3	34
	Ldx	Page01+1,y		; 4	38
	Lda	Nibl,x			; 4	42
	Sta	Sv2			; 3	45
	Txa				; 2	47
	And	#0C0			; 2	49
	Ora	Temp1			; 3	52
	Lsr	A			; 2	54
	Ldx	Sv4			; 3	57	61-14 = 47
	Stx	Q6H			; 4	61	Write last byte of previous loop

	Lsr	A			; 2	2
	Sta	Temp1			; 3	5
	Lda	Page01,y			; 4	9
	And	#0C0			; 2	11
	Ora	Temp1			; 3	14
	Lsr	A			; 2	16
	Lsr	A			; 2	18
	Tax				; 2	20
	Lda	Nibl,x			; 4	24
	Sta	Q6H			; 4	28

	Ldx	Page01,y			; 4	4
	Iny				; 2	6
	Iny				; 2	8
	Lda	Nibl,x			; 2	12
$15	Ldx	Q6L			; 4	16
	Bpl	$15			; 2,3	18
	Sta	Q6H			; 4	22

	Lda	Sv2			; 3	3	Second  byte of loop
	Ldx	Sv3			; 3	6	Third byte
	Iny				; 2	8
	Bne	Pg1			; 2,3	10	Fetch rest of 12 bytes
					;		fall thru $|& start on Page #2
;++
;
;--

Pg2	.Equ *				; Code to write out first 255 bytes of Page #2
	Stx	Sv4			; 3
$40	Ldx	Q6L			; 4
	Bpl	$40			; 2,3
	Sta	Q6H			; 4	14	Worst case possible

	Ldx	Page02,y			; 4	18
	Lda	Nibl,x			; 4	22
	Sta	Sv3			; 3	25
	Txa				; 2	27
	Lsr	A			; 2	29
	Lsr	A			; 2	31
	Sta	Temp1			; 3	34
	Ldx	Page02+1,y		; 4	38
	Lda	Nibl,x			; 4	42
	Sta	Sv2			; 3	45
	Txa				; 2	47
	And	#0C0			; 2	49
	Ora	Temp1			; 3	52
	Lsr	A			; 2	54
	Ldx	Sv4			; 3	57	61-14=47
	Stx	Q6H			; 4	61	Write out last byte of previous loop

	Lsr	A			; 2	2
	Sta	Temp1			; 3	5
	Lda	Page02,y			; 4	9
	And	#0C0			; 2	11
	Ora	Temp1			; 3	14
	Lsr	A			; 2	16
	Lsr	A			; 2	18
	Tax				; 2	20
	Lda	Nibl,x			; 4	24
	Sta	Q6H			; 4	28


	Ldx	Page02			; 4	4
	Iny				; 2	6
	Iny				; 2	8
	Lda	Nibl,x			; 4	12
$55	Ldx	Q6L			; 4	16
	Bpl	$55			; 2,3	18
	Sta	Q6H			; 4	22
	Lda	Sv2			; 3	3	Second byte of loop
	Ldx	Sv3			; 3	6	Third byte
	Iny				; 2	8
	Cpy	#Pg2Len			; 2	10
	Bne	Pg2			; 2,3	12	Fetch rest of 255 bytes

	Jsr	WrAX			; 6	26/6	Write Nibls in A and X
	Lda	Page03			; 4	10
	Lda	Nibl,x			; 4	14
	Sta	Sv4			; 3	17
	Lda	CpBy01			; 3	20
	Jsr	WrNibl			; 6	26/6

	Ldy	#02			; 2	8	For use in Pg3
	Ldx	Page02+0FF		; 4	12
	Jsr	WrByteX			; 6	18/6

	Ldx	Page03			; 4	10
	Lda	Nibl,x			; 4	14
	Bne	Pg3x			; 3	17

WrAX	.Equ *				; Write nibls that are in A & X (Sv3)
	Jsr	WrNibl			; 6	32/6
	Lda	Sv3			; 3	9
	Jmp	WrNibl			; 3	12/6

;++
;
;--

WrByte	.Equ *				; Nibbize byte in A-reg before starting
	Tax				; 2
WrByteX	.Equ *				; Use byte in X-reg
	Lda	Nibl,x			; 4

WrNibl	.Equ *				; Wait for handshake bit, then write data in A-reg
	Ldx	Q6L			; 4
	Bpl	WrNibl			; 2,3
	Sta	Q6H			; 4
	Rts				; 6

	.Align	0100
Pg3	.Equ *				; Code to write out first 254 bytes of page #3
	Stx	Sv4			; 3
Pg3x	Ldx	Q6L			; 4
	Bpl	Pg3x			; 2,3
	Sta	Q6H			; 4	14

	Ldx	Page03+2,y		; 4	18
	Lda	Nibl,x			; 4	22
	Sta	Sv3			; 3	25
	Txa				; 2	27
	Lsr	A			; 2	29
	Lsr	A			; 2	31
	Sta	Temp1			; 3	34
	Ldx	Page03			; 4	38
	Lda	Nibl,x			; 4	42
	Sta	Sv2			; 3	45
	Txa				; 2	47
	And	#0C0			; 2	49
	Ora	Temp1			; 3	52
	Lsr	A			; 2	54
	Ldx	Sv4			; 3	57	61-14 = 47
	Stx	Q6H			; 4	61	Write last byte of previous loop

	Lsr	A			; 2	2
	Sta	Temp1			; 3	5
	Lda	Page03			; 4	9
	And	#0C0			; 2	11
	Ora	Temp1			; 3	14
	Lsr	A			; 2	16
	Lsr	A			; 2	18
	Tax				; 2	20
	Lda	Nibl,x			; 4	24
	Sta	Q6H			; 4	28	Composite of 3 bytes

	Ldx	Page03,y			; 4	4
	Iny				; 2	6
	Iny				; 2	8
	Lda	Nibl,x			; 4	12
$85	Ldx	Q6L			; 4	16
	Bpl	$85			; 2,3	18
	Sta	Q6H			; 4	22

	Lda	Sv2			; 3	3	Second byte of loop
	Ldx	Sv3			; 3	6	Third loop
	Iny				; 2	8
	Cpy	#Pg3Len			; 2	10
	Bne	Pg3			; 2,3	12	Fetch rest of 254 bytes

	Jsr	WrAX			; 6	26/6	Write Nibls in A & X (Sv3)
	Ldx	Page03+0FF		; 4	10
	Lda	Nibl,x			; 4	14
	Sta	Sv3			; 3	17
	Lda	CpBy02			; 3	20
	Jsr	WrNibl			; 6	26/6
	Ldx	Page03+0FE		; 4	10
	Lda	Nibl,x			; 4	14
	Jsr	WrAX			; 6	20/6

	Ldy	#Cksum1			; 2	8	Absolute addr of 3 cksum bytes
	Sty	InxPtrL			; 3	11
	Lda	CpCkSum			; 3	14
$95	Ldx	Q6L			; 4	18
	Bpl	$95			; 2,3	20
	Sta	Q6H			; 4	24
	Ldy	#0			; 2	2
$99	Lda	@InxPtrL,y		; 6	8
	Jsr	WrByte			; 3	11/6
	Iny				; 2	8
	Cpy	#3			; 2	10
	Bne	$99			; 2,3	12
					; Fall thru & write final bitslip marks & end
	Lda	DatMk4			; 3
	Jsr	WrNibl			; 6
	Lda	DatMk5			; 3
	Jsr	WrNibl			; 6

ShtOff	.Equ *				; Write 2 bitslip and return /WrUnderRun
	Lda	#0FF			; 2
	Jsr	WrNibl			; 6
	Jsr	WrNibl			; 6
	Clc				; 2
	Lda	Q6L			; 4	Bit6 = UnderRun bit
	And	#40			; 2	Leave only bit 6
	Bne	$38			; 2,3	If = 1 then no underrun occurred
	Lda	#ErrWrt			; Obscure error code #
	Sec				; 2

$38	Sta	Q6H			; 4	Put into write load state
	Ldx	Q7L			; 4	Now into write protect - Sense state
	Rts				; 6
Home Documents Lisa Vwbas 1984.Dc42
Vwbas 1984.Dc42

Vwbas 1984.Dc42

Lisa · 1984 · Disk Copy 4.2 image
Filenamevwbas_1984.dc42
Size0.40 MB
Year1984
Subsection pascal_monitor / floppy
Downloads4
Enjoying MacTrove? Anonymous downloads are free and unlimited. Create a free account to track favorites, contribute metadata corrections, and join the community chat.
About this file

This is a Disk Copy 4.2 image — a binary artifact that can't be previewed in the browser. Mount with Mini vMac, SheepShaver, or an equivalent Classic Mac emulator.

Home Documents Lisa Top Cable.JPG
Top Cable.JPG

Top Cable.JPG

Lisa · JPG
Filenametop_cable.JPG
Size0.34 MB
Subsection mouse / pre-production_mouse
Downloads3
Enjoying MacTrove? Anonymous downloads are free and unlimited. Create a free account to track favorites, contribute metadata corrections, and join the community chat.
Image
Top Cable.JPG

Click to open at full size in a new tab.

Home Documents Lisa LisaList Box F.Jpg
LisaList Box F.Jpg

LisaList Box F.Jpg

Lisa · JPG
FilenameLisaList_Box_F.jpg
Size0.50 MB
Subsection office_system / boxes
Downloads3
Enjoying MacTrove? Anonymous downloads are free and unlimited. Create a free account to track favorites, contribute metadata corrections, and join the community chat.
Image
LisaList Box F.Jpg

Click to open at full size in a new tab.

Home Documents Lisa Xenix Brochure Jul84.Jpg
Xenix Brochure Jul84.Jpg

Xenix Brochure Jul84.Jpg

Lisa · JPG
FilenameXenix_Brochure_Jul84.jpg
Size0.56 MB
Subsection xenix / brochures
Downloads3
Enjoying MacTrove? Anonymous downloads are free and unlimited. Create a free account to track favorites, contribute metadata corrections, and join the community chat.
Image
Xenix Brochure Jul84.Jpg

Click to open at full size in a new tab.

Home Documents Lisa 050 4033 C 1.Tif
050 4033 C 1.Tif

050 4033 C 1.Tif

Lisa · TIFF (scanned image)
Filename050-4033-C_1.tif
Size0.87 MB
Subsection hardware / Lisa_2_10_IO_Board
Downloads7
Enjoying MacTrove? Anonymous downloads are free and unlimited. Create a free account to track favorites, contribute metadata corrections, and join the community chat.
TIFF

Browsers don't render TIFF natively. Use Download to save the file, or Open in browser on macOS which will hand the file off to Preview.

Home Documents Lisa NREAD16.Text
NREAD16.Text

NREAD16.Text

Lisa · TEXT
FilenameNREAD16.Text
Size0.00 MB
Subsection firmware / ROM88
Downloads3
Enjoying MacTrove? Anonymous downloads are free and unlimited. Create a free account to track favorites, contribute metadata corrections, and join the community chat.
Contents
.Page
;++
;
;		NRead16
;
;	NRead16 assumes that the disk is spinning at the proper speed
; and the head is located at the proper Side/Track and that the header
; for the sector desired has already been found.  First it will read in
; the beginning data marks, then the data, and finally the trailing data
; bytes.  It will abort if the proper starting or ending sequence of
; data bytes is not found.
;
; REGISTERS
;  IN
;	All =	Any value
;  OUT
;	All =	Destroyed
;
;--

.Org	1800
.Page
Read16	.Equ *
	Jsr	SetRMode			; Setup PAL on Sony to read mode
	Jsr	RDSynTop			; Read the sync nibbles
	Bcc	$03			; If bitslip marks found then carry = 0
	Rts
$03	Ldy	#0F4			; 2	15	First time only 12 bytes
RdBF01	.Equ *
	Inc	InxPtrH			; 5	28	Point to next page
RdBF02	.Equ *
	Ldx	Q7L			; 4
	Bpl	RdBF02			; 2,3
	Lda	DNibl,x			; 4	10	Map from 8 bits ==> 6 bits
	Asl	A			; 2	12
	Asl	A			; 2	14
	Tax				; 2	16	Save temporarily
	Asl	A			; 2	18
	Asl	A			; 2	20
	Sta	Temp1			; 3	23	>BBCC0000<
	Txa				; 2	25
	And	#0C0			; 2	27	>AA000000<

$10	Ldx	Q7l			; 4		Read low bits of byte A
	Bpl	$10			; 2,3
	Ora	DNibl,x			; 4	10	Combine low and high bits
	Sta	@InxPtrL,y		; 6	16
	Lda	Temp1			; 3	19	>BBCC0000<
	Iny				; 2	21
	Bne	$20			; 2,3	23/24
	Inc	InxPtrH			; 5	28	Point to next page

$20	Ldx	Q7L			; 4		Read low bits of byte B
	Bpl	$20			; 2,3
	And	#0C0			; 2	8	>BB000000<
	Ora	DNibl,x			; 4	12	Add low & high bits
	Sta	@InxPtr,y			; 6	18
	Iny				; 2	20
	Beq	RdCSM01			; 2/3	22/23
	Lda	Temp1			; 3	24	>BBCC0000<
	Asl	A			; 2	26
	Asl	A			; 2	28

$30	Ldx	Q7L			; 4		Read low bits of byte C
	Bpl	$30			; 2,3
	And	#0C0			; 2	8	>CC000000<
	Ora	@DNibl,x			; 4	12	Add low and high bits
	Sta	@InxPtr,y			; 6	18
	Iny				; 2	20
	Beq	RdBF01			; 2/3	22/23	Inc to next page if = 0
	Bne	RdBF02			; 3	25	Branch always taken

.Page
RdCSM01	.Equ *				;		Read 4 bytes of checksum
	Ldx	Q7L			; 4
	Bpl	RdSCM01			; 2,3
	Lda	DNibl,x			; 4	10	Map from 8 bits ==> 6 bits
	Asl	A			; 2	12
	Asl	A			; 2	14
	Tay				; 2	16	>AABBCC00<
	And	#0C0			; 2	18	>AA000000<

$10	Ldx	Q7L			; 4		Read low bits of byte A
	Bpl	$10			; 2,3
	Ora	Dnibl,x			; 4	10	Add low and high bits
	Sta	Cksum1			; 3	13
	Tya				; 2	15
	Asl	A			; 2	17
	Asl	A			; 2	19
	Tay				; 2	21	>BBCC0000<
	And	#0C0			; 2	23	>BB000000<

$20	Ldx	Q7L			; 4		Read low bits of byte B
	Bpl	$20			; 2,3
	Ora	DNibl,x			; 4	10	Add high and low bits
	Sta	Cksum2			; 3	13
	Tya				; 5	15
	Asl	A			; 2	17
	Asl	A			; 2	19	>CC000000<

$30	Ldx	Q7L			; 4		Read low bits of byte C
	Bpl	$30			; 2,3
	Ora	DNibl,x			; 4	10	Combine low and high bits
	Sta	Cksum3			; 3	13

Rd9	Lda	Q7L			; 4		Check bitslip mark 1
	Bpl	Rd9			; 2,3
	Cmp	DatMk4			; 3
	Bne	BSErr			; 2,3

Rd10	Lda	Q7L			; 4		Check bitslip mark 2
	Bpl	Rd10			; 2,3
	Cmp	DatMk5			; 3
	Bne	BSErr			; 2,3
	Clc
RdExit	Lda	Q6H			;		Sense mode
RdWaste	Rts

.Page
BSErr	Inc	BSCnt			; Trailing bitslip mark & error counter
	Sec
	Bcs	RdExit			; Return to Sense mode & exit


CSErr	Inc	CsErr			; Checksum error counter
RdErr	Sec
	Bcs	RdExit

RdErr2	Inc	StSlp			; Starting bitslip error count
	Sec
	Bcs	RdExit

RdSynTop	.Equ *				; Starting to read starting bitslip marks
	Lda	Q6L			; Subroutine to read starting bitslip marks
	Ldx	#000			; Switch from sense to read mode
	Ldy	#NiblRetr			; No. of retries allowed for bitslip read
RSync	Dey
	Beq	RdErr2

RS1	Lda	Q7L			; 4
	Bpl	RS1			; 2,3	6
RSync1	Cmp	DatMk1			; 3	9	Data mark 1
	Bne	RSync			; 2,3	11,12

	Stx	InxptrL			; 3	14
RS2	Lda	Q7L			; 4
	Bpl	RS2			; 2,3	6
	Cmp	DatMk2			; 3	9	Data mark 2
	Bne	RSync1			; 2,3	11,12

	Stx	InxptrH			; 3	14
RS3	Lda	Q7L			; 4
	Bpl	RS3			; 2,3	6
	Cmp	DatMk3			; 3	9	Data mark 3
	Bne	RSync1			; 2,3	11,12
	Clc				; 2	13

RS4	Lda	Q7l			; 4		Read sector number ( unchecked )
	Bpl	RS4			; 2,3	6
	Rts				;		Back to caller
Home Documents Lisa LisaWrite Box B.Jpg
LisaWrite Box B.Jpg

LisaWrite Box B.Jpg

Lisa · JPG
FilenameLisaWrite_Box_B.jpg
Size0.61 MB
Subsection office_system / boxes
Downloads4
Enjoying MacTrove? Anonymous downloads are free and unlimited. Create a free account to track favorites, contribute metadata corrections, and join the community chat.
Image
LisaWrite Box B.Jpg

Click to open at full size in a new tab.

Home Documents Lisa Lyrix Ad.Jpg
Lyrix Ad.Jpg

Lyrix Ad.Jpg

Lisa · JPG
FilenameLyrix_Ad.jpg
Size0.82 MB
Subsection xenix / brochures
Downloads3
Enjoying MacTrove? Anonymous downloads are free and unlimited. Create a free account to track favorites, contribute metadata corrections, and join the community chat.
Image
Lyrix Ad.Jpg

Click to open at full size in a new tab.

Home Documents Lisa 050 4012 H.Tif
050 4012 H.Tif

050 4012 H.Tif

Lisa · TIFF (scanned image)
Filename050-4012-H.tif
Size0.18 MB
Subsection hardware / lisa_vintagemicros_drawings / Video_Board / Schematic_Video_Board
Downloads8
Enjoying MacTrove? Anonymous downloads are free and unlimited. Create a free account to track favorites, contribute metadata corrections, and join the community chat.
TIFF

Browsers don't render TIFF natively. Use Download to save the file, or Open in browser on macOS which will hand the file off to Preview.

Subscribe to Lisa
mp.ls