address.a68
; Copyright (C) 1985 by Manx Software Systems, Inc.
; :ts=8

	dseg

_color		equ	$dff180
_spr		equ	$dff140
_sprpt		equ	$dff120
_bpldat		equ	$dff110
_bpl2mod	equ	$dff10a
_bpl1mod	equ	$dff108
_bplcon2	equ	$dff104
_bplcon1	equ	$dff102
_bplcon0	equ	$dff100
_bplpt		equ	$dff0e0
_aud		equ	$dff0a0
_adkcon		equ	$dff09e
_intreq		equ	$dff09c
_intena		equ	$dff09a
_clxcon		equ	$dff098
_dmacon		equ	$dff096
_ddfstop	equ	$dff094
_ddfstrt	equ	$dff092
_diwstop	equ	$dff090
_diwstrt	equ	$dff08e
_copins		equ	$dff08c
_copjmp2	equ	$dff08a
_copjmp1	equ	$dff088
_cop2lc		equ	$dff084
_cop1lc		equ	$dff080
_bltadat	equ	$dff074
_bltbdat	equ	$dff072
_bltcdat	equ	$dff070
_bltdmod	equ	$dff066
_bltamod	equ	$dff064
_bltbmod	equ	$dff062
_bltcmod	equ	$dff060
_bltsize	equ	$dff058
_bltdpt		equ	$dff054
_bltapt		equ	$dff050
_bltbpt		equ	$dff04c
_bltcpt		equ	$dff048
_bltalwm	equ	$dff046
_bltafwm	equ	$dff044
_bltcon1	equ	$dff042
_bltcon0	equ	$dff040
_joytest	equ	$dff036
_potgo		equ	$dff034
_serper		equ	$dff032
_serdat		equ	$dff030
_copcon		equ	$dff02e
_vhposw		equ	$dff02c
_vposw		equ	$dff02a
_refptr		equ	$dff028
_dskdat		equ	$dff026
_dsklen		equ	$dff024
_dskpt		equ	$dff020
_intreqr	equ	$dff01e
_intenar	equ	$dff01c
_dskbytr	equ	$dff01a
_serdatr	equ	$dff018
_potinp		equ	$dff016
_pot1dat	equ	$dff014
_pot0dat	equ	$dff012
_adkconr	equ	$dff010
_clxdat		equ	$dff00e
_joy1dat	equ	$dff00c
_joy0dat	equ	$dff00a
_dskdatr	equ	$dff008
_vhposr		equ	$dff006
_vposr		equ	$dff004
_dmaconr	equ	$dff002
_bltddat	equ	$dff000
_custom		equ	$dff000

	public	_color
	public	_spr
	public	_sprpt
	public	_bpldat
	public	_bpl2mod
	public	_bpl1mod
	public	_bplcon2
	public	_bplcon1
	public	_bplcon0
	public	_bplpt
	public	_aud
	public	_adkcon
	public	_intreq
	public	_intena
	public	_clxcon
	public	_dmacon
	public	_ddfstop
	public	_ddfstrt
	public	_diwstop
	public	_diwstrt
	public	_copins
	public	_copjmp2
	public	_copjmp1
	public	_cop2lc
	public	_cop1lc
	public	_bltadat
	public	_bltbdat
	public	_bltcdat
	public	_bltdmod
	public	_bltamod
	public	_bltbmod
	public	_bltcmod
	public	_bltsize
	public	_bltdpt
	public	_bltapt
	public	_bltbpt
	public	_bltcpt
	public	_bltalwm
	public	_bltafwm
	public	_bltcon1
	public	_bltcon0
	public	_joytest
	public	_potgo
	public	_serper
	public	_serdat
	public	_copcon
	public	_vhposw
	public	_vposw
	public	_refptr
	public	_dskdat
	public	_dsklen
	public	_dskpt
	public	_intreqr
	public	_intenar
	public	_dskbytr
	public	_serdatr
	public	_potinp
	public	_pot1dat
	public	_pot0dat
	public	_adkconr
	public	_clxdat
	public	_joy1dat
	public	_joy0dat
	public	_dskdatr
	public	_vhposr
	public	_vposr
	public	_dmaconr
	public	_bltddat
	public	_custom

addtime.a68
; Copyright (C) 1985 by Manx Software Systems, Inc.
; :ts=8
	public	_TimerBase

	public	_LVOAddTime
	public	_AddTime
_AddTime
	movem.l	4(sp),a0/a1
	move.l	_TimerBase,a6
	jmp	_LVOAddTime(a6)

addtof.a68
; Copyright (C) 1986 by Manx Software Systems, Inc.
; :ts=8

	public	_VBeamPos
	public	_AddIntServer

	public	_AddTOF
_AddTOF
	move.l	4(sp),a0
	move.l	8(sp),d3
	move.l	12(sp),d2
	lea	_ttskasm,a1
	move.l	a1,18(a0)
	move.l	a0,14(a0)
	move.l	d3,22(a0)
	move.l	d2,26(a0)
	move.l	a0,-(sp)
	pea	5
	jsr	_AddIntServer
	add.w	#8,sp
	rts

	public	_RemTOF
_RemTOF
	move.l	4(sp),d0
	rts

	public	_waitbeam
_waitbeam
	move.l	4(sp),d3
loop
	jsr	_VBeamPos
	cmp.l	d0,d3
	bgt	loop
	rts

_ttskasm
	move.l	22(a1),a0
	move.l	26(a1),-(sp)
	jsr	(a0)
	add.w	#4,sp
	clr.l	d0
	rts

allocpot.a68
; Copyright (C) 1985 by Manx Software Systems, Inc.
; :ts=8
	public	_PotgoBase

	public	_LVOAllocPotBits
	public	_AllocPotBits
