# HG changeset patch # User Pascal Bellard # Date 1613759597 0 # Node ID c1844f1c49545de7987075c2b5bab903230d9770 # Parent bc4b94310a29fd365bff4dc532e4ee50900933eb linld: add quick boot switch (again) diff -r bc4b94310a29 -r c1844f1c4954 linld/stuff/src/CRTL.ASM --- a/linld/stuff/src/CRTL.ASM Thu Feb 18 08:56:43 2021 +0000 +++ b/linld/stuff/src/CRTL.ASM Fri Feb 19 18:33:17 2021 +0000 @@ -371,43 +371,38 @@ push si di xchg ax,di ; vars => di dec bx -@@testalt: sub di,dx @@loop: mov si,cx ; s add di,dx @@match: - inc bx ; keywords++ lodsb ; *s++ or al,20h ; locase + cmp al,'/' ; 2f + jne @@notopt + mov al,'-' +@@notopt: + inc bx ; keywords++ cmp al,[bx] je @@match - cmp al,'/' ; 2f + cmp [byte bx],dh + je @@lastal + cmp [byte bx],'|' + je @@testal + jl @@notsw ; } ~ + cmp al,20h ; EOS or 20h + jne @@loop ; assume [bx] = '|' +@@notsw: + mov ax,-1 jne @@notopt - cmp [byte bx],'-' - je @@match -@@notopt: - cmp [byte bx],'|' - je @@test - cmp [byte bx],dh - je @@test - mov al,-1 - inc bx - jmp @@notopt -@@test: - or al,al ; 1st loop ? - jns @@testal - cmp [byte bx],dh - jne @@loop + jmp @@setnum @@testal: - cmp al,'*' - je @@setnum - cmp al,'=' - ;je @@found - ;cmp al,0 ; eos, si=next argv + inc ax + jz @@loop +@@lastal: + cmp al,'='+1 xchg ax,cx ; return s if failure jne @@nokeyword -@@found: dec dx dec dx je @@done diff -r bc4b94310a29 -r c1844f1c4954 linld/stuff/src/LINLD.CPP --- a/linld/stuff/src/LINLD.CPP Thu Feb 18 08:56:43 2021 +0000 +++ b/linld/stuff/src/LINLD.CPP Fri Feb 19 18:33:17 2021 +0000 @@ -56,9 +56,9 @@ } if (argstr(*argv,"cl|image|initrd|iso",clp) == (int) clp) continue; #ifdef QUICK_BOOT - if (argnum(*argv,"root|vga|mem|-b|-f*|-q*|-v*",&root_dev) >= (int) &base_himem) continue; + if (argnum(*argv,"root|vga|mem|-b|-f~-q~-v~",&root_dev) >= (int) &base_himem) continue; #else - if (argnum(*argv,"root|vga|mem|-b|-f*",&root_dev) >= (int) &base_himem) continue; + if (argnum(*argv,"root|vga|mem|-b|-f~",&root_dev) >= (int) &base_himem) continue; #endif if (fileexist(*argv) != -1) { kernel_name=*argv; diff -r bc4b94310a29 -r c1844f1c4954 linld/stuff/src/MEMCPY32.ASM --- a/linld/stuff/src/MEMCPY32.ASM Thu Feb 18 08:56:43 2021 +0000 +++ b/linld/stuff/src/MEMCPY32.ASM Fri Feb 19 18:33:17 2021 +0000 @@ -153,14 +153,6 @@ call near vcpi_pm_copy_routine ; Call pm copy routine via vcpi pm jmp @@done @@real_mode: - cmp esi,edi - jae @@do_copy - add esi,ecx ;src