Blame | Last modification | View Log | Download | RSS feed
Tue Jul 17 11:00:19 2018 Page 1
2500 A.D. 65816 Macro Assembler #26960 - Version 5.02g
-----------------------------------------------------
Input Filename : src\F9\start.asm
Output Filename : obj\F9\start.obj
Listing Has Been Relocated
2587 .LIST on
2588
2589 F8FFB1 .INCLUDE inc\dirp00.inc
2590 ;----------------------------------------------------------
2591 ; DIRP00.ASM
2592 ; PROGETTO: B1601
2593 ;
2594 ; Variabili in Direct Page $00
2595 ;----------------------------------------------------------
2596
2597 ; sezione COMMON -- questo permette di includere il file in piu' file
2598
2599 .LIST on
2600
2601 DIRP00: .SECTION page0, ref_only, common ;Direct-Page 00
2602
2603 000000 .ABSOLUTE ;; inizia sempre da $00
2604 000000 .ORG 0x00
2605 000000
2606 000000 0000 JiffyClk .DW ; contatore 10ms 32 bit
2607 000002 0000 .DW
2608 000004 SysTmr .DS SYSTMRCNT ; system timer 0 (10ms)
2609 000008 SysTMF .DS SYSTMRCNT ; flag timer (80 -> start)
2610 00000C 00 Bnk0Flag .DB ; <7>: flag test RAM banco 0 ok
2611 ; <6>: flag warm reset
2612 00000D 00 RTCFlag .DB
2613
2614 00000E diskstat .DS 2 ; flag device on ata bus #0 & #1
2615 ; <7>: device ready
2616 ; <6>: compact flash device (C.F.)
2617 ; <5>: device identification ok
2618 ; <4>: MBR loaded
2619 ; <3>: valid signature in MBR
2620 ; <2>: first partition found&active
2621 ; <1>:
2622 ; <0>: valid partition flag
2623
2624 ; <7>: device ready
2625 ; <6>: USB device
2626 ; <5>: compact flash device (C.F.)
2627 ; <4>: device identification ok
2628 ; <3>: MBR loaded
2629 ; <2>: first partition found&active
2630 ; <1>: always 1
2631 ; <0>: valid partition flag
2632 000010
Tue Jul 17 11:00:19 2018 Page 2
2633
2634 00000E atadev .EQU diskstat
2635
2636 000010 usbdev .DS 2 ; flag flash disk on usb bus #0
2637 ; <7>: device plugged and ready
2638 ; <6>: always 1
2639 ; <5>: device identification ok
2640 ; <4>: MBR loaded
2641 ; <3>: valid signature in MBR
2642 ; <2>: first partition found&active
2643 ; <1>:
2644 ; <0>: valid partition flag
2645
2646 000012 diskmax .DS 16 ; disk max. sector's
2647 000012 atasec .EQU diskmax
2648 00001A usbsec .EQU diskmax+8
2649
2650
2651 000022 atambr .DS 8 ; data for first partition found in mbr
2652 ; first 3 bytes for start sector of partition
2653 ; last byte for partition type
2654 00002A usbmbr .DS 8
2655
2656 000032 ataprt .DS 8 ; total sec's of first partition
2657 00003A usbprt .DS 8 ; total sec's of first partition
2658
2659
2660 000042 00 usb0ch .DB ; usb0 (ch375/ch376) flag
2661 ; <7>: module on
2662 ; <6>: ch376 flag
2663 ; <5:0>: chip version
2664
2665 000043 00 usb0st .DB ; usb0 status
2666 ; <7>: usb0 host mode ok
2667 ; <6>: flash disk attached flag
2668 ; <5>: usb device attached
2669
2670 000044 00 fdcdrv .DB ; phisycal drive status (drive #0)
2671 ; <7>: disk format established in bit 0&1
2672 ; <6>: double step seek done
2673 ; <5>: trust format bit's (set after ok r/w)
2674 ; <4>: write protect bit (if disk in drive)
2675 ; <3>: don't care
2676 ; <2>: don't care
2677 ; <1>: HD disk if set else DD disk
2678 ; <0>: CBM format if set else IBM format
2679
2680 000045 00 vdrive .DB ; virtual drive status (ram disk, drive #1)
2681 ; <7>: disk format established in bit 0&1
2682 ; <6>: change disk simulation (after format)
2683 ; <5>: don't care
2684 ; <4>: write protect bit (under sw control)
2685 ; <3>: don't care
2686 ; <2>: don't care
2687 ; <1>: HD disk if set else DD disk
2688 ; <0>: CBM format if set else IBM format
2689
Tue Jul 17 11:00:19 2018 Page 3
2690 000046 00 fdcctl .DB ; fdc controller status
2691 ; <7>: drive is attached
2692 ; <6>: drive need recalibration (restore)
2693 ; <5>: FDC controller ok
2694 ; <4>: motor on
2695 ; <3>: dma is active
2696 ; <2>: dma chip ok (post routine)
2697 ; <1>: clock rate (1=HD,0=DD)
2698 ; <0>: disk ready
2699
2700 000047 00 fdctrk .DB ; fd: current seek track
2701 000048 00 fdcerr .DB ; fd: last error code
2702 000049 00 ataerr .DB ; ata: last error code
2703 00004A 00 ataxer .DB ; ata: last extended error code
2704
2705 00004B 00 CtrlBrk .DB ; flag CTRL+BREAK (NMI)
2706
2707 00004C 0000 MemTop .DW ; top memoria RAM
2708 00004E 00 .DB ; banco top mem
2709
2710 00004F 00 DflTxtIn .DB ; device di default text input
2711 000050 00 DflTxtOut .DB ; device di default text output
2712
2713 000051 COPPtr LP ; long pointer for COP decoding
2714 000054 00 COPIdx .DB ; COP signature/index
2715
2716 000055 00 BiosEnt .DB ; flag accesso a bios setup
2717
2718 ; variabili utilizzate da ACIA
2719 000056 spwrk .DS $30
2720
2721 ; bios mem
2722 000086 0000 nsize .DW ; dimensione blocco da allocare
2723 ;bsize .DW ; dimensione vera blocco free
2724 000088 0000 splitsz .DW ; dimensione blocco splittato
2725 00008A 0000 bfree .DW ; puntatore blocco free
2726 00008C 0000 hdrptr .DW ; puntatore header heap
2727
2728 00008E 0000 pbrklv .DW ; current break level of current process
2729 000090 0000 pbrkmin .DW ; minimum breal level of current process
2730 000092 0000 pbrkmax .DW ; maximum breal level of current process
2731 000094
2732 ; bios temp. work area
2733 000094 bwrktmp .DS $28
2734
2735 0000BC 00 coptmp .DB ; temp. used while cop
2736
2737 0000BD 00 tstser .DB ; check ser/usb test board post
2738 ; <7>: VIA2 ok
2739 ; <6>: PICRAM ok
2740 ; <1>: UART 16C550 ok
2741 ; <0>: R65C51 ok
2742
2743
2744 ;crc16 .DW
2745
2746 0000BD .RELATIVE
Tue Jul 17 11:00:19 2018 Page 4
2747
2748 .ENDS
2749
2750 [01] .IFDEF _ACIA_INC_
2751 .INCLUDE INC\SP.INC
2752 [00] .ENDIF
2753
2757 .LIST on
2758
2759 .STARTF9
2760 .EXTERN fscbmint, fssetup
2761
2762 .LONGA off
2763 .LONGI off
2764
2765
2766 F90000 osinit:
2767 F90000 8B phb
2768 F90001 A9 00 lda #0
2769 F90003 48 pha
2770 F90004 AB plb
2771 F90005 ACC16 ; set break memory limit
2772 F90005 C2 20 rep #PMFLAG
2773 .LONGA on
2774 .MNLIST
2775 F90007 A9 00 08 lda #$0800
2776 F9000A 85 90 sta pbrkmin
2777 F9000C 85 8E sta pbrklv
2778 F9000E A9 00 F0 lda #$F000
2779 F90011 85 92 sta pbrkmax
2780 F90013 ACC08
2781 F90013 E2 20 sep #PMFLAG
2782 .LONGA off
2783 .MNLIST
2784 ;jsr xbufint
2785 F90015 20 E7 59 jsr fscbmint ; init cbm f.s. emulator
2786 F90018 20 18 04 jsr fssetup
2787 F9001B AB plb
2788 F9001C 6B rtl
Lines Assembled : 2772 Errors : 0