_AllocPotBits
	move.l	4(sp),d0
	move.l	_PotgoBase,a6
	jmp	_LVOAllocPotBits(a6)

availfon.a68
; Copyright (C) 1985 by Manx Software Systems, Inc.
; :ts=8
	public	_DiskfontBase

	public	_LVOAvailFonts
	public	_AvailFonts
_AvailFonts
	move.l	4(sp),a0
	movem.l	8(sp),d0/d1
	move.l	_DiskfontBase,a6
	jmp	_LVOAvailFonts(a6)

cdinputh.a68
; Copyright (C) 1985 by Manx Software Systems, Inc.
; :ts=8
	public	_ConsoleDevice

	public	_LVOCDInputHandler
	public	_CDInputHandler
_CDInputHandler
	movem.l	4(sp),a0/a1
	move.l	_ConsoleDevice,a6
	jmp	_LVOCDInputHandler(a6)

cmptime.a68
; Copyright (C) 1985 by Manx Software Systems, Inc.
; :ts=8
	public	_TimerBase

	public	_LVOCmpTime
	public	_CmpTime
_CmpTime
	movem.l	4(sp),a0/a1
	move.l	_TimerBase,a6
	jmp	_LVOCmpTime(a6)

fastrand.a68
; Copyright (C) 1986 by Manx Software Systems, Inc.
; :ts=8

	public	_RangeRand
	public	_RangeRan
_RangeRand
_RangeRan
	movem.l	d4/d5,-(sp)
	move.w	14(sp),d5
	move.w	d5,d4
	sub.w	#1,d4
	move.l	_RangeSeed,d0
L1
	add.l	d0,d0
	bhi	L2
	eori.l	#$1d872b41,d0
L2
	lsr.w	#1,d4
	bne	L1
	move.l	d0,_RangeSeed
	tst.w	d5
	bne	L3
	swap	d0
	bra	L4
L3
	mulu	d5,d0
L4
	clr.w	d0
	swap	d0
	movem.l	(sp)+,d4/d5
	rts

	public	_FastRand
_FastRand
	move.l	4(sp),d0
	add.l	d0,d0
	bhi	L5
	eori.l	#$1d872b41,d0
L5
	rts

	dseg
_RangeSeed:
	dc.l	0

freepotb.a68
; Copyright (C) 1985 by Manx Software Systems, Inc.
; :ts=8
	public	_PotgoBase

	public	_LVOFreePotBits
	public	_FreePotBits
_FreePotBits
	move.l	4(sp),d0
	move.l	_PotgoBase,a6
	jmp	_LVOFreePotBits(a6)

lvo.a68
; Copyright (C) 1985 by Manx Software Systems, Inc.
; :ts=8

_LVOCmpTime		equ	-54
_LVOSubTime		equ	-48
_LVOAddTime		equ	-42

	public	_LVOCmpTime
	public	_LVOSubTime
	public	_LVOAddTime

_LVOAvailFonts		equ	-36
_LVOOpenDiskFont	equ	-30

	public	_LVOAvailFonts
	public	_LVOOpenDiskFont

_LVORawKeyConvert	equ	-48
_LVOCDInputHandler	equ	-42

	public	_LVORawKeyConvert
	public	_LVOCDInputHandler

_LVOTranslate		equ	-30

	public	_LVOTranslate

_LVOWritePotgo		equ	-18
_LVOFreePotBits		equ	-12
_LVOAllocPotBits	equ	-6

	public	_LVOWritePotgo
	public	_LVOFreePotBits
	public	_LVOAllocPotBits

makefile
.a68.r:
	as68 $*.a68

ALL=address.r addtime.r addtof.r allocpot.r availfon.r\
	cdinputh.r cmptime.r fastrand.r freepotb.r opendisk.r\
	rawkeyco.r subtime.r translat.r writepot.r

all:	$(ALL) lvo.r
	@echo All done!

opendisk.a68
; Copyright (C) 1985 by Manx Software Systems, Inc.
; :ts=8
	public	_DiskfontBase

	public	_LVOOpenDiskFont
	public	_OpenDiskFont
_OpenDiskFont
	move.l	4(sp),a0
	move.l	_DiskfontBase,a6
	jmp	_LVOOpenDiskFont(a6)

rawkeyco.a68
; Copyright (C) 1985 by Manx Software Systems, Inc.
; :ts=8
	public	_ConsoleDevice

	public	_LVORawKeyConvert
	public	_RawKeyConvert
_RawKeyConvert
	move.l	a2,-(sp)
	movem.l	8(sp),a0/a1
	movem.l	16(sp),d1/a2
	move.l	_ConsoleDevice,a6
	jsr	_LVORawKeyConvert(a6)
	move.l	(sp)+,a2
	rts

subtime.a68
; Copyright (C) 1985 by Manx Software Systems, Inc.
; :ts=8
	public	_TimerBase

	public	_LVOSubTime
	public	_SubTime
_SubTime
	movem.l	4(sp),a0/a1
	move.l	_TimerBase,a6
	jmp	_LVOSubTime(a6)

translat.a68
; Copyright (C) 1985 by Manx Software Systems, Inc.
; :ts=8
	public	_TranslatorBase

	public	_LVOTranslate
	public	_Translate
_Translate
	move.l	4(sp),a0
	movem.l	8(sp),d0/a1
	move.l	16(sp),d1
	move.l	_TranslatorBase,a6
	jmp	_LVOTranslate(a6)

writepot.a68
; Copyright (C) 1985 by Manx Software Systems, Inc.
; :ts=8
	public	_PotgoBase

	public	_LVOWritePotgo
	public	_WritePotgo
_WritePotgo
	move.l	4(sp),d0
	move.l	8(sp),d1
	move.l	_PotgoBase,a6
	jmp	_LVOWritePotgo(a6)

