;*********************************************************************** ;* DEFINITIE : ALGEMENE DECLARATIES VOOR BBC BASIC * ;*---------------------------------------------------------------------* ;* doel : Zeropage gebruik en definitie van constanten * ;* voor PcDFS en MOSROM4 * ;*---------------------------------------------------------------------* ;* filenaam : definiti.inc * ;* auteur : Roland Leurs * ;* The Atomic Development Studio * ;* ontwikkeld : maart 1998 * ;* laatste update : * ;*---------------------------------------------------------------------* ;* assembleren : als includefile opnemen * ;*---------------------------------------------------------------------* ;* oproep : - * ;*********************************************************************** ;*********************************************************************** ;* Definities voor MOSROM 4 * ;*********************************************************************** program equ $2000 pagedrom equ $A000 systemvia equ $B810 systemlatch equ $B888 bbcbasic equ $C000 osvectors equ $200 ; operating system vectoren timer equ $300 ; 15 bytes voor timer informatie bellf equ $310 ; bell frequentie (ctrl-g) belld equ $311 ; bell duur (ctrl-g) esctoets equ $312 ; ascii waarde van escape teken oswordparm equ $E0 ; adres parameterblok osword calls oswordspace equ $E2 ; osword werkruimte (5 bytes) asave equ $E7 ; tijdelijke opslag accu xsave equ $E8 ; tijdelijke opslag x-reg o.a. scan ysave equ $E9 ; tijdelijke opslag y-reg o.a. scan ysavwrch equ $EE ysavrdch equ $EF rdpgradr equ $F6 ; adres osrdpgrom vector (2 bytes) schaduwbyte equ $F9 ; schaduwbyte van systemlatch semafoor equ $FA ; semafoor voor pc communicatie nietprinten equ $FB ; karakter dat niet naar printer mag irqaccu equ $FC ; accu tijdens irq routine erroradres equ $FD ; adres laatste brk (2 bytes) escvlag equ $FF ; escape vlag maxromnr equ 7 ; hoogste paged rom nummer ;*********************************************************************** ;* Definities voor PcDFS * ;*********************************************************************** zp equ $A0 ; pcdfs routine werkruimte - 8 bytes comwork equ $A8 ; command werkruimte - 8 bytes work equ $B0 ; pcdfs call werkruimte - 16 bytes par_a equ $B0 ; A-register par_x equ $B1 ; X-register par_y equ $B2 ; Y-register handle equ $B3 ; msdos file handle parm equ $B1 ; adres parameterblock comline equ $B4 ; adres van commandline option equ $B6 ; *OPT1 parameter spoolhandle equ $B7 ; handle voor spoolfile exechandle equ $B8 ; handle voor execfile cliptr equ $B9 ; pointer naar clbuffer oscliparm equ $BA ; oscli werkruimte (6 bytes) header equ $C0 ; pcdfs file header - 16 bytes h_addr equ $C0 ; load address low word h_exec equ $C2 ; exec address low word h_len equ $C4 ; file length h_addrx equ $C8 ; load address high word h_execx equ $CA ; exec address high word h_free equ $CC ; reserved clbuffer equ $100 ; buffer voor command line clivec equ $208 ; oscli vector cfsbuffer equ $900 ; werkruimte library equ $9C0 ; Library directory - 63 bytes ;*********************************************************************** ;* Algemene definities * ;*********************************************************************** count equ $1E ; aantal afgedrukte tekens op regel prthex equ $1021 ; print hex accu print equ $1006 ; print string tot aan negatief byte osrdpgrom equ $1FC2 oszendbyte equ $1FC5 zendbyte equ $1FC5 osleesbyte equ $1FC8 leesbyte equ $1FC8 osfsc equ $1FCB osfind equ $1FCE osgbpb equ $1FD1 osbput equ $1FD4 osbget equ $1FD7 osargs equ $1FDA osfile equ $1FDD osrdch equ $1FE0 osasci equ $1FE3 osnewl equ $1FE7 oswrch equ $1FEE osword equ $1FF1 osbyte equ $1FF4 oscli equ $1FF7