forked from mist64/geos
-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Maciej Witkowiak edited this page Jun 7, 2021
·
2 revisions
Bank0
$00000-$000ff - RAM expansion control page, DeskTop start/end/length, overlays data, first free page
$00100-$078ff - DeskTop cache (120 pages)
$07900-$0d8ff - DeskAccessory swap space (DeskAccessory may be only $6000 long)
$0d900-$0ffff - unused, space for 2 disk drivers ($0d80 long)
Bank1
$10000-$1ffff - 1541 #8 disk cache
Bank2
$20000-$2ffff - 1541 #8 disk cache
Bank3
$30000-$3aaff - 1541 #8 disk cache (683 pages)
$3ab00-$3ffff - unused / start 1541 #9 cache here / start RAM disk here / 85 pages / 21K
Bank4
$40000-$4ffff - continue whatever is in top of bank 3 / 64K
Bank5
$50000-$5ffff - ditto / 64K
Bank6
$60000-$6ffff - ditto / 64K / 213K of RAM disk if whole space used, at least 32K more available in bank 7
Bank7
$70000-$77FFF - ditto
$7B000-$7BFFF - uncompressed standard icons?
$7C000-$7DFFF - back screen
$7E000-$7FFFF - front screen, use the top 192 unused bytes for display list
- InvertLine sometimes highlights one card less than it should (vide 'file' and 'options' menus in DeskTop, but 'geos' and 'view' are fine)
- RecoverMenu (part is called from dialog box restore) will always do RecoverRectangle and then the RecoverVector routine; this is how DeskTop handles menus and dialogs. For Beamracer one ImprintRectangle call had to be added to menu and dialog routines before they are drawn to make sure the background screen is updated
- DoDlgBox/Recover should imprint/recover top/bot+8 left/right+8 rectangle to cover for dialog shadow
- Rectangle routines should be separated to make them faster
- DrawLine only needs DrawPoint
- TestPoint has 3 operation modes
- Font routines have to be understood first, probably the easiest way is to carefully reuse C128 VDC code
- bitmap routines could use hardware repeat for unpacking bitmaps, it might be even useful to render whole bitmap to a buffer for bitmapclip and then copy the cropped part
- GetScanLine needs 2*200=400 bytes for lookup tables and they must be in Kernal, it will take too much time to fetch them from BR
To make it all work more memory for code is needed. Ideally $A000-$BF40 is free but at least DeskTop/GeoPaint/GeoWrite/GeoPublish need to be examined if they don't write to that space directly. In VICE: break on $a000-$bf40 store if pc < $8000
Incompatible software:
- Icon Editor
- GeoCalc(?)
- GeoFont
- GeoPaint (preview)
- GeoPublish (preview)
- GeoWrite (scroll? preview)