comparison level1/modules/rb1773.asm @ 2939:011a5f26e9da

rb1773: Fix comments about 135 TPI versus 48 or 96 Some comments were wrong about 48/96/135 TPI. Some new comments have been added. There are no code changes in this commit, the assembled binary should be identical.
author Robert Gault <robert.gault@att.net>
date Sat, 25 Jan 2014 23:19:38 +0100
parents c91cd2a9b22a
children 824019cd8744
comparison
equal deleted inserted replaced
2938:c91cd2a9b22a 2939:011a5f26e9da
418 ldb <PD.DNS,y Get path's density settings 418 ldb <PD.DNS,y Get path's density settings
419 bita #FMT.DNS Disk in drive double density? 419 bita #FMT.DNS Disk in drive double density?
420 beq L0115 No, all drives can read single, skip ahead 420 beq L0115 No, all drives can read single, skip ahead
421 bitb #DNS.MFM Can our path dsc. handle double density? 421 bitb #DNS.MFM Can our path dsc. handle double density?
422 beq erbtyp No, illegal 422 beq erbtyp No, illegal
423 L0115 bita #FMT.TDNS Is new disk 96/135 tpi? 423 L0115 bita #FMT.TDNS Is new disk 96tpi?
424 beq L011D No, all drives handle 48 tpi, so skip ahead 424 beq L011D No, all drives handle 48/135 tpi, so skip ahead
425 bitb #DNS.DTD Can path dsc. handle 96/135 tpi? 425 bitb #DNS.DTD Can path dsc. handle 96 tpi?
426 beq erbtyp No, illegal 426 beq erbtyp No, illegal format
427 L011D bita #FMT.SIDE Is new disk double sided? 427 L011D bita #FMT.SIDE Is new disk double sided?
428 beq L0128 No, all drives handle single sided, we're done 428 beq L0128 No, all drives handle single sided, we're done
429 lda <PD.SID,y Get # sides path dsc. can handle 429 lda <PD.SID,y Get # sides path dsc. can handle
430 suba #2 sides higher or equal to 2? 430 suba #2 sides higher or equal to 2?
431 blo erbtyp Yes, exit with illegal type error 431 blo erbtyp Yes, exit with illegal type error
889 bne L02CC Skip ahead 889 bne L02CC Skip ahead
890 incb Bump sector # up by 1 890 incb Bump sector # up by 1
891 L02CC stb >DPort+WD_Sect Save into Sector register 891 L02CC stb >DPort+WD_Sect Save into Sector register
892 ldx >lastdrv,u Get last drive table accessed 892 ldx >lastdrv,u Get last drive table accessed
893 ldb <V.TRAK,x Get current track # on device 893 ldb <V.TRAK,x Get current track # on device
894 lda <DD.FMT,x Get drive format specs 894 lda <DD.FMT,x Get drive format specs; actually disk format specs RG
895 lsra Shift track & bit densities to match PD 895 lsra Shift track & bit densities to match PD; bit0 is MF or MFM
896 eora <PD.DNS,y Check for differences with path densities 896 eora <PD.DNS,y Check for differences with path densities; bit0 is MF MFM, bit1 is 96tpi
897 anda #%00000010 Keep only 48 vs. 96/135 tpi differences 897 anda #%00000010 Keep only 96 tpi
898 pshs a Save differences 898 pshs a Save differences
899 lda 1,s Get track # back 899 lda 1,s Get track # back
900 tst ,s+ Are tpi's different? 900 tst ,s+ Are tpi's different?
901 beq L02E9 No, continue normally 901 beq L02E9 No, continue normally
902 lsla Yes, multiply track # by 2 ('double-step') 902 lsla Yes, multiply track # by 2 ('double-step')
1361 L0550 tfr x,d Move # sectors to D 1361 L0550 tfr x,d Move # sectors to D
1362 puls x Get back drive table ptr 1362 puls x Get back drive table ptr
1363 std DD.TOT+1,x Save # sectors allowed on drive 1363 std DD.TOT+1,x Save # sectors allowed on drive
1364 lda #UPDAT.+EXEC. Owner's read/write/exec attributes 1364 lda #UPDAT.+EXEC. Owner's read/write/exec attributes
1365 sta DD.ATT,x Set attributes for disk 1365 sta DD.ATT,x Set attributes for disk
1366 lda <PD.DNS,y Get density settings 1366 lda <PD.DNS,y Get density settings this should be bit1 96tpi bit0 MF MFM normally is 1
1367 lsla Shift for DD.FMT 1367 lsla Shift for DD.FMT
1368 pshs a Preserve it a sec 1368 pshs a Preserve it a sec
1369 lda <PD.SID,y Get # sides 1369 lda <PD.SID,y Get # sides
1370 deca Adjust to base 0 1370 deca Adjust to base 0
1371 ora ,s+ Merge with density settings 1371 ora ,s+ Merge with density settings
1372 sta <DD.FMT,x Save in device table 1372 sta <DD.FMT,x Save in device table; normally becomes %11 or 3
1373 clrb No error? 1373 clrb No error?
1374 puls pc,x Restore original LSN & return 1374 puls pc,x Restore original LSN & return
1375 1375
1376 emod 1376 emod
1377 eom equ * 1377 eom equ *