Write down some ideas in README
This commit is contained in:
parent
9bce345a3b
commit
7e8483053c
25
README.md
Normal file
25
README.md
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
## Memory Layout
|
||||||
|
|
||||||
|
On a 8080, there are no segments, the addresses are as displayed.
|
||||||
|
|
||||||
|
On on the 8086, a single segment with a value of 0x0100 is assumed.
|
||||||
|
This implies that the first 4k of memory are not used.
|
||||||
|
|
||||||
|
The BDOS may be recompiled for starting at a lower address, in this case,
|
||||||
|
the minimum memory requirement may be less than 64k.
|
||||||
|
|
||||||
|
|Start|Size|Function|
|
||||||
|
+-+-+-+
|
||||||
|
|F000|4k|BDOS and hw drivers|
|
||||||
|
||var|BDOS data|
|
||||||
|
|SP|var|Stack, growing down|
|
||||||
|
|||Free memory|
|
||||||
|
|0100|up to stack|Transient Program Area|
|
||||||
|
|0080|128 bytes|Command line and disk buffer|
|
||||||
|
|0000|128 bytes|System data area|
|
||||||
|
|
||||||
|
## Application program interface
|
||||||
|
|
||||||
|
It is using the `call 5` convention with CP/M compatible syscall numbers.
|
||||||
|
|
||||||
|
File I/O is done via FCB blocks.
|
Loading…
Reference in New Issue
Block a user