[Info-vax] 64-bit (was Re: New CEO of VMS Software)
Dave Froble
davef at tsoft-inc.com
Mon Jan 15 23:17:04 EST 2024
On 1/15/2024 8:30 AM, Simon Clubley wrote:
> On 2024-01-12, Dave Froble <davef at tsoft-inc.com> wrote:
>>
>> I'll post pieces of code to keep this short, well, relatively ..
>>
>> ; Parse the file specification, using the RMS $PARSE service
>> ;
>> MOVAB WRK_FAB,R8 ; Load FAB address
>> MOVAB WRK_NAM,FAB$L_NAM(R8) ; Set name block address
>> MOVL DSC$A_POINTER(R3),FAB$L_FNA(R8)
>> CVTWB DSC$W_LENGTH(R3),FAB$B_FNS(R8)
>> $PARSE FAB = R8 ; Invoke RMS parsing service
>> BLBS R0,200$ ; Continue if all is okay
>> BRW ERRORS ; Else return with error code
>
> That's 32-bit code without a 64-bit version available. :-)
>
>> ;
>> ; Set up the filename descriptor for the ACP access
>> ;
>> 200$: MOVL FAB$L_NAM(R8),R8 ; Point to NAM block
>> MOVZBL NAM$B_ESL(R8),R0 ; Length of expanded string
>> MOVL NAM$L_ESA(R8),R1 ; Address of expanded string
>> LOCC #^A"]",R0,(R1) ; Find end of directory
>> SUBW3 #1,R0,WRK_Q_FILDSC+DSC$W_LENGTH
>> ADDL3 #1,R1,WRK_Q_FILDSC+DSC$A_POINTER
>>
>
> Likewise. :-) I see others have already commented on the hardcoded "]". :-)
>
> Sorry David, but that code could not be used in a pure 64-bit application. :-)
>
> Simon.
>
> PS: "$ set response/mode=good_natured" just in case it's not clear...
>
Uh, Simon, what does 64 bit have to do with this?
The discussion was, Arne mentioned that RMS must be used to open a file. I gave
some example code showing that is not the case.
As for the "]", yeah, something bad, but it's been there for 40 years now,and
never a single issue. I guess I can live with that experience. And I do agree,
is is bad coding.
Outside of some stuff from DEC, I've never seen <> used in place of []. Don't
know why both are valid. Never seen anything of that nature elsewhere.
--
David Froble Tel: 724-529-0450
Dave Froble Enterprises, Inc. E-Mail: davef at tsoft-inc.com
DFE Ultralights, Inc.
170 Grimplin Road
Vanderbilt, PA 15486
More information about the Info-vax
mailing list