From owner-acpi-jp@jp.freebsd.org  Sat Jan 22 23:50:31 2000
Received: (from daemon@localhost)
	by castle.jp.freebsd.org (8.9.3+3.2W/8.7.3) id XAA84944;
	Sat, 22 Jan 2000 23:50:31 +0900 (JST)
	(envelope-from owner-acpi-jp@jp.FreeBSD.org)
Received: from tasogare.imasy.or.jp (daemon@tasogare.imasy.or.jp [202.227.24.5])
	by castle.jp.freebsd.org (8.9.3+3.2W/8.7.3) with ESMTP id XAA84939
	for <acpi-jp@jp.freebsd.org>; Sat, 22 Jan 2000 23:50:30 +0900 (JST)
	(envelope-from iwasaki@jp.FreeBSD.org)
Received: from localhost (isdn49.imasy.or.jp [202.227.24.241])
	by tasogare.imasy.or.jp (8.9.3+3.2W/3.7W-tasogare/smtpfeed 1.01) with ESMTP id XAA07361
	for <acpi-jp@jp.freebsd.org>; Sat, 22 Jan 2000 23:50:27 +0900 (JST)
	(envelope-from iwasaki@jp.FreeBSD.org)
Message-Id: <200001221450.XAA07361@tasogare.imasy.or.jp>
To: acpi-jp@jp.freebsd.org
X-Mailer: Mew version 1.93 on Emacs 19.34 / Mule 2.3 (SUETSUMUHANA)
Mime-Version: 1.0
Content-Type: Text/Plain; charset=iso-2022-jp
Content-Transfer-Encoding: 7bit
Date: Sat, 22 Jan 2000 23:50:25 +0900
From: Mitsuru IWASAKI <iwasaki@jp.freebsd.org>
X-Dispatcher: imput version 980905(IM100)
Lines: 139
Reply-To: acpi-jp@jp.freebsd.org
Precedence: list
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+990727
X-Sequence: acpi-jp 237
Subject: [acpi-jp 237] Re: AML debugger: r command
Errors-To: owner-acpi-jp@jp.freebsd.org
Sender: owner-acpi-jp@jp.freebsd.org
X-Originator: iwasaki@jp.freebsd.org

> $B0lC6(B  interpreter $B$N;E>e$2$r$9$k$?$a$KDs0F$rFs$D$[$I!#(B
> 1. main.c:load_dsdt() $B$G(B mmap $B$7$?8e!"(B_PTS & _WAK $B$r<B9T$7$J$$$G(B
>    $B$$$-$J$j(B
>         do {
>                 acpi_dbgr(&env,&env);
>         } while (env.stat != aml_stat_panic);
>    $B$H%G%P%C%,$KF~$k$h$&$K$7$?$$$s$G$9$1$I!"$h$m$7$$$G$9(B?
> 
> 2. $B:G6a(B store.c:acpi_store_to_object() $B$H$$$&4X?t$rF~$l$?$s$G$9$,!"(B
>    $B$3$$$D$r=>Mh$N(B acpi_store_to_name() $B$+$i8F$V$h$&$K$7$F!"(B
>    acpi_store_to_name() $BB&$G$OKAF,$N3F<o%A%'%C%/$H(B store $B@h$N<oN`$K(B
>    $B1~$8$F=hM}$r?6$jJ,$1$k$@$1$N$b$N$K$7$?$$$s$G$9$,!"$h$m$7$$$G$9(B?

$B$3$NFs$D$N=$@5$N%Q%C%A$G$9!#LdBj$J$1$l$PL@F|$NLk(B commit $BM=Dj$G$9!#(B

Index: main.c
===================================================================
RCS file: /home/cvs/ACPI/util/acpiconf/main.c,v
retrieving revision 1.7
diff -u -r1.7 main.c
--- main.c	2000/01/11 11:33:41	1.7
+++ main.c	2000/01/22 05:05:19
@@ -84,11 +84,9 @@
 }
 
 int
-load_dsdt(char *dsdtfile, int sleep_type)
+load_dsdt(char *dsdtfile)
 {
 	struct aml_environ env;
-	union aml_object argv[1];
-	union aml_object *retval;
 	u_int8_t       *code;
 	struct stat     sb;
 	int             fd;
@@ -117,22 +115,10 @@
 	env.curname = get_rootname();
 	
 	showtree(env.curname, 0);
-#if 1
-	if (sleep_type == -1) {
-		sleep_type = 1;
-	}
-	argv[0].type = aml_t_num;
-	argv[0].num.number = sleep_type;
-	retval = acpi_invoke_method_by_name("_PTS", 1, argv);
-	showobject(retval);
-	acpi_free_object(&retval);
-
-	retval = acpi_invoke_method_by_name("_WAK", 1, argv);
-	showobject(retval);
-	acpi_free_object(&retval);
-
+	do {
+		acpi_dbgr(&env,&env);
+	} while (env.stat != aml_stat_panic);
 	acpi_simulation_regdump("region.dmp");
-#endif
 	acpi_free_childname(get_rootname());
 	return 0;
 }
@@ -312,7 +298,7 @@
 			
 			break;
 		case 'f':
-			load_dsdt(optarg, sleep_type);
+			load_dsdt(optarg);
 			sleep_type = -1;
 			break;
 		default:
Index: store.c
===================================================================
RCS file: /home/cvs/ACPI/util/acpiconf/store.c,v
retrieving revision 1.5
diff -u -r1.5 store.c
--- store.c	2000/01/11 11:33:41	1.5
+++ store.c	2000/01/22 14:48:30
@@ -239,57 +239,17 @@
 		return;
 	}
 	switch(name->property->type){
-	case aml_t_num:
-		if(name==&env->work)
-			break;
-		if(obj->type==aml_t_num){
-			name->property->num=obj->num;
-			DPRINT("[Store number 0x%x]", obj->num.number);
-		}
-		else{
-			env->stat=aml_stat_panic;
-		}
-		break;
 	case aml_t_field:
 		acpi_store_to_fieldname(env,obj,name);
 		break;
-	case aml_t_string:
-	case aml_t_package:
-		break;
-	case aml_t_buffer:
-		acpi_store_to_buffer(env, obj, name->property, 0);
-		break;
-	case aml_t_bufferfield:
-	{
-		char *buffer=name->property->bfld.origin;
-		int offset=name->property->bfld.bitoffset;
-		int bitlen=name->property->bfld.bitlen;
-		buffer+=offset/8;
-		DPRINT("WRITE BFLD\n");
-		if(obj->type==aml_t_num){
-			if((offset&7)==0||(bitlen&7)==0){
-				*buffer|=((obj->num.number&((1<<bitlen)-1))
-				    <<(offset%7));
-			}else if(bitlen==8){
-				*buffer=obj->num.number;
-			}else if(bitlen==16){
-				*(short*)buffer=obj->num.number;
-			}else if(bitlen==32){
-				*(long *)buffer=obj->num.number;
-			}else{
-				DPRINT("ERROR\n");
-			}
-		}
-	}
-	break;
 	case aml_t_objref:
 		acpi_store_to_objref(env, obj, name->property);
-		break;
-	case aml_t_debug:
-		showobject(obj);
 		break;
+	case aml_t_num:
+		if(name==&env->work)
+			break;
 	default:
-		DPRINT("[Unimplemented %d]",name->property->type);
+		acpi_store_to_object(env, obj, name->property);
 		break;
 	}
 }
