Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
Z80-BANKS(5)		      Bank layout format		  Z80-BANKS(5)

NAME
       description of file format used by z80-mon for bank layout

DESCRIPTION
       The file	compounds of lines each	is either a comment line or a bank- or
       a page description. A comment line starts with a	# and may appear  any-
       where  in  the  file.  A	line containing	a bank description consists of
       the following 4 entries:	access_type bank_id  log2_size	bank_name.   A
       line  containing	a page description consists of these 4 entries:	either
       offset or bank_id followed by port_no mask and  a  non  empty  list  of
       bank_ids.

       All  bank description lines must	preceed	the page description lines and
       must be ordered ascending by their unique bank_id.  The following  page
       description  lines  are	ordered	ascending by their first item which is
       typically an offset or in the case of a	virtuel	 bank  a  bank_id.  If
       lines  have the same first entry	then they must be ordered ascending by
       their port_id with - regarded less than any other port_id. And  in  the
       case even their second entries equals each other, then these lines will
       be ordered by their mask.  A list of bank_ids is	an ascending  sequence
       of bank_ids separated only by , (comma),	not any	whitespace.

       access_type
	  is the type of the bank. Only	the four types + for
	  read/write memory, r for read	only memory, w for write
	  only memory and - for	a virtuel bank are valid.

       bank_id
	  is a 2 digit hexadecimal byte	value.

       log2_size
	  gives	the size of the	bank in	bytes as its log2-value.
	  Currently only banks whose log2_size equals 14 (16 kB)
	  or 12	(4 kB) are supported. Due to hardware complexity
	  all banks must have currently	the same size!

       bank_name
	  must either indicate a readable file which contains the
	  machine code for the bank or the special value - (minus)
	  which	indicates either undefined storage, typically RAM,
	  or in	the case of a virtuel bank no file name. If the	corres-
	  sponding file	is smaller than	the bank size the remaining
	  bytes	at the end of the bank will be undefined. If the file
	  size is larger than the bank size only the first bytes in
	  the file will	be used.

       offset
	  is a 4 digit hexadecimal value telling the hardware the
	  start	address	the bank to be mapped on. Furthermore
	  each offset must be a	multiple of 1__log2_size of the
	  bank size it can be mapped to.

       port_no
	  is a decimal or hexadecimal number of	value <	256 or
	  the character	- (minus). In the second case the
	  following mask must be 0.

       mask
	  is a 2 digit hexadecimal byte	value which covers the relevant
	  part of value	send to	the corresponding port.	The port_no
	  together with	the given mask must have a unique offset
	  respectively bank_id.

       Each  used  bank_id in a	page description must be defined in a previous
       bank description.  Summarizing, this file describes how the  banks  are
       mapped to memory	or other (virtuel) banks.  If a	byte value is put to a
       port which has a	corresponding page description then a  mapping	occurs
       if  the	bank_id	 matches  the  value and-ed with the mask of the port.
       Therefore page description lines	with the same port_no should have dif-
       ferent bank_id s	for a unique mapping. The default bank_id of a page is
       the one with the	lowest bank_id.	This is	selected at hardware initiali-
       sation and after	a bank reset.

SEE ALSO
       z80-memory(5)

Z80-BANKS Version 2.3		  29 Jun 2006			  Z80-BANKS(5)

NAME | DESCRIPTION | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=z80-banks&sektion=5&manpath=FreeBSD+13.0-RELEASE+and+Ports>

home | help