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

_ciabcrb	equ	$bfdf00
_ciaacrb	equ	$bfef01
_ciabcra	equ	$bfde00
_ciaacra	equ	$bfee01
_ciabicr	equ	$bfdd00
_ciaaicr	equ	$bfed01
_ciabsdr	equ	$bfdc00
_ciaasdr	equ	$bfec01
_ciabtodhi	equ	$bfda00
_ciaatodhi	equ	$bfea01
_ciabtodmid	equ	$bfd900
_ciaatodmid	equ	$bfe901
_ciabtodlow	equ	$bfd800
_ciaatodlow	equ	$bfe801
_ciabtbhi	equ	$bfd700
_ciaatbhi	equ	$bfe701
_ciabtblo	equ	$bfd600
_ciaatblo	equ	$bfe601
_ciabtahi	equ	$bfd500
_ciaatahi	equ	$bfe501
_ciabtalo	equ	$bfd400
_ciaatalo	equ	$bfe401
_ciabddrb	equ	$bfd300
_ciaaddrb	equ	$bfe301
_ciabddra	equ	$bfd200
_ciaaddra	equ	$bfe201
_ciabprb	equ	$bfd100
_ciaaprb	equ	$bfe101
_ciabpra	equ	$bfd000
_ciaapra	equ	$bfe001
_ciab		equ	$bfd000
_ciaa		equ	$bfe001

	public	_ciabcrb
	public	_ciaacrb
	public	_ciabcra
	public	_ciaacra
	public	_ciabicr
	public	_ciaaicr
	public	_ciabsdr
	public	_ciaasdr
	public	_ciabtodhi
	public	_ciaatodhi
	public	_ciabtodmid
	public	_ciaatodmid
	public	_ciabtodlow
	public	_ciaatodlow
	public	_ciabtbhi
	public	_ciaatbhi
	public	_ciabtblo
	public	_ciaatblo
	public	_ciabtahi
	public	_ciaatahi
	public	_ciabtalo
	public	_ciaatalo
	public	_ciabddrb
	public	_ciaaddrb
	public	_ciabddra
	public	_ciaaddra
	public	_ciabprb
	public	_ciaaprb
	public	_ciabpra
	public	_ciaapra
	public	_ciab
	public	_ciaa

_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

_romend		equ	$ffffff
_romstart	equ	$fc0000
_bootrom	equ	$f80000
_cartridge	equ	$f00000

	public	_romend
	public	_romstart
	public	_bootrom
	public	_cartridge

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

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

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

	public	_VBeamPos
	public	_SysBase

_LVORemIntServer	equ	-174
_LVOAddIntServer	equ	-168

	public	_AddTOF
_AddTOF
	move.l	4(sp),a1
	lea	_ttskasm,a0
	move.l	a0,18(a1)
	move.l	a1,14(a1)
	move.l	8(sp),22(a1)
	move.l	4(sp),26(a1)
	move.l	#5,d0
	move.l	_SysBase,a6
	jmp	_LVOAddIntServer(a6)

	public	_RemTOF
_RemTOF
	move.l	4(sp),a1
	move.l	#5,d0
	move.l	_SysBase,a6
	jmp	_LVORemIntServer(a6)

	public	_waitbeam
_waitbeam
	move.l	4(sp),d2
1$
	jsr	_VBeamPos
	cmp.l	d0,d2
	bgt	1$
	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	_AllocPotBits
_AllocPotBits
	move.l	4(sp),d0
	move.l	_PotgoBase,a6
	jmp	-6(a6)

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

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

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

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

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

	public	_CmpTime
_CmpTime
	movem.l	4(sp),a0/a1
	move.l	_TimerBase,a6
	jmp	-54(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	_FreePotBits
_FreePotBits
	move.l	4(sp),d0
	move.l	_PotgoBase,a6
	jmp	-12(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

makebig
.a68.l:
	as -cdo $@ $*.a68

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

all:	$(ASM) lvo.l

makefile
.a68.o:
	as -o $@ $*.a68

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

all:	$(ASM) lvo.o

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

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

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

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

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

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

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

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

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

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

