Metropoli BBS
VIEWER: up.s MODE: TEXT (ASCII)
ASSEMBLE
	NIBASC	/HPHP48-D/
RPL
::
	GetMenu% COERCE
	{
		LAM _menu
	} BIND
	LAM _menu #1=
	LAM _menu #2= OR
	ITE
*	::
*		custom or var menu
		UPDIR
*	;
	::
		LAM _menu 117 #>
		ITE
		::
			% 112 InitMenu%
		;
		::
			' ID up.par @
			ITE
			::
				DUP
				LAM _menu #2* #1+ DUP #1+
				UNROT SUB$1# UNCOERCE
				UNROT SUB$1# UNCOERCE %100 %/ %+
				DUP %1 %<
				ITE
				::
*					do something smart (in a root menu)
					DROP
				;
				::
					InitMenu%
				;
			;
			::
				"up Error:\nupPARENT Not Found"
				DO$EXIT
			;
		;
	;
	ABND
	ID touch.sys
;
[ RETURN TO DIRECTORY ]