.GOTOSW

Asmc Macro Assembler

Asmc Macro Assembler Reference

.GOTOSW

.GOTOSW[1|2|3] [[(<case_val>)] | [.IF condition]]

Generates code to jump to the top of a .SWITCH block if condition is true.

.GOTOSW jump's directly to the TEST label.

	.switch al
	  .case 1
	  ...
	  .case 9
	    mov al,1
	    .gotosw		; "Jump" to case 1

GOTOSW[1|2|3] is optional nesting level to continue.

	.switch al
	  .case 1
	    .gotosw		; continue .switch al
	    .switch bl
	      .case 1
		.gotosw1	; continue .switch al
		.switch cl
		  .case 1
		    .gotosw2	; continue .switch al
		    .switch dl
		      .case 1
			.gotosw3 ; continue .switch al
			.gotosw2 ; continue .switch bl
			.gotosw1 ; continue .switch cl
			;
			; Direct jump to .switch cl / case 1
			;
			.gotosw1(1)
		    .endsw
		.endsw
	    .endsw
	.endsw

GOTOSW can be used in combination with .IF condition, or a direct jump to .GOTOSW(<case_val>).

See Also

Directives Reference | .ENDC | .SWITCH