;;; ;;; MCFS2 RAM variables ;;; By: Daniel Tufvesson 2017 ;;; ;;; ;;; Program variables ;;; org $bc00 ; beginning of OS RAM beg_of_vars: equ * ; beginning of variables media_addr_3: rmb 1 ; sector address MSB media_addr_2: rmb 1 ; sector address media_addr_1: rmb 1 ; sector address media_addr_0: rmb 1 ; sector address LSB volume_beg: rmb 2 ; first sector of volume volume_end: rmb 2 ; last sector of volume alloc_beg: rmb 2 ; first sector of allocation table alloc_end: rmb 2 ; last sector of allocation table root_dir_beg: rmb 2 ; first sector of root directory root_dir_end: rmb 2 ; last sector of root directory wrk_dir_beg: rmb 2 ; first sector of work directory wrk_dir_end: rmb 2 ; last sector of work directory wrk_path: rmb 128 ; path to work directory wrk_path_end: equ *-1 ; end of work dir path cur_dir_beg: rmb 2 ; first sector of current directory cur_dir_end: rmb 2 ; last sector of current directory cur_file_beg: rmb 2 ; first sector of current file cur_file_end: rmb 2 ; last sector of current file cur_file_saddr: rmb 2 ; first address of current file cur_file_eaddr: rmb 2 ; last address of current file line_buffer: rmb 128 ; console line buffer line_end: equ *-1 ; end of console line buffer line_pointer: rmb 2 ; pointer whitin line_buffer arg_pointer: rmb 2 ; pointer to command argument ext_fcb: rmb 2 ; pointer or external file control block temp: rmb 1 ; temporary storage xtemp: rmb 2 ; temporary storage xtemp2: rmb 2 ; temporary storage end_of_vars: equ *-1 ; end of variables var_checksum: rmb 1 ; variable checksum ;;; ;;; Sector buffer ;;; sector_buffer: rmb 512 ;;; ;;; Volume header structure ;;; org sector_buffer vol_magic: rmb 4 ; file system ID = "MCFS" vol_version: rmb 1 ; file system version = $02 vol_beg: rmb 2 ; first sector of partition vol_end: rmb 2 ; last sector of partition vol_id: rmb 2 ; volume ID vol_name: rmb 32 ; volume label (zero terminated) vol_alloc_beg: rmb 2 ; first sector of allocation table vol_alloc_end: rmb 2 ; last sector of allocation table (up to 16 sectors) vol_root_beg: rmb 2 ; first sector of root dir vol_root_end: rmb 2 ; last sector of root dir ;;; ;;; RAM time stamp with checksum ;;; org $bff8 ram_time: rmb 7 ; ISO 8601 time stamp rmb 1 ; Time stamp checksum