mirror of
https://github.com/robmcmullen/atrcopy.git
synced 2024-11-29 11:51:14 +00:00
Added interesting load effect for first HGR screen
This commit is contained in:
parent
38b05e6dbd
commit
dc2224a191
@ -98,7 +98,7 @@ class StandardDeliveryImage(DiskImageBase):
|
||||
count = 0
|
||||
|
||||
sector_list = []
|
||||
address_list = [0xd0]
|
||||
address_list = [0xd1]
|
||||
|
||||
boot_sector = dsk.header.create_sector()
|
||||
boot_sector.sector_num = 0
|
||||
@ -106,15 +106,21 @@ class StandardDeliveryImage(DiskImageBase):
|
||||
sector_list.append(boot_sector)
|
||||
|
||||
for chunk_start, chunk_data in chunks:
|
||||
i = 0
|
||||
hi = chunk_start
|
||||
while i < len(chunk_data):
|
||||
count = len(chunk_data) // 256
|
||||
if chunk_start == 0x20 and count == 32:
|
||||
# Assume this is an HGR screen, use interesting load effect,
|
||||
# not the usual venetian blind
|
||||
chunk_hi = [0x20, 0x24, 0x28, 0x2c, 0x30, 0x34, 0x38, 0x3c, 0x21, 0x25, 0x29, 0x2d, 0x31, 0x35, 0x39, 0x3d, 0x22, 0x26, 0x2a, 0x2e, 0x32, 0x36, 0x3a, 0x3e, 0x23, 0x27, 0x2b, 0x2f, 0x33, 0x37, 0x3b, 0x3f]
|
||||
else:
|
||||
chunk_hi = range(chunk_start, chunk_start + count)
|
||||
for n in range(count):
|
||||
i = (chunk_hi[n] - chunk_start) * 256
|
||||
sector = dsk.header.create_sector(chunk_data[i:i+256])
|
||||
sector.sector_num = dsk.header.sector_from_track(track, sector_order[index])
|
||||
count += 1
|
||||
#sector.sector_num = count
|
||||
sector_list.append(sector)
|
||||
address_list.append(hi)
|
||||
address_list.append(chunk_hi[n])
|
||||
# sector.data[0] = sector.sector_num
|
||||
# sector.data[1] = hi
|
||||
# sector.data[2:16] = 0xff
|
||||
@ -123,9 +129,8 @@ class StandardDeliveryImage(DiskImageBase):
|
||||
if index >= len(sector_order):
|
||||
index = 0
|
||||
track += 1
|
||||
i += 256
|
||||
hi += 1
|
||||
address_list.append(0xd0)
|
||||
if chunk_start == 0x40:
|
||||
address_list.append(0xd2)
|
||||
|
||||
print("address list %s" % str(address_list))
|
||||
boot_code = get_fstbt_code(boot_sector.data, address_list, run_addr)
|
||||
|
Loading…
Reference in New Issue
Block a user